|
|
@@ -22,9 +22,9 @@ class WorkOrderService
|
|
|
protected $modelClass = WorkOrder::class;
|
|
|
|
|
|
/**
|
|
|
- * @var WorkOrderLogService $logService
|
|
|
- * @var WorkOrderImageService $imageService
|
|
|
- * @var WorkOrderCommoditiesService $commoditiesService
|
|
|
+ * @var WorkOrderLogService $logService
|
|
|
+ * @var WorkOrderImageService $imageService
|
|
|
+ * @var WorkOrderCommoditiesService $commoditiesService
|
|
|
* @var WorkOrderDetailService $detailService
|
|
|
* @var OrderIssueTypeService $issueTypeService
|
|
|
* @var OrderService $orderService
|
|
|
@@ -60,7 +60,7 @@ class WorkOrderService
|
|
|
if (Gate::allows('订单管理-工单处理-客服编辑') || Gate::allows('订单管理-工单处理-货主编辑')) {
|
|
|
return OrderIssueType::query()->whereIn('name', ['拦截', '信息更改', '其他', '快递异常', '错漏发', '破损', '快递丢件'])->get();
|
|
|
} else if (Gate::allows('订单管理-工单处理-承运商编辑')) {
|
|
|
- return OrderIssueType::query()->whereIn('name', ['拦截', '信息更改', '破损', '快递丢件','快递异常'])->get();
|
|
|
+ return OrderIssueType::query()->whereIn('name', ['拦截', '信息更改', '破损', '快递丢件', '快递异常'])->get();
|
|
|
}
|
|
|
return OrderIssueType::query()->whereIn('name', ['拦截', '信息更改', '其他', '快递异常', '错漏发', '破损', '快递丢件'])->get();
|
|
|
}
|
|
|
@@ -127,7 +127,7 @@ class WorkOrderService
|
|
|
{
|
|
|
$issueType = $this->issueTypeService->firstOrCreate(['name' => '拦截']);
|
|
|
|
|
|
- $order = $this->orderService->first(['code'=> $param['order_no']]);
|
|
|
+ $order = $this->orderService->first(['code' => $param['order_no']]);
|
|
|
|
|
|
$remark = $param['remark'] ?? '拦截工单';
|
|
|
|
|
|
@@ -135,7 +135,7 @@ class WorkOrderService
|
|
|
|
|
|
$workOrder->changeStatus('承运商处理');
|
|
|
|
|
|
- $this->logService->createLog($workOrder,'创建','创建');
|
|
|
+ $this->logService->createLog($workOrder, '创建', '创建');
|
|
|
|
|
|
return $workOrder;
|
|
|
}
|
|
|
@@ -147,11 +147,11 @@ class WorkOrderService
|
|
|
{
|
|
|
$issueType = $this->issueTypeService->firstOrCreate(['name' => '错漏发']);
|
|
|
|
|
|
- $order = $this->orderService->first(['code'=> $param['order_no']]);
|
|
|
+ $order = $this->orderService->first(['code' => $param['order_no']]);
|
|
|
|
|
|
$workOrder = $this->createAndNotification($order, $issueType, $param['remark'] ?? '');
|
|
|
|
|
|
- $this->commoditiesService->createWorkOrderCommoditiesByJsonArray($workOrder,$param['commodities']);
|
|
|
+ $this->commoditiesService->createWorkOrderCommoditiesByJsonArray($workOrder, $param['commodities']);
|
|
|
|
|
|
$workOrder->changeStatus('宝时处理');
|
|
|
|
|
|
@@ -165,11 +165,11 @@ class WorkOrderService
|
|
|
{
|
|
|
$issueType = $this->issueTypeService->firstOrCreate(['name' => '破损']);
|
|
|
|
|
|
- $order = $this->orderService->first(['code'=> $param['order_no']]);
|
|
|
+ $order = $this->orderService->first(['code' => $param['order_no']]);
|
|
|
|
|
|
$workOrder = $this->createAndNotification($order, $issueType, $param['remark'] ?? '');
|
|
|
|
|
|
- $this->imageService->createWorkOrderImages($workOrder,$param);
|
|
|
+ $this->imageService->createWorkOrderImages($workOrder, $param);
|
|
|
|
|
|
$this->detailService->createWorkOrderDetail($workOrder, $param);
|
|
|
|
|
|
@@ -177,7 +177,7 @@ class WorkOrderService
|
|
|
|
|
|
$workOrder->changeStatus('承运商处理');
|
|
|
|
|
|
- $this->logService->createLog($workOrder,'创建','创建工单');
|
|
|
+ $this->logService->createLog($workOrder, '创建', '创建工单');
|
|
|
|
|
|
return $workOrder;
|
|
|
}
|
|
|
@@ -187,19 +187,19 @@ class WorkOrderService
|
|
|
*/
|
|
|
public function createExpressAbnormalWorkOrder($param): WorkOrder
|
|
|
{
|
|
|
- $order = $this->orderService->first(['code'=> $param['order_no']]);
|
|
|
+ $order = $this->orderService->first(['code' => $param['order_no']]);
|
|
|
|
|
|
$issueType = $this->issueTypeService->firstOrCreate(['name' => '快递异常']);
|
|
|
|
|
|
- $workOrder = $this->createAndNotification($order, $issueType, $param['remark'] ?? '');
|
|
|
+ $workOrder = $this->createAndNotification($order, $issueType, $param['remark'] ?? '');
|
|
|
|
|
|
- $this->imageService->createWorkOrderImages($workOrder,$param);
|
|
|
+ $this->imageService->createWorkOrderImages($workOrder, $param);
|
|
|
|
|
|
- $this->commoditiesService->createWorkOrderCommoditiesByJsonArray($workOrder,$param['commodities']);
|
|
|
+ $this->commoditiesService->createWorkOrderCommoditiesByJsonArray($workOrder, $param['commodities']);
|
|
|
|
|
|
$workOrder->changeStatus('承运商处理');
|
|
|
|
|
|
- $this->logService->createLog($workOrder,'创建','创建工单');
|
|
|
+ $this->logService->createLog($workOrder, '创建', '创建工单');
|
|
|
|
|
|
return $workOrder;
|
|
|
}
|
|
|
@@ -211,13 +211,13 @@ class WorkOrderService
|
|
|
{
|
|
|
$issueType = $this->issueTypeService->firstOrCreate(['name' => '信息更改']);
|
|
|
|
|
|
- $order = $this->orderService->first(['code'=> $param['order_no']]);
|
|
|
+ $order = $this->orderService->first(['code' => $param['order_no']]);
|
|
|
|
|
|
$workOrder = $this->createAndNotification($order, $issueType, $param['remark'] ?? '');
|
|
|
|
|
|
$workOrder->changeStatus('承运商处理');
|
|
|
|
|
|
- $this->logService->createLog($workOrder,'创建','创建工单');
|
|
|
+ $this->logService->createLog($workOrder, '创建', '创建工单');
|
|
|
|
|
|
return $workOrder;
|
|
|
}
|
|
|
@@ -229,7 +229,7 @@ class WorkOrderService
|
|
|
{
|
|
|
$orderIssueType = $this->issueTypeService->firstOrCreate(['name' => '其他']);
|
|
|
|
|
|
- $order = $this->orderService->first(['code'=> $param['order_no']]);
|
|
|
+ $order = $this->orderService->first(['code' => $param['order_no']]);
|
|
|
|
|
|
return $this->createAndNotification($order, $orderIssueType, $param['remark'] ?? '');
|
|
|
}
|
|
|
@@ -241,13 +241,13 @@ class WorkOrderService
|
|
|
{
|
|
|
$orderIssueType = $this->issueTypeService->firstOrCreate(['name' => '快递丢件']);
|
|
|
|
|
|
- $order = $this->orderService->first(['code'=> $param['order_no']]);
|
|
|
+ $order = $this->orderService->first(['code' => $param['order_no']]);
|
|
|
|
|
|
$workOrder = $this->createAndNotification($order, $orderIssueType, $param['remark'] ?? '');
|
|
|
|
|
|
$workOrder->changeStatus('货主处理');
|
|
|
|
|
|
- $this->logService->createLog($workOrder,'创建','创建工单');
|
|
|
+ $this->logService->createLog($workOrder, '创建', '创建工单');
|
|
|
|
|
|
return $workOrder;
|
|
|
}
|
|
|
@@ -259,13 +259,13 @@ class WorkOrderService
|
|
|
{
|
|
|
$workOrder->saveWorkOrderDetail($param); // 收方信息 丢件价值 补发单号
|
|
|
|
|
|
- $this->imageService->createWorkOrderImages($workOrder,$param);
|
|
|
+ $this->imageService->createWorkOrderImages($workOrder, $param);
|
|
|
|
|
|
$workOrder->changeStatus('承运商处理');
|
|
|
|
|
|
- $this->logService->createLog($workOrder,'处理','填充丢件信息');
|
|
|
+ $this->logService->createLog($workOrder, '处理', '填充丢件信息');
|
|
|
|
|
|
- $this->commoditiesService->createWorkOrderCommoditiesByJsonArray($workOrder,$param['commodities'] ?? '');
|
|
|
+ $this->commoditiesService->createWorkOrderCommoditiesByJsonArray($workOrder, $param['commodities'] ?? '');
|
|
|
|
|
|
return $workOrder;
|
|
|
}
|
|
|
@@ -274,19 +274,19 @@ class WorkOrderService
|
|
|
{
|
|
|
$workOrder->end();
|
|
|
|
|
|
- $this->logService->createLog($workOrder,'完结','完结工单');
|
|
|
+ $this->logService->createLog($workOrder, '完结', '完结工单');
|
|
|
}
|
|
|
|
|
|
public function logisticEnd(WorkOrder $workOrder)
|
|
|
{
|
|
|
$workOrder->changeStatus('完成');
|
|
|
- $this->logService->createLog($workOrder,'完结','承运商完结工单');
|
|
|
+ $this->logService->createLog($workOrder, '完结', '承运商完结工单');
|
|
|
}
|
|
|
|
|
|
- public function find($id):WorkOrder
|
|
|
+ public function find($id): WorkOrder
|
|
|
{
|
|
|
/** @var WorkOrder $item */
|
|
|
- $item = WorkOrder::query()->where('id',$id)->first();
|
|
|
+ $item = WorkOrder::query()->where('id', $id)->first();
|
|
|
return $item;
|
|
|
}
|
|
|
|
|
|
@@ -414,4 +414,15 @@ class WorkOrderService
|
|
|
else $order->is_work_order = false;
|
|
|
}
|
|
|
}
|
|
|
+
|
|
|
+ public function checkWorkOrder($nos)
|
|
|
+ {
|
|
|
+ return WorkOrder::query()->defaultWith()->whereIn('order_id', function ($query) use ($nos) {
|
|
|
+ if (is_array($nos))
|
|
|
+ $query->selectRaw('id')->whereIn('code', $nos);
|
|
|
+ else {
|
|
|
+ $query->selectRaw('id')->where('code', $nos);
|
|
|
+ }
|
|
|
+ })->get();
|
|
|
+ }
|
|
|
}
|