50 lines
1.2 KiB
PHP
50 lines
1.2 KiB
PHP
<?php
|
|
|
|
namespace App\Models\Shop;
|
|
|
|
use Illuminate\Database\Eloquent\Model;
|
|
use Illuminate\Database\Eloquent\SoftDeletes;
|
|
|
|
use Znck\Eloquent\Traits\BelongsToThrough;
|
|
|
|
class Unity extends Model
|
|
{
|
|
use BelongsToThrough, softDeletes;
|
|
|
|
protected $guarded = ['id'];
|
|
protected $table = 'shop_unities';
|
|
|
|
public function package()
|
|
{
|
|
return $this->belongsTo('App\Models\Shop\Package');
|
|
}
|
|
|
|
public function article_family()
|
|
{
|
|
return $this->belongsToThrough('App\Models\Shop\ArticleNature', 'App\Models\Shop\Package', null, '', ['App\Models\Shop\ArticleNature' => 'article_family_id', 'App\Models\Shop\Package' => 'package_id']);
|
|
}
|
|
|
|
public function scopeByPackage($query, $id)
|
|
{
|
|
return $query->where('package_id', $id);
|
|
}
|
|
|
|
public function scopeByArticleNature($query, $id)
|
|
{
|
|
return $query->whereHas(
|
|
'package', function ($query) use ($id) {
|
|
$query->byArticleNature($id);
|
|
}
|
|
);
|
|
}
|
|
|
|
public function scopeActive($query, $active = 1)
|
|
{
|
|
return $query->whereHas(
|
|
'third_party', function ($query) use ($active) {
|
|
$query->active($active);
|
|
}
|
|
);
|
|
}
|
|
}
|