|
|
|
@ -20,21 +20,26 @@ class GrabOrderController extends Controller |
|
|
|
public function index(Request $request) |
|
|
|
{ |
|
|
|
try { |
|
|
|
$user = $request->user(); |
|
|
|
$user = $request->session()->get('wechat_user'); |
|
|
|
$id = $request->route('id'); |
|
|
|
|
|
|
|
$fields = ['id', 'order_num', 'refund_time', 'complete_time', 'money', 'tel', 'name', 'address', 'note', 'area', |
|
|
|
'lat', 'lng', 'pay_type', 'order_type', 'market_id', 'total_money', 'created_at', 'pay_time']; |
|
|
|
if (!$id || !$order = ImsCjdcOrderMain::where('state', 3)->find($id, $fields)) { |
|
|
|
if (!$id || !$order = ImsCjdcOrderMain::with('employees')->where('state', 3)->find($id)) { |
|
|
|
throw new \Exception('唉呀,来晚啦,订单已经被接走啦~~~'); |
|
|
|
} else if (!empty($order->employees->user_id)) { |
|
|
|
if ($order->employees->user_id == $user->id) { |
|
|
|
$success_msg = '运气太好了吧,订单被您抢到啦~~'; |
|
|
|
} else { |
|
|
|
unset($order); |
|
|
|
throw new \Exception('唉呀,来晚啦,订单已经被接走啦~~~'); |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
} catch (\Exception $exception) { |
|
|
|
$error_msg = $exception->getMessage(); |
|
|
|
} |
|
|
|
|
|
|
|
return view('web.grab_order', [ |
|
|
|
'error_msg' => $error_msg ?? null, |
|
|
|
'success_msg' => $success_msg ?? null, |
|
|
|
'user' => $user ?? null, |
|
|
|
'order' => $order ?? [], |
|
|
|
]); |
|
|
|
@ -55,10 +60,10 @@ class GrabOrderController extends Controller |
|
|
|
throw new \Exception("您还不是骑手,请联系管理员增加骑手权限"); |
|
|
|
} |
|
|
|
|
|
|
|
$order = ImsCjdcOrderMain::where('id', $id)->first(); |
|
|
|
$order = ImsCjdcOrderMain::with('employees')->where('id', $id)->first(); |
|
|
|
if (!$order) { |
|
|
|
throw new \Exception('订单跑丢了~~'); |
|
|
|
} else if ($order->state != 3) { |
|
|
|
} else if ($order->state != 3 || !empty($order->horseman_id)) { |
|
|
|
throw new \Exception('您来晚啦,订单已经被人接走啦~~'); |
|
|
|
} |
|
|
|
|
|
|
|
@ -68,9 +73,9 @@ class GrabOrderController extends Controller |
|
|
|
throw new \Exception('服务器开小差,抢单失败~'); |
|
|
|
} |
|
|
|
|
|
|
|
return self::success('抢单成功,已消息通知客户,请尽快配送'); |
|
|
|
return self::success([], '抢单成功,已消息通知客户,请尽快配送'); |
|
|
|
} catch (\Exception $exception) { |
|
|
|
return self::error($exception->getMessage()); |
|
|
|
return self::error($exception->getMessage(), 1, config('app.debug') ? $exception->getTrace() : null); |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
@ -114,7 +119,7 @@ class GrabOrderController extends Controller |
|
|
|
$order = ImsCjdcOrderMain::where('id', $formData['order_id'])->first(); |
|
|
|
if (!$order) { |
|
|
|
throw new \Exception('订单跑丢了~~'); |
|
|
|
} else if ($order->state != 3) { |
|
|
|
} else if ($order->state != 3 || !empty($order->horseman_id)) { |
|
|
|
throw new \Exception('您来晚啦,订单已经被人接走啦~~'); |
|
|
|
} |
|
|
|
|
|
|
|
@ -124,7 +129,7 @@ class GrabOrderController extends Controller |
|
|
|
throw new \Exception('服务器开小差,抢单失败~'); |
|
|
|
} |
|
|
|
|
|
|
|
return self::success('抢单成功,已消息通知客户,请尽快配送'); |
|
|
|
return self::success([], '抢单成功,已消息通知客户,请尽快配送'); |
|
|
|
} catch (\Exception $exception) { |
|
|
|
return self::error($exception->getMessage()); |
|
|
|
} |
|
|
|
|