'待接单', self::STATUS_SUMMARIZED => '已接单', self::STATUS_DELIVERING => '采购中', self::STATUS_DISTRIBUTION => '配送中', self::STATUS_COMPLETED => '已完成', self::STATUS_CANCELLED => '已取消', ]; protected $table = 'store_order'; protected $primaryKey = 'id'; protected $fillable = [ 'order_no', 'store_id', 'order_date', 'total_quantity', 'total_weight', 'total_amount', 'status', 'remark', 'purchase_id', 'bill_id', ]; protected $casts = [ 'store_id' => 'integer', 'purchase_id' => 'integer', 'bill_id' => 'integer', 'order_date' => 'date:Y-m-d', 'total_quantity' => 'integer', 'total_weight' => 'decimal:3', 'total_amount' => 'decimal:2', 'status' => 'integer', 'created_at' => 'datetime:Y-m-d H:i:s', ]; /** * 下单门店 */ public function store(): BelongsTo { return $this->belongsTo(StoreModel::class, 'store_id', 'id'); } /** * 订单明细 */ public function items(): HasMany { return $this->hasMany(StoreOrderItemModel::class, 'order_id', 'id'); } /** * 采购单 */ public function purchase(): BelongsTo { return $this->belongsTo(PurchaseOrderModel::class, 'purchase_id', 'id'); } /** * 关联账单(采购单完成后按门店生成) */ public function bill(): BelongsTo { return $this->belongsTo(BillModel::class, 'bill_id', 'id'); } }