| 
						
						
							
								
							
						
						
					 | 
				
				 | 
				
					@ -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()); | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					        } | 
				
			
			
		
	
	
		
			
				
					| 
						
							
								
							
						
						
						
					 | 
				
				 | 
				
					
  |