logService = app('WorkOrderLogService'); $this->detailService = app('WorkOrderDetailService'); $this->issueTypeService = app('OrderIssueTypeService'); } /* * 错漏发处理流程 * 1:创建错漏发工单 * 2:宝时审核商品数量 * 3:商家进行处理结果填充 */ public function store($params) { $issueType = $this->issueTypeService->firstOrCreate(['name' => '错漏发']); $order = $this->syncOrder($params['order_no']); $workOrder = $this->createAndNotification($order, $issueType, $params['remark'] ?? '','商家已创建'); $detail = $this->detailService->createWorkOrderDetail($workOrder, $params); $this->logService->createLog($detail, '创建','商家创建'); $workOrder->change('宝时处理','商家创建',''); $detail->change('宝时处理','商家创建',''); } /** * 创建工单后的修改操作 货主 * @param WorkOrderDetail $detail * @param $params */ public function ownerEdit(WorkOrderDetail $detail,$params) { $this->detailService->updateDetail($detail,$params); $detail->change('宝时处理','商家创建',''); $detail->workOrder->change('宝时处理','商家创建',''); $this->logService->createLog($detail, '处理','商家修改'); } public function baoShiReviewMistake(WorkOrderDetail $detail,$params) { $this->detailService->updateDetail($detail,$params); $detail->change('货主处理','已核实','宝时处理'); $detail->workOrder->change('货主处理','已核实','宝时处理'); $detail->workOrder->clearWorkOrderStatus(); // 清除创建标记 $this->logService->createLog($detail, '处理', '承运商处理'); } public function ownerReviewMistake(WorkOrderDetail $detail,$params) { $this->detailService->updateDetail($detail,$params); $detail->change('宝时终审',$params['process_progress'],'货主处理'); $detail->workOrder->change('宝时终审',$params['process_progress'],'货主处理'); $this->logService->createLog($detail, '处理', '货主处理'); } public function ownerEndEdit(WorkOrderDetail $detail,$params) { $this->detailService->updateDetail($detail,$params); $detail->change('宝时终审',$params['process_progress'],'货主处理'); $detail->workOrder->change('宝时终审',$params['process_progress'],'货主处理'); $this->logService->createLog($detail, '处理', '货主编辑'); } public function baoShiReview($detail,$params) { $this->detailService->updateDetail($detail,$params); $this->logService->createLog($detail,'完结','宝时完结'); $detail->change('完成',$params['process_progress'],'宝时终审'); $detail->workOrder->change('完成',$params['process_progress'],'宝时终审'); $this->detailService->endDetail($detail); } }