From 72c06d5800d3a99dbd7002a6946be749d9264b15 Mon Sep 17 00:00:00 2001
From: zhang <zc857179121@qq.com>
Date: 星期四, 26 六月 2025 10:44:26 +0800
Subject: [PATCH] 1

---
 src/main/java/com/zy/asrs/task/TaskLogScheduler.java |   35 ++++++++++++++++++++---------------
 1 files changed, 20 insertions(+), 15 deletions(-)

diff --git a/src/main/java/com/zy/asrs/task/TaskLogScheduler.java b/src/main/java/com/zy/asrs/task/TaskLogScheduler.java
index 7e7df3d..71ad90a 100644
--- a/src/main/java/com/zy/asrs/task/TaskLogScheduler.java
+++ b/src/main/java/com/zy/asrs/task/TaskLogScheduler.java
@@ -12,6 +12,7 @@
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.scheduling.annotation.Scheduled;
 import org.springframework.stereotype.Component;
+import org.springframework.transaction.annotation.Transactional;
 
 import java.io.IOException;
 
@@ -33,8 +34,8 @@
     private TaskWrkReportService taskWrkReportService;
 
 
-    @Scheduled(cron = "0/3 * * * * ? ")
-    public void execute() throws IOException {
+    @Scheduled(cron = "0/5 * * * * ? ")
+    public synchronized void execute() throws IOException {
         for (TaskWrk taskWrk : taskWrkService.selectToBeHistoryData()) {
             switch (taskWrk.getStatus()) {
                 case 4:
@@ -42,20 +43,24 @@
                 case 5:
                     break;
             }
-            TaskWrkReport taskWrkReport = new TaskWrkReport();
-            TaskWrkLog taskWrkLog = new TaskWrkLog();
-            Synchro.Copy(taskWrk, taskWrkReport);
-            Synchro.Copy(taskWrk, taskWrkLog);
-            if (!taskWrkReportService.insert(taskWrkReport)) {
-                throw new CoolException("杞Щ鑷充笂鎶ヨ〃" + taskWrk);
-            }
-            if (!wrkLogService.insert(taskWrkLog)) {
-                throw new CoolException("杞巻鍙叉。澶辫触" + taskWrk);
-            }
-            if (!taskWrkService.deleteById(taskWrk)) {
-                throw new CoolException("浠诲姟妗e垹闄ゅけ璐�" + taskWrk);
-            }
+            exe(taskWrk);
         }
     }
 
+    @Transactional
+    public void exe(TaskWrk taskWrk) {
+        TaskWrkReport taskWrkReport = new TaskWrkReport();
+        TaskWrkLog taskWrkLog = new TaskWrkLog();
+        Synchro.Copy(taskWrk, taskWrkReport);
+        Synchro.Copy(taskWrk, taskWrkLog);
+        if (!wrkLogService.insert(taskWrkLog)) {
+            throw new CoolException("杞巻鍙叉。澶辫触" + taskWrk);
+        }
+        if (!taskWrkService.deleteById(taskWrk)) {
+            throw new CoolException("浠诲姟妗e垹闄ゅけ璐�" + taskWrk);
+        }
+        if (!taskWrkReportService.insert(taskWrkReport)) {
+            throw new CoolException("杞Щ鑷充笂鎶ヨ〃" + taskWrk);
+        }
+    }
 }

--
Gitblit v1.9.1