From 12dc44ac1b5adca57a2a24fc3c1413c7e78cf9c6 Mon Sep 17 00:00:00 2001
From: vincentlu <t1341870251@gmail.com>
Date: 星期日, 04 一月 2026 11:31:42 +0800
Subject: [PATCH] #
---
zy-acs-manager/src/main/java/com/zy/acs/manager/core/service/TransferStationHandler.java | 6 ------
zy-acs-manager/src/main/java/com/zy/acs/manager/core/service/TrafficService.java | 1 +
zy-acs-manager/src/main/java/com/zy/acs/manager/core/scheduler/KernelScheduler.java | 16 +++++++++++-----
3 files changed, 12 insertions(+), 11 deletions(-)
diff --git a/zy-acs-manager/src/main/java/com/zy/acs/manager/core/scheduler/KernelScheduler.java b/zy-acs-manager/src/main/java/com/zy/acs/manager/core/scheduler/KernelScheduler.java
index 230a977..5b0240c 100644
--- a/zy-acs-manager/src/main/java/com/zy/acs/manager/core/scheduler/KernelScheduler.java
+++ b/zy-acs-manager/src/main/java/com/zy/acs/manager/core/scheduler/KernelScheduler.java
@@ -21,6 +21,7 @@
import org.springframework.context.event.EventListener;
import org.springframework.scheduling.annotation.Scheduled;
import org.springframework.stereotype.Component;
+import org.springframework.transaction.support.TransactionTemplate;
import javax.annotation.PreDestroy;
import java.util.ArrayList;
@@ -47,6 +48,8 @@
private Thread actionPublicThread;
+ @Autowired
+ private TransactionTemplate txTemplate;
@Autowired
private AgvService agvService;
@Autowired
@@ -119,15 +122,18 @@
.eq(Segment::getState, SegmentStateType.WAITING.toString())
);
for (Segment segment : segments) {
-// long startTime = System.currentTimeMillis();
if (!transferStationHandler.hasDelayAtSta(segment)) {
- trafficService.trigger(segment);
+ continue;
}
-// log.info("traffic calculation spend {} ms", System.currentTimeMillis() - startTime);
+ try {
+ txTemplate.executeWithoutResult(status -> {
+ trafficService.trigger(segment);
+ });
+ } catch (Exception e) {
+ log.error("trigger fail segId={}", segment.getId(), e);
+ }
}
-
} catch (Exception e) {
- // todo test TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
log.error("KernelScheduler.trafficCalcThread fail", e);
}
}
diff --git a/zy-acs-manager/src/main/java/com/zy/acs/manager/core/service/TrafficService.java b/zy-acs-manager/src/main/java/com/zy/acs/manager/core/service/TrafficService.java
index a10ea6c..a386a16 100644
--- a/zy-acs-manager/src/main/java/com/zy/acs/manager/core/service/TrafficService.java
+++ b/zy-acs-manager/src/main/java/com/zy/acs/manager/core/service/TrafficService.java
@@ -287,6 +287,7 @@
log.error("TrafficService.trigger", e);
TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
+ throw new RuntimeException("trigger method caught an exception", e);
}
}
diff --git a/zy-acs-manager/src/main/java/com/zy/acs/manager/core/service/TransferStationHandler.java b/zy-acs-manager/src/main/java/com/zy/acs/manager/core/service/TransferStationHandler.java
index 54bb240..ff1ea3f 100644
--- a/zy-acs-manager/src/main/java/com/zy/acs/manager/core/service/TransferStationHandler.java
+++ b/zy-acs-manager/src/main/java/com/zy/acs/manager/core/service/TransferStationHandler.java
@@ -52,12 +52,6 @@
* 瑕佸仛 ready-for-next
*/
public boolean hasDelayAtSta(Segment currSeg) {
- // todo
- Sta sta = staService.selectByStaNo("1");
- sta.setOccCnt(sta.getOccCnt() + 1);
- staService.updateById(sta);
-
-
if (currSeg == null) {
throw new NullPointerException("segment is null in hasDelayAtSta.");
}
--
Gitblit v1.9.1