logService = app('WorkOrderLogService'); $this->detailService = app('WorkOrderDetailService'); $this->issueTypeService = app('OrderIssueTypeService'); $this->orderService = app('OrderService'); $this->workOrderService = app('WorkOrderService'); } /* * 拦截工单处理流程 * 1:创建 * 2:承运商处理完结 */ public function store($params) { $issueType = $this->issueTypeService->firstOrCreate(['name' => '拦截']); $order = $this->orderService->first(['code' => $params['orderNos']]); $workOrder = $this->workOrderService->createAndNotification($order, $issueType, $param['remark'] ?? ''); $workOrder->changeStatus('承运商处理'); $detail = $this->detailService->createWorkOrderDetail($workOrder, $params); $this->logService->createLog($detail, '创建', '创建'); $workOrder->changeStatus('承运商处理'); } // 完结拦截工单 public function endIntercept(WorkOrderDetail $detail) { $this->logService->createLog($detail, '完结', '承运商完结'); $detail->changeStatus('完成'); $detail->workOrder->clearWorkOrderStatus(); $detail->workOrder->changeStatus('完成'); $this->detailService->endDetail($detail); } }