From 7692db6072ef569b5734d218cb11fa82e80171d1 Mon Sep 17 00:00:00 2001
From: chen.llin <1442464845@qq.comm>
Date: 星期四, 22 一月 2026 17:12:17 +0800
Subject: [PATCH] agv出库逻辑调整
---
src/main/java/com/zy/asrs/task/handler/WorkMastHandler.java | 21 ++++++++++++++-------
1 files changed, 14 insertions(+), 7 deletions(-)
diff --git a/src/main/java/com/zy/asrs/task/handler/WorkMastHandler.java b/src/main/java/com/zy/asrs/task/handler/WorkMastHandler.java
index 0974a79..1726ec5 100644
--- a/src/main/java/com/zy/asrs/task/handler/WorkMastHandler.java
+++ b/src/main/java/com/zy/asrs/task/handler/WorkMastHandler.java
@@ -823,8 +823,9 @@
return;
}
- // 妫�鏌ュ伐浣滄。鏄惁宸插畬鎴愭垨宸茶浆鍘嗗彶妗�
+ // 妫�鏌ュ伐浣滄。鏄惁宸插畬鎴愭垨宸茶浆鍘嗗彶妗o紝骞惰幏鍙栧伐浣滄。鐨勭洰鏍囩珯浣滀负AGV鐨勬簮搴撲綅
boolean workCompleted = false;
+ String wrkMastStaNo = null; // 宸ヤ綔妗g殑鐩爣绔欙紝灏嗕綔涓篈GV鐨勬簮搴撲綅
if (outTask.getWrkNo() != null) {
// 妫�鏌ュ伐浣滄。鏄惁瀛樺湪涓斿凡瀹屾垚
WrkMast wrkMast = wrkMastService.selectOne(
@@ -836,7 +837,9 @@
// 鍑哄簱浠诲姟瀹屾垚鐘舵�侊細14锛堝凡鍑哄簱鏈‘璁わ級鎴�15锛堝嚭搴撴洿鏂板畬鎴愶級
if (wrkSts != null && (wrkSts == 14L || wrkSts == 15L)) {
workCompleted = true;
- log.debug("宸ヤ綔妗}宸插畬鎴愶紝鐘舵�侊細{}", outTask.getWrkNo(), wrkSts);
+ // 鑾峰彇宸ヤ綔妗g殑鐩爣绔欎綔涓篈GV鐨勬簮搴撲綅
+ wrkMastStaNo = wrkMast.getStaNo();
+ log.debug("宸ヤ綔妗}宸插畬鎴愶紝鐘舵�侊細{}锛岀洰鏍囩珯锛歿}", outTask.getWrkNo(), wrkSts, wrkMastStaNo);
}
} else {
// 濡傛灉宸ヤ綔妗d笉瀛樺湪锛屾鏌ュ巻鍙叉。
@@ -848,7 +851,9 @@
// 鍑哄簱浠诲姟鍘嗗彶妗e畬鎴愮姸鎬侊細15锛堝嚭搴撴洿鏂板畬鎴愶級
if (logWrkSts == 15L) {
workCompleted = true;
- log.debug("宸ヤ綔妗}宸茶浆鍘嗗彶妗e苟瀹岀粨锛屽巻鍙叉。鐘舵�侊細{}", outTask.getWrkNo(), logWrkSts);
+ // 浠庡巻鍙叉。鑾峰彇鐩爣绔欎綔涓篈GV鐨勬簮搴撲綅
+ wrkMastStaNo = wrkMastLog.getStaNo() != null ? String.valueOf(wrkMastLog.getStaNo()) : null;
+ log.debug("宸ヤ綔妗}宸茶浆鍘嗗彶妗e苟瀹岀粨锛屽巻鍙叉。鐘舵�侊細{}锛岀洰鏍囩珯锛歿}", outTask.getWrkNo(), logWrkSts, wrkMastStaNo);
}
}
}
@@ -891,6 +896,8 @@
// 鍒涘缓绌烘墭鍑哄簱/婊℃墭鍑哄簱浠诲姟
Task cacheTask = new Task();
Date now = new Date();
+ // 鍑哄簱宸ヤ綔妗e畬鎴愭椂锛屽伐浣滄。鐨勭洰鏍囩珯灏辨槸AGV鐨勬簮搴撲綅
+ // AGV鐨勭洰鏍囩珯鏄痑sr_loc_cache閲岄潰WA寮�澶寸殑搴撲綅
cacheTask.setWrkNo(workNo)
.setIoTime(now)
.setWrkSts(7L) // 宸ヤ綔鐘舵�侊細7.寰呭懠鍙獳GV
@@ -903,8 +910,8 @@
.setFullPlt(isEmptyPallet ? "N" : "Y") // 婊℃澘锛氱┖鎵�=N锛屾弧鎵�=Y
.setPicking("N")
.setExitMk("N")
- .setSourceLocNo(null) // 鍑哄簱浠诲姟涓嶉渶瑕佹簮搴撲綅
- .setLocNo(cacheLoc.getLocNo()) // 鐩爣搴撲綅锛堢紦瀛樺簱浣嶏級
+ .setSourceLocNo(wrkMastStaNo) // AGV鐨勬簮搴撲綅锛氬嚭搴撳伐浣滄。鐨勭洰鏍囩珯
+ .setLocNo(cacheLoc.getLocNo()) // AGV鐨勭洰鏍囧簱浣嶏細asr_loc_cache閲岄潰WA寮�澶寸殑搴撲綅
.setEmptyMk(isEmptyPallet ? "Y" : "N") // 绌烘澘鏍囪
.setBarcode(outTask.getBarcode()) // 鎵樼洏鐮�
.setLinkMis("N")
@@ -927,8 +934,8 @@
return;
}
- log.info("鎴愬姛鐢熸垚{}浠诲姟锛屼换鍔D锛歿}锛屽伐浣滃彿锛歿}锛屾簮绔欑偣锛歿}锛岀洰鏍囩珯鐐癸細{}锛岀紦瀛樺簱浣嶏細{}",
- isEmptyPallet ? "绌烘墭鍑哄簱" : "婊℃墭鍑哄簱", cacheTask.getId(), workNo, outboundStaNo, cacheStaNo, cacheLoc.getLocNo());
+ log.info("鎴愬姛鐢熸垚{}浠诲姟锛屼换鍔D锛歿}锛屽伐浣滃彿锛歿}锛屾簮绔欑偣锛歿}锛岀洰鏍囩珯鐐癸細{}锛屾簮搴撲綅锛堝伐浣滄。鐩爣绔欙級锛歿}锛岀洰鏍囧簱浣嶏紙WA缂撳瓨搴撲綅锛夛細{}",
+ isEmptyPallet ? "绌烘墭鍑哄簱" : "婊℃墭鍑哄簱", cacheTask.getId(), workNo, outboundStaNo, cacheStaNo, wrkMastStaNo, cacheLoc.getLocNo());
}
/**
--
Gitblit v1.9.1