From 9079c4f09f4c267576638b5f41c8aa695742a66a Mon Sep 17 00:00:00 2001
From: Junjie <fallin.jie@qq.com>
Date: 星期一, 06 四月 2026 21:00:46 +0800
Subject: [PATCH] #取消出库优化

---
 src/main/java/com/zy/asrs/task/WrkMastScheduler.java |   29 ++++++++++++++++++-----------
 1 files changed, 18 insertions(+), 11 deletions(-)

diff --git a/src/main/java/com/zy/asrs/task/WrkMastScheduler.java b/src/main/java/com/zy/asrs/task/WrkMastScheduler.java
index 81946e9..2d9ac1f 100644
--- a/src/main/java/com/zy/asrs/task/WrkMastScheduler.java
+++ b/src/main/java/com/zy/asrs/task/WrkMastScheduler.java
@@ -5,6 +5,7 @@
 import com.zy.asrs.domain.enums.NotifyMsgType;
 import com.zy.asrs.entity.BasStation;
 import com.zy.asrs.entity.LocMast;
+import com.zy.asrs.entity.WrkMastLog;
 import com.zy.asrs.entity.WrkMast;
 import com.zy.asrs.service.*;
 import com.zy.asrs.utils.NotifyUtils;
@@ -88,10 +89,11 @@
             }
 
             // 淇濆瓨宸ヤ綔涓绘。鍘嗗彶妗�
-            if (!wrkMastLogService.save(wrkMast.getWrkNo())) {
+            WrkMastLog wrkMastLog = wrkMastLogService.saveRecord(wrkMast.getWrkNo());
+            if (wrkMastLog == null) {
                 log.info("淇濆瓨宸ヤ綔鍘嗗彶妗workNo={}]澶辫触", wrkMast.getWrkNo());
             } else {
-                wrkAnalysisService.finishTask(wrkMast, resolveFinishTime(wrkMast));
+                wrkAnalysisService.finishTask(wrkMast, resolveFinishTime(wrkMast), wrkMastLog.getId());
             }
             // 鍒犻櫎宸ヤ綔涓绘。
             if (!wrkMastService.removeById(wrkMast.getWrkNo())) {
@@ -149,10 +151,11 @@
             }
 
             // 淇濆瓨宸ヤ綔涓绘。鍘嗗彶妗�
-            if (!wrkMastLogService.save(wrkMast.getWrkNo())) {
+            WrkMastLog wrkMastLog = wrkMastLogService.saveRecord(wrkMast.getWrkNo());
+            if (wrkMastLog == null) {
                 log.info("淇濆瓨宸ヤ綔鍘嗗彶妗workNo={}]澶辫触", wrkMast.getWrkNo());
             } else {
-                wrkAnalysisService.finishTask(wrkMast, resolveFinishTime(wrkMast));
+                wrkAnalysisService.finishTask(wrkMast, resolveFinishTime(wrkMast), wrkMastLog.getId());
             }
             // 鍒犻櫎宸ヤ綔涓绘。
             if (!wrkMastService.removeById(wrkMast.getWrkNo())) {
@@ -227,10 +230,11 @@
             }
 
             // 淇濆瓨宸ヤ綔涓绘。鍘嗗彶妗�
-            if (!wrkMastLogService.save(wrkMast.getWrkNo())) {
+            WrkMastLog wrkMastLog = wrkMastLogService.saveRecord(wrkMast.getWrkNo());
+            if (wrkMastLog == null) {
                 log.info("淇濆瓨宸ヤ綔鍘嗗彶妗workNo={}]澶辫触", wrkMast.getWrkNo());
             } else {
-                wrkAnalysisService.finishTask(wrkMast, resolveFinishTime(wrkMast));
+                wrkAnalysisService.finishTask(wrkMast, resolveFinishTime(wrkMast), wrkMastLog.getId());
             }
             // 鍒犻櫎宸ヤ綔涓绘。
             if (!wrkMastService.removeById(wrkMast.getWrkNo())) {
@@ -251,10 +255,11 @@
         }
 
         for (WrkMast wrkMast : wrkMasts) {
-            if (!wrkMastLogService.save(wrkMast.getWrkNo())) {
+            WrkMastLog wrkMastLog = wrkMastLogService.saveRecord(wrkMast.getWrkNo());
+            if (wrkMastLog == null) {
                 log.info("淇濆瓨宸ヤ綔鍘嗗彶妗workNo={}]澶辫触", wrkMast.getWrkNo());
             } else {
-                wrkAnalysisService.finishTask(wrkMast, resolveFinishTime(wrkMast));
+                wrkAnalysisService.finishTask(wrkMast, resolveFinishTime(wrkMast), wrkMastLog.getId());
             }
 
             if (!wrkMastService.removeById(wrkMast.getWrkNo())) {
@@ -266,17 +271,19 @@
     @Scheduled(cron = "0/1 * * * * ? ")
     @Transactional
     public void executeCancelTask(){
-        List<WrkMast> wrkMasts = wrkMastService.list(new QueryWrapper<WrkMast>().eq("mk", "taskCancel"));
+        List<WrkMast> wrkMasts = wrkMastService.list(new QueryWrapper<WrkMast>()
+                .in("mk", "taskCancel", "taskForceCancel"));
         if (wrkMasts.isEmpty()) {
             return;
         }
 
         for (WrkMast wrkMast : wrkMasts) {
             // 淇濆瓨宸ヤ綔涓绘。鍘嗗彶妗�
-            if (!wrkMastLogService.save(wrkMast.getWrkNo())) {
+            WrkMastLog wrkMastLog = wrkMastLogService.saveRecord(wrkMast.getWrkNo());
+            if (wrkMastLog == null) {
                 log.info("淇濆瓨宸ヤ綔鍘嗗彶妗workNo={}]澶辫触", wrkMast.getWrkNo());
             } else {
-                wrkAnalysisService.finishTask(wrkMast, resolveFinishTime(wrkMast));
+                wrkAnalysisService.finishTask(wrkMast, resolveFinishTime(wrkMast), wrkMastLog.getId());
             }
             // 鍒犻櫎宸ヤ綔涓绘。
             if (!wrkMastService.removeById(wrkMast.getWrkNo())) {

--
Gitblit v1.9.1