53 lines
		
	
	
		
			1.3 KiB
		
	
	
	
		
			PHP
		
	
	
		
		
			
		
	
	
			53 lines
		
	
	
		
			1.3 KiB
		
	
	
	
		
			PHP
		
	
	
|  | <?php | ||
|  | 
 | ||
|  | namespace app\model; | ||
|  | 
 | ||
|  | use think\model\relation\HasOne; | ||
|  | 
 | ||
|  | class OrderSku extends Base | ||
|  | { | ||
|  |     public const STATUS_NORMAL   = 'normal';//正常
 | ||
|  |     public const STATUS_REFUNDED = 'refunded';//已退货
 | ||
|  |     public const STATUS_CLOSED   = 'closed';//已关闭
 | ||
|  | 
 | ||
|  |     public const HAS_COMMENT_YES = 'yes'; // 有评论
 | ||
|  |     public const HAS_COMMENT_NO  = 'no'; // 无评论
 | ||
|  | 
 | ||
|  |     public function sku(): HasOne | ||
|  |     { | ||
|  |         return $this->hasOne(Sku::class, 'id', 'sku_id'); | ||
|  |     } | ||
|  | 
 | ||
|  |     /** | ||
|  |      * 设为已付款 | ||
|  |      * | ||
|  |      * @param  string  $orderCoding | ||
|  |      * @return bool | ||
|  |      */ | ||
|  |     public static function setPaid(string $orderCoding): bool | ||
|  |     { | ||
|  |         return self::where('coding', $orderCoding)->save([ | ||
|  |             'is_paid' => self::COMMON_ON, | ||
|  |             'paid_at' => date('Y-m-d H:i:s') | ||
|  |         ]); | ||
|  |     } | ||
|  | 
 | ||
|  |     /** | ||
|  |      * 订单相关信息取消(软删除) | ||
|  |      * | ||
|  |      * @param  string  $orderCoding | ||
|  |      * @return bool | ||
|  |      */ | ||
|  |     public static function cancel(string $orderCoding): bool | ||
|  |     { | ||
|  |         return self::where('coding', $orderCoding)->save([ | ||
|  |             'status'  => self::STATUS_CLOSED, | ||
|  |             'deleted_at' => date('Y-m-d H:i:s') | ||
|  |         ]); | ||
|  |     } | ||
|  | 
 | ||
|  |     public static function history(array $where, array $field = []) | ||
|  |     { | ||
|  |         return self::where($where)->field($field)->select(); | ||
|  |     } | ||
|  | } |