SalesOrder.php 2.5 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283
  1. <?php
  2. namespace App\Model;
  3. use App\Scopes\DepartmentScope;
  4. use Illuminate\Database\Eloquent\Model;
  5. class SalesOrder extends Model
  6. {
  7. // protected $fillable = [];
  8. protected $guarded = [];
  9. protected $table = "sales_order"; //指定表
  10. const CREATED_AT = 'crt_time';
  11. const UPDATED_AT = 'upd_time';
  12. protected $dateFormat = 'U';
  13. const Order_type_one = 1;//安装件
  14. const Order_type_two = 2;//快递件
  15. public static $order_type = [
  16. self::Order_type_one => '安装件',
  17. self::Order_type_two => '快递件',
  18. ];
  19. const Model_type_one = 1; // 线下订单合同
  20. const Model_type_two = 2; // 分社订货合同
  21. const Model_type_three = 3; // 二手车精品加装合同
  22. public static $model_type = [
  23. self::Model_type_one,
  24. self::Model_type_two,
  25. self::Model_type_three
  26. ];
  27. //安装件
  28. const State_zero = 0;//未派单
  29. const State_one = 1;//已派销售
  30. const State_two = 2;//已派公司或分社
  31. const State_three = 3;//已下施工单
  32. const State_four = 4;//退换货
  33. const State_five = 5;//完结
  34. public static $state = [
  35. self::State_zero => '未派单',
  36. self::State_one => '已派销售',
  37. self::State_two => '已派总设或分社',
  38. self::State_three => '已下施工单',
  39. self::State_four => '退换货',
  40. self::State_five => '完结',
  41. ];
  42. //快递件
  43. const State2_zero = 0;//未发货
  44. const State2_one = 1;//已发货
  45. public static $state2 = [
  46. self::State2_zero => '未发货',
  47. self::State2_one => '已发货',
  48. ];
  49. public static $prefix = [
  50. self::Model_type_one => 'T9XS.',
  51. self::Model_type_two => 'T9SO.',
  52. self::Model_type_three => 'T9XS.'
  53. ];
  54. public static $user = [];
  55. public static $search = [];
  56. public static $is_search = false;
  57. const range_function = 'salesOrderRange';
  58. public function __construct(array $attributes = [])
  59. {
  60. if(! empty($attributes['userData'])) {
  61. self::$user = $attributes['userData'];
  62. self::$user['range_function'] = self::range_function;
  63. self::$search = $attributes['search'] ?? [];
  64. self::$is_search = true;
  65. }
  66. parent::__construct($attributes);
  67. }
  68. protected static function boot(){
  69. parent::boot();
  70. if(self::$is_search){
  71. static::addGlobalScope(new DepartmentScope(self::$user, self::$search));
  72. }
  73. }
  74. }