-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathProductVariation.php
84 lines (65 loc) · 1.57 KB
/
ProductVariation.php
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
<?php
namespace App;
use Illuminate\Database\Eloquent\Model;
use Illuminate\Database\Eloquent\SoftDeletes;
use App\Color;
use App\Size;
use App\Product;
class ProductVariation extends Model
{
use SoftDeletes;
protected $table = 'product_variation';
/**
* The attributes that are mass assignable.
*
* @var array
*/
protected $hidden = [
'created_at'
,'updated_at'
,'deleted_at'
,'color_id'
,'size_id'
,'brand_id'
];
public function getId(){
return $this->id;
}
public function getSKU(){
return $this->sku;
}
public function setSKU($value){
$this->sku = $value;
}
public function product(){
return $this->belongsTo(Product::class, 'product_id');
}
public function getProduct(){
return $this->product;
}
public function setProduct(Product $product){
$this->product_id = $product->getId();
}
public function color(){
return $this->belongsTo(Color::class, 'color_id');
}
public function getColor(){
return $this->color;
}
public function setColor(Color $color){
$this->color_id = $color->getId();
}
public function size(){
return $this->belongsTo(Size::class, 'size_id');
}
public function getSize(){
return $this->size;
}
public function setSize(Size $size){
$this->size_id = $size->getId();
}
/** SCOPE */
public function scopeSKU($query, $value){
return $query->where('sku', $value);
}
}