From a4cf12af1c9872b779d99816fccbde9cb4234761 Mon Sep 17 00:00:00 2001
From: zyx <zyx123456>
Date: 星期一, 01 四月 2024 16:35:56 +0800
Subject: [PATCH] 单个站点只能下发一个任务
---
src/main/java/com/zy/asrs/task/AgvWrkMastScheduler.java | 17 +++++++++++++++++
src/main/java/com/zy/asrs/task/handler/AgvWrkMastHandler.java | 1 +
2 files changed, 18 insertions(+), 0 deletions(-)
diff --git a/src/main/java/com/zy/asrs/task/AgvWrkMastScheduler.java b/src/main/java/com/zy/asrs/task/AgvWrkMastScheduler.java
index 1acf9ef..633204b 100644
--- a/src/main/java/com/zy/asrs/task/AgvWrkMastScheduler.java
+++ b/src/main/java/com/zy/asrs/task/AgvWrkMastScheduler.java
@@ -117,8 +117,25 @@
.or().eq("io_type", 107)).getRecords();
if(!Cools.isEmpty(agvWrkMastList)){
+ List<String> devNos = new ArrayList<>();
agvWrkMastList.forEach(agvWrkMast -> {
try {
+
+ //杩囨护璇ユ壒宸ヤ綔妗d腑閲嶅鐨勫嚭绔欑偣
+ if (devNos.contains(agvWrkMast.getLocNo())){
+ return;
+ }
+ devNos.add(agvWrkMast.getLocNo());
+
+ //妫�娴嬪綋鍓嶅伐浣滀换鍔′腑鐨勭珯鐐规槸鍚﹀凡鏈夋湁浣滀笟涓殑浠诲姟
+ AgvWrkMast agvWrkMastWorking = agvWrkMastService.selectOne(new EntityWrapper<AgvWrkMast>()
+ .eq("loc_no", agvWrkMast.getLocNo())
+ .ge("loc_sts", 202L));
+
+ if(!Cools.isEmpty(agvWrkMastWorking)){
+ return;
+ }
+
agvWrkMastHandler.startPutWayWrk(agvWrkMast);
} catch (IOException e) {
log.error(e.getMessage());
diff --git a/src/main/java/com/zy/asrs/task/handler/AgvWrkMastHandler.java b/src/main/java/com/zy/asrs/task/handler/AgvWrkMastHandler.java
index 15a1e99..258565f 100644
--- a/src/main/java/com/zy/asrs/task/handler/AgvWrkMastHandler.java
+++ b/src/main/java/com/zy/asrs/task/handler/AgvWrkMastHandler.java
@@ -144,6 +144,7 @@
}
@Transactional
+ @Synchronized
public ReturnT<String> startPutWayWrk(AgvWrkMast agvWrkMast) throws IOException {
//涓嬪彂浠诲姟
--
Gitblit v1.9.1