BaseProductCategory.php 1.0 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546
  1. <?php
  2. namespace App\Models;
  3. use Dcat\Admin\Traits\HasDateTimeFormatter;
  4. use Dcat\Admin\Traits\ModelTree;
  5. use Illuminate\Database\Eloquent\Model;
  6. use Spatie\EloquentSortable\Sortable;
  7. class BaseProductCategory extends Model implements Sortable
  8. {
  9. use HasDateTimeFormatter,
  10. ModelTree {
  11. ModelTree::boot as treeBoot;
  12. }
  13. protected $casts = [
  14. 'created_at' => 'datetime:Y-m-d H:i:s',
  15. 'updated_at' => 'datetime:Y-m-d H:i:s',
  16. ];
  17. //名称
  18. protected $titleColumn = 'name';
  19. //排序
  20. protected $orderColumn = 'order';
  21. //父级
  22. protected $parentColumn = 'parent_id';
  23. protected $table = 'base_product_category';
  24. /*
  25. * 关联产品参数
  26. */
  27. public function baseProductParameter()
  28. {
  29. return $this->hasOne(BaseProductParameter::class,'id','parameter_id');
  30. }
  31. public static function selectOptions(\Closure $closure = null)
  32. {
  33. $options = (new static())->withQuery($closure)->buildSelectOptions();
  34. return collect($options)->all();
  35. }
  36. }