瀏覽代碼

feat:增加运单中止行车日志

wangweiyu 4 年之前
父節點
當前提交
c94590c5f7

+ 2 - 0
src/main/java/com/aoyang/tms/common/WorkLogTypeEnum.java

@@ -13,6 +13,8 @@ public enum WorkLogTypeEnum {
      */
     LOAD_ORDER_START(1, "执行 装车运单, 开始\"出车前检查\""),
 
+    LOAD_ORDER_NEW_START(2, "执行新的装车运单, 此次行车结束"),
+
     ENGIN_ON(2, "车辆启动"),
 
     FINISH_PRE_CHECK(10, "完成\"出车前检查\",开始\"出车作业\""),

+ 1 - 1
src/main/java/com/aoyang/tms/controller/vo/TruckOrderManageVO.java

@@ -20,7 +20,7 @@ import java.util.List;
 public class TruckOrderManageVO implements Serializable {
 
     @ApiModelProperty(value = "卡车id")
-    private Long truckId;
+    private String truckId;
 
     @ApiModelProperty(value = "运力系统车辆状态,状态:1出车检查;2.作业中;3.收车中;4.收车后检查;5.已收车")
     private Integer tmsStatus;

+ 9 - 0
src/main/java/com/aoyang/tms/service/impl/WorkLogServiceImpl.java

@@ -57,6 +57,15 @@ public class WorkLogServiceImpl extends ServiceImpl<WorkLogMapper, WorkLog> impl
             workLog.setOrderId(workOrder.getId()+"");
             workLog.setCreaterName(workLog.getCreaterName());
             workLog.setCreateDate(LocalDateTime.now());
+        } else if (logType.equals(WorkLogTypeEnum.LOAD_ORDER_NEW_START)) {
+            // 执行新的装车运单,原行车周期结束
+            BeanUtils.copyProperties(workOrder, workLog);
+            workLog.setId(null);
+            // 日志内容
+            workLog.setNote("");
+            workLog.setOrderId(workOrder.getId()+"");
+            workLog.setCreaterName(workLog.getCreaterName());
+            workLog.setCreateDate(LocalDateTime.now());
         } else if (logType.equals(WorkLogTypeEnum.FINISH_PRE_CHECK)) {
             // 完成"出车前检查",开始"出车作业"
             if (workOrder == null) {

+ 8 - 0
src/main/java/com/aoyang/tms/service/impl/WorkerServiceImpl.java

@@ -57,6 +57,7 @@ public class WorkerServiceImpl implements WorkerService {
                 queryWrapper.eq("cycle_id", workCycleOld.getId());
                 queryWrapper.eq("status", 60);
                 queryWrapper.eq("type", 1);
+                queryWrapper.orderByDesc("id");
                 List<WorkOrder> calcelList = workOrderService.list(queryWrapper);
                 if (calcelList != null && calcelList.size() > 0) {
                     cancelFlag = true;
@@ -65,6 +66,12 @@ public class WorkerServiceImpl implements WorkerService {
             if (cancelFlag) {
                 workOrder.setCycleId(workCycleOld.getId());
             } else {
+                if (truck.getTmsStatus() == 3) {
+                    // 完成原行车周期
+                    workCycleOld.setStatus(2);
+                    workCycleService.updateById(workCycleOld);
+                    workLogService.logWorkCycleInfo(WorkLogTypeEnum.LOAD_ORDER_NEW_START, workOrder);
+                }
                 //1.车辆进入出车前检车状态
                 truck.setTmsStatus(TmsTruckStatus.PRE_CHECK);
                 truckService.updateById(truck);
@@ -78,6 +85,7 @@ public class WorkerServiceImpl implements WorkerService {
                 workCycleService.save(workCycle);
 
                 workOrder.setCycleId(workCycle.getId());
+
             }
             //3.订单进入前往装车点状态,
             workOrder.setOrderStatus(WorkOrderEnum.GOTO_ZHUANGCHE_SPOT.orderStatus());