| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182 |
- <?php
- namespace App;
- use App\Traits\ModelTimeFormat;
- use Illuminate\Database\Eloquent\Model;
- use App\Traits\ModelLogChanging;
- use Illuminate\Database\Eloquent\Relations\BelongsTo;
- class WorkOrderCommodities extends Model
- {
- use ModelTimeFormat;
- protected $fillable = [
- 'work_order_id',
- 'work_order_detail_id', // 工单详情
- 'tag', // 当前工单状态
- 'commodity_id',
- 'price', // 商品价值
- 'sku', // 商品条码
- 'logistic_number', // 快递单号数量
- 'check_amount', // 承运商核实数量 (承运商核实商品数量)
- 'bao_shi_check_amount', // 宝时复核数量 (宝时核实商品数量)
- 'issue_type', // 异常类型 (对应工单异常类型)
- 'abnormal_type', // 问题类型 (商品问题类型)
- 'abnormal_amount', // 异常数量 (默认为订单数量) 错漏发 (客户实收数量)
- 'amount', // 订单数量 (原订单商品数量)
- 'check_result', // 核实结果 (核实)
- 'process_result', // 处理结果 终审填充(破损:[赔偿,不赔偿] 错漏发:[少发,多发,’多发,客户退回‘,’少发,不补发‘,核实未错漏发])
- 'process_result_info', // 处理结果详情 -----------------------------------
- // (错漏发: string 为选项类型 与 process_result 相关
- // 1.【少发】宝时补发(商家不做单)
- // 2.【多发,客户买下】商家做出库单(物流选自提,宝时不发货)
- // 3.【多发,客户退回】1.客户自行退回(提供退回单号) 2.宝时上门取件(提供寄件信息,地址,联系人,电话)
- // 4.【少发,不补发】商家做入库单,选择明细和数量
- // 5.【核实未错漏发】)
- // -----------------------------------
- ];
- static public $enums = [
- 'tag' => [
- '' => 0,
- '完成' => 1,
- '标记' => 2, // 工单重新创建,未完成原始数据进行历史标记,完成原始数据不进行处理
- ],
- ];
- function __construct(array $attributes = [])
- {
- foreach (self::$enums as &$enum) {
- $enum = $enum + array_flip($enum);
- }
- parent::__construct($attributes);
- }
- public function getTagAttribute($value)
- {
- if (!$value) return '';
- return self::$enums['tag'][$value];
- }
- public function setTagAttribute($value)
- {
- if (!$value) return;
- if (is_numeric($value)) {
- $this->attributes['tag'] = $value;
- } else {
- $this->attributes['tag'] = self::$enums['tag'][$value];
- }
- }
- public function workOrder(): BelongsTo
- {
- return $this->belongsTo(WorkOrder::class);
- }
- public function commodity(): BelongsTo
- {
- return $this->belongsTo(Commodity::class);
- }
- }
|