50 lines
		
	
	
		
			1.2 KiB
		
	
	
	
		
			PHP
		
	
	
			
		
		
	
	
			50 lines
		
	
	
		
			1.2 KiB
		
	
	
	
		
			PHP
		
	
	
<?php
 | 
						|
 | 
						|
namespace app\admin\validate\order;
 | 
						|
 | 
						|
use app\common\enum\OrderEnum;
 | 
						|
use think\Validate;
 | 
						|
use app\common\model\order\Order;
 | 
						|
use app\common\model\team\Team;
 | 
						|
 | 
						|
class OrderValidate extends Validate
 | 
						|
{
 | 
						|
    /**
 | 
						|
     * @notes 发货操作验证
 | 
						|
     * @param $post
 | 
						|
     * @return bool|string
 | 
						|
     * @author suny
 | 
						|
     * @date 2021/7/14 10:10 上午
 | 
						|
     * @throws \think\db\exception\DbException
 | 
						|
     * @throws \think\db\exception\ModelNotFoundException
 | 
						|
     * @throws \think\db\exception\DataNotFoundException
 | 
						|
     */
 | 
						|
    protected function checkDelivery($post)
 | 
						|
    {
 | 
						|
 | 
						|
        $id = $post['id'];
 | 
						|
        $order = Order::where(['id' => $id])->find();
 | 
						|
 | 
						|
        if (!$order) {
 | 
						|
            return '订单失效';
 | 
						|
        }
 | 
						|
 | 
						|
        if ($order['del'] == 1) {
 | 
						|
            return '订单已删除';
 | 
						|
        }
 | 
						|
 | 
						|
        if ($order['shipping_status'] == 1) {
 | 
						|
            return '此订单已发货';
 | 
						|
        }
 | 
						|
 | 
						|
        if ($order['order_type'] == OrderEnum::TEAM_ORDER) {
 | 
						|
            $found = Order::where(['id' => $order['team_found_id']])->find();
 | 
						|
            if ($found['status'] != Team::STATUS_SUCCESS) {
 | 
						|
                return '已支付的拼团订单需要等待拼团成功后才能发货';
 | 
						|
            }
 | 
						|
        }
 | 
						|
 | 
						|
        return true;
 | 
						|
    }
 | 
						|
}
 |