caipan_shop_admin/app/model/Order.php

67 lines
1.8 KiB
PHP
Executable File
Raw Blame History

This file contains ambiguous Unicode characters!

This file contains ambiguous Unicode characters that may be confused with others in your current locale. If your use case is intentional and legitimate, you can safely ignore this warning. Use the Escape button to highlight these characters.

<?php
namespace app\model;
use think\model\relation\HasMany;
use think\model\relation\HasOne;
class Order extends Base
{
public const STATUS_ORDER_PLACED = 'order_placed';//已下单 (已付款待发货)
public const STATUS_MAKEING = 'makeing';//制作中
public const STATUS_SHIPPED = 'shipped';//已发货
public const STATUS_ARRIVED = 'arrived';//已送达
public const STATUS_CANCEL = 'cancel';//已取消
public const CHECK_TYPE_FRONTEND = 'frontend';//核验类型 前端核验|线下核验
public const CHECK_TYPE_BACKEND = 'backend';//核验类型 后台核验|线上核验
public const PAY_TYPE_WECHAT = 'wechat';//微信
public const PAY_TYPE_SCORE = 'score';//积分
/**
* 核验方式列表
*
* @return string[]
*/
public static function checkTypeList(): array
{
return [self::CHECK_TYPE_FRONTEND, self::CHECK_TYPE_BACKEND];
}
/**
* 模型关联订单下的sku
* 一对多关系
*
* @return HasMany
*/
public function skus(): HasMany
{
return $this->hasMany(OrderSku::class, 'order_coding', 'coding')->whereNull('deleted_at');
}
/**
* 模型关联:下单会员
* @return HasOne
*/
public function account(): HasOne
{
return $this->hasOne(Account::class, 'id', 'account_id');
}
/**
* 订单状态描述
*/
public static function statusTextList(): array
{
return [
self::STATUS_ORDER_PLACED => '已下单',
self::STATUS_MAKEING => '制作中',
self::STATUS_SHIPPED => '已发货',
self::STATUS_ARRIVED => '已送达',
self::STATUS_CANCEL => '已取消',
];
}
}