From 65539f6fb4d836180f784c2c4e0bc441764cd23f Mon Sep 17 00:00:00 2001
From: chen.llin <1442464845@qq.comm>
Date: 星期一, 19 一月 2026 11:02:44 +0800
Subject: [PATCH] agv逻辑调整
---
src/main/java/com/zy/asrs/task/handler/AgvHandler.java | 80 ++++++++++++++++++++--------------------
1 files changed, 40 insertions(+), 40 deletions(-)
diff --git a/src/main/java/com/zy/asrs/task/handler/AgvHandler.java b/src/main/java/com/zy/asrs/task/handler/AgvHandler.java
index 7d8fa87..69db13d 100644
--- a/src/main/java/com/zy/asrs/task/handler/AgvHandler.java
+++ b/src/main/java/com/zy/asrs/task/handler/AgvHandler.java
@@ -80,7 +80,7 @@
for (Task task : taskList) {
// 濡傛灉浠诲姟鐘舵�佸凡缁忔槸8锛堝凡鍛煎彨AGV锛屾鍦ㄦ惉杩愶級锛屽垯涓嶅啀鍙戦�佹寚浠�
if (task.getWrkSts() != null && task.getWrkSts() == 8L) {
- log.debug("浠诲姟ID锛歿}鐘舵�佸凡鏄�8锛堟鍦ㄦ惉杩愶級锛岃烦杩囧彂閫�", task.getId());
+ // log.debug("浠诲姟ID锛歿}鐘舵�佸凡鏄�8锛堟鍦ㄦ惉杩愶級锛岃烦杩囧彂閫�", task.getId());
continue;
}
@@ -90,7 +90,7 @@
String errorMsg = allocateSiteForTask(task);
if (errorMsg != null) {
// 鏃犳硶鍒嗛厤绔欑偣锛屽彧鍦ㄦ棩蹇椾腑璁板綍锛屼笉璁板綍鍒颁换鍔′腑锛坅pp涓嶉渶瑕佺煡閬擄級
- log.warn("浠诲姟ID锛歿}鏃犳硶鍒嗛厤绔欑偣锛歿}", task.getId(), errorMsg);
+ // log.warn("浠诲姟ID锛歿}鏃犳硶鍒嗛厤绔欑偣锛歿}", task.getId(), errorMsg);
continue;
}
// 妫�鏌ユ槸鍚︽垚鍔熷垎閰嶄簡绔欑偣锛堝鏋滆繑鍥瀗ull涓攕taNo浠嶄负绌猴紝璇存槑鎵�鏈夌珯鐐归兘鍦ㄦ惉杩愶紝绛夊緟涓嬫鍐嶈瘯锛�
@@ -99,7 +99,7 @@
// 鎵�鏈夌珯鐐归兘鍦ㄦ惉杩愶紝鏆備笉鍒嗛厤锛岀瓑寰呬笅娆″畾鏃朵换鍔″啀灏濊瘯
continue;
}
- log.info("浠诲姟ID锛歿}宸插垎閰嶇珯鐐癸細{}", task.getId(), staNo);
+ // log.info("浠诲姟ID锛歿}宸插垎閰嶇珯鐐癸細{}", task.getId(), staNo);
}
// 妫�鏌ョ洰鏍囩珯鐐规槸鍚︽湁鏁堬紙涓嶄负0涓斿瓨鍦級
@@ -108,18 +108,18 @@
Integer siteNo = Integer.parseInt(staNo);
// 妫�鏌ョ珯鐐规槸鍚︿负0锛堟棤鏁堢珯鐐癸級锛屽鏋滄槸0鍒欎笉鍙戦�侊紝浣嗕笉娓呯┖绔欑偣
if (siteNo == null || siteNo == 0) {
- log.warn("浠诲姟ID锛歿}鐨勭洰鏍囩珯鐐箋}鏃犳晥锛堜负0锛夛紝璺宠繃鍙戦�侊紝淇濈暀绔欑偣鍒嗛厤", task.getId(), staNo);
+ // log.warn("浠诲姟ID锛歿}鐨勭洰鏍囩珯鐐箋}鏃犳晥锛堜负0锛夛紝璺宠繃鍙戦�侊紝淇濈暀绔欑偣鍒嗛厤", task.getId(), staNo);
continue;
}
List<BasDevp> basDevpList = basDevpMapper.selectList(new EntityWrapper<BasDevp>().eq("dev_no", siteNo));
if (basDevpList == null || basDevpList.isEmpty()) {
// 绔欑偣涓嶅瓨鍦紝璺宠繃鍙戦�侊紝涓嶆竻绌虹珯鐐�
- log.warn("浠诲姟ID锛歿}鐨勭洰鏍囩珯鐐箋}涓嶅瓨鍦紝璺宠繃鍙戦�侊紝淇濈暀绔欑偣鍒嗛厤", task.getId(), staNo);
+ // log.warn("浠诲姟ID锛歿}鐨勭洰鏍囩珯鐐箋}涓嶅瓨鍦紝璺宠繃鍙戦�侊紝淇濈暀绔欑偣鍒嗛厤", task.getId(), staNo);
continue;
}
} catch (NumberFormatException e) {
// 绔欑偣鏍煎紡閿欒锛岃烦杩囧彂閫侊紝涓嶆竻绌虹珯鐐�
- log.warn("浠诲姟ID锛歿}鐨勭洰鏍囩珯鐐箋}鏍煎紡閿欒锛岃烦杩囧彂閫侊紝淇濈暀绔欑偣鍒嗛厤", task.getId(), staNo);
+ // log.warn("浠诲姟ID锛歿}鐨勭洰鏍囩珯鐐箋}鏍煎紡閿欒锛岃烦杩囧彂閫侊紝淇濈暀绔欑偣鍒嗛厤", task.getId(), staNo);
continue;
}
} else {
@@ -155,8 +155,8 @@
);
if (!transportingTasks.isEmpty()) {
- log.info("绔欑偣{}鏈墈}涓鍦ㄦ惉杩愮殑{}AGV浠诲姟锛岃烦杩囧綋鍓嶄换鍔D锛歿}",
- staNo, transportingTasks.size(), taskType, task.getId());
+ // log.info("绔欑偣{}鏈墈}涓鍦ㄦ惉杩愮殑{}AGV浠诲姟锛岃烦杩囧綋鍓嶄换鍔D锛歿}",
+ // staNo, transportingTasks.size(), taskType, task.getId());
continue;
}
}
@@ -193,8 +193,8 @@
// 濡傛灉閲嶈瘯娆℃暟宸茶揪鍒版渶澶у�硷紝璺宠繃鏈鍙戦��
if (retryEnabled && currentRetryCount >= maxRetryCount) {
- log.warn("{}鍛煎彨agv鎼繍 - 浠诲姟ID锛歿}宸茶揪鍒版渶澶ч噸璇曟鏁帮紙{}锛夛紝鍋滄閲嶈瘯",
- namespace, task.getId(), maxRetryCount);
+ // log.warn("{}鍛煎彨agv鎼繍 - 浠诲姟ID锛歿}宸茶揪鍒版渶澶ч噸璇曟鏁帮紙{}锛夛紝鍋滄閲嶈瘯",
+ // namespace, task.getId(), maxRetryCount);
// 璁板綍鏈�缁堝け璐ヤ俊鎭�
task.setErrorTime(new Date());
task.setErrorMemo(String.format("AGV鍛煎彨澶辫触锛屽凡杈惧埌鏈�澶ч噸璇曟鏁帮紙%d娆★級", maxRetryCount));
@@ -203,12 +203,12 @@
}
// 鎵撳嵃璇锋眰淇℃伅锛堝寘鍚噸璇曟鏁帮級
- if (currentRetryCount > 0) {
- log.info("{}鍛煎彨agv鎼繍锛堢{}娆¢噸璇曪級 - 璇锋眰鍦板潃锛歿}", namespace, currentRetryCount + 1, url);
- } else {
- log.info("{}鍛煎彨agv鎼繍 - 璇锋眰鍦板潃锛歿}", namespace, url);
- }
- log.info("{}鍛煎彨agv鎼繍 - 璇锋眰鍙傛暟锛歿}", namespace, body);
+ // if (currentRetryCount > 0) {
+ // log.info("{}鍛煎彨agv鎼繍锛堢{}娆¢噸璇曪級 - 璇锋眰鍦板潃锛歿}", namespace, currentRetryCount + 1, url);
+ // } else {
+ // log.info("{}鍛煎彨agv鎼繍 - 璇锋眰鍦板潃锛歿}", namespace, url);
+ // }
+ // log.info("{}鍛煎彨agv鎼繍 - 璇锋眰鍙傛暟锛歿}", namespace, body);
try {
// 浣跨敤浠欏伐M4鎺ュ彛
@@ -219,12 +219,12 @@
.build()
.doPost();
// 鎵撳嵃杩斿洖鍙傛暟
- log.info("{}鍛煎彨agv鎼繍 - 杩斿洖鍙傛暟锛歿}", namespace, response);
+ // log.info("{}鍛煎彨agv鎼繍 - 杩斿洖鍙傛暟锛歿}", namespace, response);
// 妫�鏌ュ搷搴旀槸鍚︿负绌�
if (response == null || response.trim().isEmpty()) {
String errorMsg = "AGV鎺ュ彛杩斿洖涓虹┖";
- log.error("{}鍛煎彨agv鎼繍澶辫触 - 浠诲姟ID锛歿}锛寋}", namespace, task.getId(), errorMsg);
+ // log.error("{}鍛煎彨agv鎼繍澶辫触 - 浠诲姟ID锛歿}锛寋}", namespace, task.getId(), errorMsg);
handleCallFailure(task, namespace, errorMsg, retryEnabled, maxRetryCount, currentRetryCount);
continue;
}
@@ -232,7 +232,7 @@
JSONObject jsonObject = JSON.parseObject(response);
if (jsonObject == null) {
String errorMsg = "鍝嶅簲JSON瑙f瀽澶辫触锛屽搷搴斿唴瀹癸細" + response;
- log.error("{}鍛煎彨agv鎼繍澶辫触 - 浠诲姟ID锛歿}锛寋}", namespace, task.getId(), errorMsg);
+ // log.error("{}鍛煎彨agv鎼繍澶辫触 - 浠诲姟ID锛歿}锛寋}", namespace, task.getId(), errorMsg);
handleCallFailure(task, namespace, errorMsg, retryEnabled, maxRetryCount, currentRetryCount);
continue;
}
@@ -246,17 +246,17 @@
task.setErrorTime(null);
task.setErrorMemo(null);
taskService.updateById(task);
- log.info("{}鍛煎彨agv鎼繍鎴愬姛 - 浠诲姟ID锛歿}", namespace, task.getId());
+ // log.info("{}鍛煎彨agv鎼繍鎴愬姛 - 浠诲姟ID锛歿}", namespace, task.getId());
} else {
String message = jsonObject.getString("message");
String errorMsg = String.format("閿欒鐮侊細%s锛岄敊璇俊鎭細%s", code, message);
- log.error("{}鍛煎彨agv鎼繍澶辫触 - 浠诲姟ID锛歿}锛寋}", namespace, task.getId(), errorMsg);
+ // log.error("{}鍛煎彨agv鎼繍澶辫触 - 浠诲姟ID锛歿}锛寋}", namespace, task.getId(), errorMsg);
handleCallFailure(task, namespace, errorMsg, retryEnabled, maxRetryCount, currentRetryCount);
}
} catch (Exception e) {
String errorMsg = "寮傚父淇℃伅锛�" + e.getMessage();
- log.error("{}鍛煎彨agv鎼繍寮傚父 - 浠诲姟ID锛歿}锛岃姹傚湴鍧�锛歿}锛岃姹傚弬鏁帮細{}锛寋}",
- namespace, task.getId(), url, body, errorMsg, e);
+ // log.error("{}鍛煎彨agv鎼繍寮傚父 - 浠诲姟ID锛歿}锛岃姹傚湴鍧�锛歿}锛岃姹傚弬鏁帮細{}锛寋}",
+ // namespace, task.getId(), url, body, errorMsg, e);
handleCallFailure(task, namespace, errorMsg, retryEnabled, maxRetryCount, currentRetryCount);
} finally {
try {
@@ -271,7 +271,7 @@
success
);
} catch (Exception e) {
- log.error(namespace + "鍛煎彨agv淇濆瓨鎺ュ彛鏃ュ織寮傚父:", e);
+ // log.error(namespace + "鍛煎彨agv淇濆瓨鎺ュ彛鏃ュ織寮傚父:", e);
}
}
}
@@ -295,8 +295,8 @@
task.setErrorTime(new Date());
task.setErrorMemo(String.format("AGV鍛煎彨澶辫触锛堢%d娆¢噸璇曪級锛�%s", newRetryCount, errorMsg));
taskService.updateById(task);
- log.info("{}鍛煎彨agv鎼繍澶辫触 - 浠诲姟ID锛歿}锛屽凡閲嶈瘯{}娆★紝灏嗗湪涓嬫瀹氭椂浠诲姟鏃剁户缁噸璇曪紙鏈�澶歿}娆★級",
- namespace, task.getId(), newRetryCount, maxRetryCount);
+ // log.info("{}鍛煎彨agv鎼繍澶辫触 - 浠诲姟ID锛歿}锛屽凡閲嶈瘯{}娆★紝灏嗗湪涓嬫瀹氭椂浠诲姟鏃剁户缁噸璇曪紙鏈�澶歿}娆★級",
+ // namespace, task.getId(), newRetryCount, maxRetryCount);
} else {
// 涓嶅惎鐢ㄩ噸璇曟垨宸茶揪鍒版渶澶ч噸璇曟鏁帮紝鍋滄閲嶈瘯
task.setErrorTime(new Date());
@@ -306,8 +306,8 @@
task.setErrorMemo(String.format("AGV鍛煎彨澶辫触锛堥噸璇曟湭鍚敤锛夛細%s", errorMsg));
}
taskService.updateById(task);
- log.warn("{}鍛煎彨agv鎼繍澶辫触 - 浠诲姟ID锛歿}锛屽仠姝㈤噸璇曘�傞敊璇俊鎭細{}",
- namespace, task.getId(), errorMsg);
+ // log.warn("{}鍛煎彨agv鎼繍澶辫触 - 浠诲姟ID锛歿}锛屽仠姝㈤噸璇曘�傞敊璇俊鎭細{}",
+ // namespace, task.getId(), errorMsg);
}
}
@@ -390,7 +390,7 @@
fromBin = task.getSourceStaNo();
}
if (fromBin == null || fromBin.isEmpty() || "0".equals(fromBin)) {
- log.warn("浠诲姟{}鐨勬簮搴撲綅鍜屾簮绔欑偣閮戒负绌猴紝浣跨敤榛樿鍊�", task.getId());
+ // log.warn("浠诲姟{}鐨勬簮搴撲綅鍜屾簮绔欑偣閮戒负绌猴紝浣跨敤榛樿鍊�", task.getId());
fromBin = "0";
}
object.put("fromBin", fromBin);
@@ -449,12 +449,12 @@
// 榛樿浣跨敤涓滀晶
targetStations = agvProperties.getEastStations();
groupKey = "east";
- log.warn("浠诲姟ID锛歿}鐨勬満鍣ㄤ汉缁剓}鏈瘑鍒紝浣跨敤榛樿涓滀晶绔欑偣", task.getId(), robotGroup);
+ // log.warn("浠诲姟ID锛歿}鐨勬満鍣ㄤ汉缁剓}鏈瘑鍒紝浣跨敤榛樿涓滀晶绔欑偣", task.getId(), robotGroup);
}
if (targetStations.isEmpty()) {
String errorMsg = "娌℃湁鍙敤鐨勭洰鏍囩珯鐐归厤缃�";
- log.warn("浠诲姟ID锛歿}", errorMsg, task.getId());
+ // log.warn("浠诲姟ID锛歿}", errorMsg, task.getId());
return errorMsg;
}
@@ -476,7 +476,7 @@
if (sites.isEmpty()) {
String errorMsg = "娌℃湁鑳藉叆绔欑偣";
- log.warn("浠诲姟ID锛歿}", errorMsg, task.getId());
+ // log.warn("浠诲姟ID锛歿}", errorMsg, task.getId());
return errorMsg;
}
@@ -492,7 +492,7 @@
if (devListWithConfig.isEmpty()) {
// 绔欑偣閰嶇疆涓嶅厑璁稿叆搴擄紙canining != "Y"锛夛紝鏆備笉鍒嗛厤锛岀瓑寰呴厤缃紑閫氾紙鍙湪瀹氭椂浠诲姟涓褰曟棩蹇楋級
- log.warn("浠诲姟ID锛歿}娌℃湁鍙叆绔欑偣锛堢珯鐐规湭寮�閫氬彲鍏ュ厑璁革細canining='Y'锛夛紝鏆備笉鍒嗛厤绔欑偣锛岀瓑寰呴厤缃紑閫�", task.getId());
+ // log.warn("浠诲姟ID锛歿}娌℃湁鍙叆绔欑偣锛堢珯鐐规湭寮�閫氬彲鍏ュ厑璁革細canining='Y'锛夛紝鏆備笉鍒嗛厤绔欑偣锛岀瓑寰呴厤缃紑閫�", task.getId());
return null; // 杩斿洖null锛岃〃绀烘殏涓嶅垎閰嶏紝绛夊緟閰嶇疆寮�閫�
}
@@ -503,7 +503,7 @@
List<Integer> canInSites = basDevpMapper.getCanInSites(configuredSites);
if (canInSites.isEmpty()) {
// 鎵�鏈夊凡閰嶇疆鍙叆鐨勭珯鐐归兘鏈夊嚭搴撲换鍔★紝鏆備笉鍒嗛厤锛岀瓑寰呬笅娆″畾鏃朵换鍔″啀灏濊瘯锛堝彧鍦ㄥ畾鏃朵换鍔′腑璁板綍鏃ュ織锛�
- log.warn("浠诲姟ID锛歿}娌℃湁鍙叆绔欑偣锛堣绛夊緟鍑哄簱瀹屾垚锛夛紝鏆備笉鍒嗛厤绔欑偣锛岀瓑寰呬笅娆″畾鏃朵换鍔″啀灏濊瘯", task.getId());
+ // log.warn("浠诲姟ID锛歿}娌℃湁鍙叆绔欑偣锛堣绛夊緟鍑哄簱瀹屾垚锛夛紝鏆備笉鍒嗛厤绔欑偣锛岀瓑寰呬笅娆″畾鏃朵换鍔″啀灏濊瘯", task.getId());
return null; // 杩斿洖null锛岃〃绀烘殏涓嶅垎閰嶏紝绛夊緟涓嬫瀹氭椂浠诲姟鍐嶅皾璇�
}
@@ -520,7 +520,7 @@
if (devList.isEmpty()) {
// 鐞嗚涓婁笉搴旇鍒拌繖閲岋紝鍥犱负鍓嶉潰宸茬粡妫�鏌ヨ繃浜嗭紝浣嗕负浜嗗畨鍏ㄨ捣瑙佽繕鏄繚鐣�
String errorMsg = "娌℃湁鍙叆绔欑偣锛坕n_enable='Y'涓攃anining='Y'锛�";
- log.warn("浠诲姟ID锛歿}", errorMsg, task.getId());
+ // log.warn("浠诲姟ID锛歿}", errorMsg, task.getId());
return errorMsg;
}
@@ -599,15 +599,15 @@
isTransporting = !transportingTasks.isEmpty();
if (isTransporting) {
- log.debug("绔欑偣{}鏈墈}涓鍦ㄦ惉杩愮殑{}AGV浠诲姟锛屾鏌ヤ笅涓�涓珯鐐�",
- staNo, transportingTasks.size(), taskTypeName);
+ // log.debug("绔欑偣{}鏈墈}涓鍦ㄦ惉杩愮殑{}AGV浠诲姟锛屾鏌ヤ笅涓�涓珯鐐�",
+ // staNo, transportingTasks.size(), taskTypeName);
continue; // 璇ョ珯鐐规鍦ㄦ惉杩愶紝妫�鏌ヤ笅涓�涓珯鐐�
}
}
// 鎵惧埌绗竴涓┖闂茬珯鐐癸紝鍒嗛厤
selectedSite = dev;
- log.info("浠诲姟ID锛歿}鎸夎鍒欏簲鍒嗛厤鍒扮珯鐐箋}锛岃绔欑偣绌洪棽锛屽垎閰嶆垚鍔�", task.getId(), staNo);
+ // log.info("浠诲姟ID锛歿}鎸夎鍒欏簲鍒嗛厤鍒扮珯鐐箋}锛岃绔欑偣绌洪棽锛屽垎閰嶆垚鍔�", task.getId(), staNo);
break;
}
@@ -623,7 +623,7 @@
// 妫�鏌ョ珯鐐规槸鍚︽湁鏁堬紙涓嶈兘涓�0鎴杗ull锛�
if (endSite == null || endSite == 0) {
String errorMsg = String.format("鍒嗛厤鐨勭珯鐐规棤鏁堬紙dev_no=%s锛�", endSite);
- log.error("浠诲姟ID锛歿}锛寋}", task.getId(), errorMsg);
+ // log.error("浠诲姟ID锛歿}锛寋}", task.getId(), errorMsg);
return errorMsg;
}
@@ -634,7 +634,7 @@
task.setStaNo(String.valueOf(endSite));
taskService.updateById(task);
- log.info("浠诲姟ID锛歿}宸插垎閰嶇珯鐐癸細{}", task.getId(), endSite);
+ // log.info("浠诲姟ID锛歿}宸插垎閰嶇珯鐐癸細{}", task.getId(), endSite);
return null; // 鍒嗛厤鎴愬姛锛岃繑鍥瀗ull
}
--
Gitblit v1.9.1