Pārlūkot izejas kodu

feat:运单更新全员已读标识字段

wangweiyu 4 gadi atpakaļ
vecāks
revīzija
8bcbdc5c27

+ 15 - 3
src/main/java/com/aoyang/tms/service/impl/WorkOrderReadinfoServiceImpl.java

@@ -1,8 +1,10 @@
 package com.aoyang.tms.service.impl;
 
+import com.aoyang.tms.entity.WorkOrder;
 import com.aoyang.tms.entity.WorkOrderReadinfo;
 import com.aoyang.tms.mapper.WorkOrderReadinfoMapper;
 import com.aoyang.tms.service.WorkOrderReadinfoService;
+import com.aoyang.tms.service.WorkOrderService;
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.baomidou.mybatisplus.core.toolkit.Wrappers;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
@@ -22,7 +24,7 @@ import javax.annotation.Resource;
 public class WorkOrderReadinfoServiceImpl extends ServiceImpl<WorkOrderReadinfoMapper, WorkOrderReadinfo> implements WorkOrderReadinfoService {
 
     @Resource
-    WorkOrderReadinfoMapper workOrderReadinfoMapper;
+    private WorkOrderService workOrderService;
 
     @Override
     public Boolean addWorkOrderReadinfo(WorkOrderReadinfo workOrderReadinfo) {
@@ -34,9 +36,19 @@ public class WorkOrderReadinfoServiceImpl extends ServiceImpl<WorkOrderReadinfoM
         //先查,如果有返回,如果没有,插入
         if (readinfo != null) {
             return true;
-        } else {
-            return save(workOrderReadinfo);
         }
+        boolean result = save(workOrderReadinfo);
+        WorkOrder workOrder = workOrderService.getById(workOrderReadinfo.getOrderId());
+        QueryWrapper queryRead = new QueryWrapper();
+        queryRead.eq("order_id", workOrderReadinfo.getOrderId());
+        int readCount = this.count(queryRead);
+        int count = (workOrder.getDriverIdTwo() == null ? 1 : 2) + (workOrder.getEscortId() == null ? 0 : 1);
+        if (readCount == count) {
+            workOrder.setReadFlag(1);
+            workOrderService.updateById(workOrder);
+        }
+        return result;
+
     }
 
     @Override

+ 2 - 1
src/main/java/com/aoyang/tms/service/impl/WorkOrderServiceImpl.java

@@ -269,7 +269,8 @@ public class WorkOrderServiceImpl extends ServiceImpl<WorkOrderMapper, WorkOrder
         }
 
         order.setOrderStatus(WorkOrderEnum.CONCELED.orderStatus());
-        workLogService.logWorkCycleInfo(order.getType() == 1 ? WorkLogTypeEnum.LOAD_CANCELED : WorkLogTypeEnum.UNLOAD_CANCELED, order);
+        workLogService.logWorkCycleInfo((order.getType() == 1 ? WorkLogTypeEnum.LOAD_CANCELED : WorkLogTypeEnum.UNLOAD_CANCELED), order,
+                workOrder.getUpdater()+"", workOrder.getUpdaterName());
 
         if (workOrder.getStopNote() != null) {
             order.setStopNote(workOrder.getStopNote());