bind("OrderService", OrderService::class); } private function conditionQuery(Request $request) { // 订单日期 // 客户 // 是否完结 // 原始订单 // 最终状态 // 承运商赔偿金额 // 宝时赔偿金额 $query = OrderIssue::with(['order','rejectedBill','orderIssueType','workgroup','secondOrder','orderIssueOnTop']); /* if($request->input('created_at_start')){ $query->where('created_at','>=',$request->input('created_at_start').' 00:00:00'); } if($request->input('created_at_end')){ $query->where('created_at','<=',$request->input('created_at_start').' 23:59:59'); } if($request->input('logistic_indemnity_money')){ $query->where('logistic_indemnity_money',$request->input('logistic_indemnity_money')); } if($request->input('baoshi_indemnity_money')){ $query->where('baoshi_indemnity_money'.$request->input('baoshi_indemnity_money')); } if($request->input('final_status')){ $query->where('final_status',input('final_status')) }*/ return $query; } public function paginate(Request $request) { return $this->conditionQuery($request)->paginate($request->paginate ?? 50); } public function get(Request $request) { } public function orderIssueTag(Request $request) { $orderNos = $request->input('orderNos'); $meg = ['success' => false]; if ($this->verifyOrderIssue($request)) { $meg['fail_info'] = '传入订单编号中对应的订单问题已有生成'; return $meg; } foreach ($orderNos as $orderNo) { $this->createOrFind($orderNo); } $meg['success'] = '选中订单已标记为问题订单'; return $meg; } public function verifyOrderIssue(Request $request) { $orderIds = $request->input('orderNos'); $orders = Order::whereIn('code', $orderIds)->get(); if (count($orders) == 0) { return false; } foreach ($orders as $order) { $order_ids[] = $order->id; } $count = OrderIssue::whereIn('order_id', $order_ids)->count(); return $count != 0; } public function createOrFind($ordeNo) { $orderService = app('OrderService'); $order = $orderService->createOrFindByOrderHead($ordeNo); $arr = [ 'order_id' => $order->id, ]; return OrderIssue::create($arr); } }