update order and order item db model
This commit is contained in:
@@ -4,7 +4,7 @@ declare(strict_types=1);
|
|||||||
|
|
||||||
namespace App\Model;
|
namespace App\Model;
|
||||||
|
|
||||||
use Hyperf\DbConnection\Model\Model;
|
use App\Model\OrderItem;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @property int $id 主键
|
* @property int $id 主键
|
||||||
@@ -58,13 +58,19 @@ class Order extends Model
|
|||||||
*/
|
*/
|
||||||
protected array $casts = ['id' => 'integer', 'company_id' => 'integer', 'platform_id' => 'integer', 'store_id' => 'integer', 'order_status_id' => 'integer', 'payment_method_id' => 'integer', 'presale' => 'boolean', 'order_type_id' => 'integer', 'created_at' => 'datetime', 'updated_at' => 'datetime'];
|
protected array $casts = ['id' => 'integer', 'company_id' => 'integer', 'platform_id' => 'integer', 'store_id' => 'integer', 'order_status_id' => 'integer', 'payment_method_id' => 'integer', 'presale' => 'boolean', 'order_type_id' => 'integer', 'created_at' => 'datetime', 'updated_at' => 'datetime'];
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Get the order items for the order.
|
* 获取订单子项(基于 hypertable 分区键查询)
|
||||||
|
*
|
||||||
|
* @return \Hyperf\Database\Model\Collection
|
||||||
*/
|
*/
|
||||||
public function items()
|
public function getOrderItems()
|
||||||
{
|
{
|
||||||
return $this->hasMany(OrderItem::class, 'order_id', 'id');
|
return OrderItem::query()
|
||||||
|
->where('platform_id', $this->platform_id)
|
||||||
|
->where('store_id', $this->store_id)
|
||||||
|
->where('platform_order_id', $this->platform_order_id)
|
||||||
|
->where('created_date', $this->created_date)
|
||||||
|
->get();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -4,8 +4,6 @@ declare(strict_types=1);
|
|||||||
|
|
||||||
namespace App\Model;
|
namespace App\Model;
|
||||||
|
|
||||||
use Hyperf\DbConnection\Model\Model;
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @property int $id 主键
|
* @property int $id 主键
|
||||||
* @property int $company_id 公司 ID 与 Tools 保持一致
|
* @property int $company_id 公司 ID 与 Tools 保持一致
|
||||||
@@ -23,9 +21,10 @@ use Hyperf\DbConnection\Model\Model;
|
|||||||
* @property int $quantity 商品子项总数量
|
* @property int $quantity 商品子项总数量
|
||||||
* @property string $discount 订单子项总的折扣金额
|
* @property string $discount 订单子项总的折扣金额
|
||||||
* @property string $total 总金额 = 单价X数量 - 折扣
|
* @property string $total 总金额 = 单价X数量 - 折扣
|
||||||
|
* @property string $created_date 订单创建时间(与父订单 created_date 一致,hypertable 分区键)
|
||||||
* @property string $ext 扩展字段
|
* @property string $ext 扩展字段
|
||||||
* @property \Carbon\Carbon $created_at
|
* @property \Carbon\Carbon $created_at
|
||||||
* @property \Carbon\Carbon $updated_at
|
* @property \Carbon\Carbon $updated_at
|
||||||
* @mixin \App_Model_OrderItem
|
* @mixin \App_Model_OrderItem
|
||||||
*/
|
*/
|
||||||
class OrderItem extends Model
|
class OrderItem extends Model
|
||||||
@@ -38,7 +37,7 @@ class OrderItem extends Model
|
|||||||
/**
|
/**
|
||||||
* The attributes that are mass assignable.
|
* The attributes that are mass assignable.
|
||||||
*/
|
*/
|
||||||
protected array $fillable = ['id', 'company_id', 'platform_id', 'store_id', 'order_id', 'platform_order_id', 'sub_order_id', 'sub_order_type_id', 'product_id', 'platform_product_id', 'product_sku', 'product_barcode', 'unit_price', 'quantity', 'discount', 'total', 'ext', 'created_at', 'updated_at'];
|
protected array $fillable = ['id', 'company_id', 'platform_id', 'store_id', 'order_id', 'platform_order_id', 'sub_order_id', 'sub_order_type_id', 'product_id', 'platform_product_id', 'product_sku', 'product_barcode', 'unit_price', 'quantity', 'discount', 'total', 'created_date', 'ext', 'created_at', 'updated_at'];
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* The attributes that should be cast to native types.
|
* The attributes that should be cast to native types.
|
||||||
@@ -46,10 +45,17 @@ class OrderItem extends Model
|
|||||||
protected array $casts = ['id' => 'integer', 'company_id' => 'integer', 'platform_id' => 'integer', 'store_id' => 'integer', 'order_id' => 'integer', 'sub_order_type_id' => 'integer', 'product_id' => 'integer', 'quantity' => 'integer', 'created_at' => 'datetime', 'updated_at' => 'datetime'];
|
protected array $casts = ['id' => 'integer', 'company_id' => 'integer', 'platform_id' => 'integer', 'store_id' => 'integer', 'order_id' => 'integer', 'sub_order_type_id' => 'integer', 'product_id' => 'integer', 'quantity' => 'integer', 'created_at' => 'datetime', 'updated_at' => 'datetime'];
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Get the order that owns the order item.
|
* 获取父订单(基于 hypertable 分区键查询)
|
||||||
|
*
|
||||||
|
* @return Order|null
|
||||||
*/
|
*/
|
||||||
public function order()
|
public function getParentOrder(): ?Order
|
||||||
{
|
{
|
||||||
return $this->belongsTo(Order::class, 'order_id', 'id');
|
return Order::query()
|
||||||
|
->where('platform_id', $this->platform_id)
|
||||||
|
->where('store_id', $this->store_id)
|
||||||
|
->where('platform_order_id', $this->platform_order_id)
|
||||||
|
->where('created_date', $this->created_date)
|
||||||
|
->first();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user