logService = app('WorkOrderLogService'); $this->detailService = app('WorkOrderDetailService'); $this->issueTypeService = app('OrderIssueTypeService'); $this->orderService = app('OrderService'); } /* * 破损工单处理流程 * 1:创建工单 * 2:快递处理 * 3: 宝时终审 */ public function store($params){ $issueType = $this->issueTypeService->firstOrCreate(['name' => '破损']); $order = $this->orderService->first(['code' => $params['order_no']]); $workOrder = $this->createAndNotification($order, $issueType, $params['remark'] ?? ''); $detail = $this->detailService->createWorkOrderDetail($workOrder, $params); $this->logService->createLog($detail, '创建', '创建工单'); $workOrder->changeStatus('承运商处理'); $detail->changeStatus('宝时处理'); } public function logisticHandle($detail,$params) { $this->detailService->updateDetail($detail,$params); $detail->changeStatus('宝时终审'); $detail->workOrder->clearWorkOrderStatus(); $detail->workOrder->changeStatus('宝时终审'); $this->logService->createLog($detail, '处理', '承运商处理'); } public function baoShiReviewDamage($detail,$params) { $this->detailService->updateDetail($detail,$params); $this->logService->createLog($detail, '终审', '终审'); $this->logService->createLog($detail, '完结', '完结'); $detail->changeStatus('完成'); $detail->workOrder->changeStatus('完成'); $this->detailService->endDetail($detail); } }