From 8ad012e177451a736391e478c955949265af08b2 Mon Sep 17 00:00:00 2001
From: Junjie <xjj@123>
Date: 星期二, 14 一月 2025 10:56:02 +0800
Subject: [PATCH] #
---
src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java | 144 +++++++++++++++++++++--------------------------
1 files changed, 64 insertions(+), 80 deletions(-)
diff --git a/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java b/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java
index 8719b84..1514ae1 100644
--- a/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java
+++ b/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java
@@ -839,45 +839,46 @@
//灏嗕换鍔℃。鏍囪涓哄畬鎴�
WrkMast wrkMast = wrkMastService.selectByWorkNo(shuttleProtocol.getTaskNo());
if (wrkMast != null) {
- switch (wrkMast.getWrkSts().intValue()) {
-// case 5://5.灏忚溅鎼繍涓� ==> 9.鍏ュ簱瀹屾垚
-// wrkMast.setWrkSts(9L);
-// shuttleProtocol.setTaskNo(0);
-// if (shuttleProtocol.getToken().equals(wrkMast.getWrkNo())) {
-// //閲婃斁灏忚溅浠ょ墝
-// shuttleProtocol.setToken(0);
-// }
-// break;
-// case 22://22.灏忚溅鎼繍涓� ==> 23.灏忚溅鎼繍瀹屾垚
-// wrkMast.setWrkSts(23L);
-// shuttleProtocol.setTaskNo(0);
-// if (shuttleProtocol.getToken().equals(wrkMast.getWrkNo())) {
-// //閲婃斁灏忚溅浠ょ墝
-// shuttleProtocol.setToken(0);
-// }
-// break;
- case 302://302.灏忚溅绉诲姩鑷崇珯鐐� ==> 303.灏忚溅绉诲姩鑷崇珯鐐瑰畬鎴�
- wrkMast.setWrkSts(WrkStsType.MOVE_SITE_COMPLETE.sts);
- break;
- case 110://310.灏忚溅绉诲姩涓� ==> 311.灏忚溅绉诲姩瀹屾垚
- wrkMast.setWrkSts(WrkStsType.COMPLETE_MOVE.sts);
- shuttleThread.setTaskNo(0);
- break;
- default:
+ if (wrkMast.getWrkSts() == WrkStsType.MOVE_SITE.sts) {
+ //302.灏忚溅绉诲姩鑷崇珯鐐� ==> 303.灏忚溅绉诲姩鑷崇珯鐐瑰畬鎴�
+ wrkMast.setWrkSts(WrkStsType.MOVE_SITE_COMPLETE.sts);
+ } else if (wrkMast.getWrkSts() == WrkStsType.MOVE_SHUTTLE.sts) {
+ //310.灏忚溅绉诲姩涓� ==> 311.灏忚溅绉诲姩瀹屾垚
+ wrkMast.setWrkSts(WrkStsType.COMPLETE_MOVE.sts);
+ shuttleThread.setSyncTaskNo(0);
+ } else if (wrkMast.getWrkSts() == WrkStsType.CHARGE_SHUTTLE_WORKING.sts) {
+ //204.灏忚溅鍏呯數涓� ==> 205.灏忚溅鍏呯數瀹屾垚
+ wrkMast.setWrkSts(WrkStsType.CHARGE_SHUTTLE_COMPLETE.sts);
+ shuttleThread.setSyncTaskNo(0);
}
+// switch (wrkMast.getWrkSts().intValue()) {
+//// case 5://5.灏忚溅鎼繍涓� ==> 9.鍏ュ簱瀹屾垚
+//// wrkMast.setWrkSts(9L);
+//// shuttleProtocol.setTaskNo(0);
+//// if (shuttleProtocol.getToken().equals(wrkMast.getWrkNo())) {
+//// //閲婃斁灏忚溅浠ょ墝
+//// shuttleProtocol.setToken(0);
+//// }
+//// break;
+//// case 22://22.灏忚溅鎼繍涓� ==> 23.灏忚溅鎼繍瀹屾垚
+//// wrkMast.setWrkSts(23L);
+//// shuttleProtocol.setTaskNo(0);
+//// if (shuttleProtocol.getToken().equals(wrkMast.getWrkNo())) {
+//// //閲婃斁灏忚溅浠ょ墝
+//// shuttleProtocol.setToken(0);
+//// }
+//// break;
+// case 302:
+// wrkMast.setWrkSts(WrkStsType.MOVE_SITE_COMPLETE.sts);
+// break;
+// case WrkStsType.MOVE_SHUTTLE.sts:
+// wrkMast.setWrkSts(WrkStsType.COMPLETE_MOVE.sts);
+// shuttleThread.setSyncTaskNo(0);
+// break;
+// default:
+// }
if (wrkMastService.updateById(wrkMast)) {
- if (wrkMast.getWrkSts() == 111) {
- // 淇濆瓨宸ヤ綔涓绘。鍘嗗彶妗�
- if (wrkMastLogMapper.save(wrkMast.getWrkNo()) <= 0) {
- log.info("淇濆瓨宸ヤ綔鍘嗗彶妗workNo={0}]澶辫触", wrkMast.getWrkNo());
- }
- // 鍒犻櫎宸ヤ綔涓绘。
- if (!wrkMastService.deleteById(wrkMast)) {
- log.info("鍒犻櫎宸ヤ綔涓绘。[workNo={0}]澶辫触", wrkMast.getWrkNo());
- }
- }
-
//璁剧疆鍥涘悜绌挎杞︿负绌洪棽鐘舵��
shuttleThread.setProtocolStatus(ShuttleProtocolStatusType.IDLE);
News.info("鍥涘悜绌挎杞﹀凡纭涓斾换鍔″畬鎴愮姸鎬�,澶嶄綅銆傚洓鍚戠┛姊溅鍙�={}", shuttleProtocol.getShuttleNo());
@@ -1844,7 +1845,7 @@
*/
public synchronized void executeShuttleCharge() {
try {
- //鏌ヨ灏忚溅绉诲簱浠诲姟
+ //鏌ヨ灏忚溅鍏呯數浠诲姟
for (ShuttleSlave shuttle : slaveProperties.getShuttle()) {
WrkMast wrkMast = wrkMastService.selectChargeWorking(shuttle.getId());
if(wrkMast == null) {
@@ -2012,12 +2013,6 @@
List<ShuttleCommand> commands = shuttleOperaUtils.getShuttleChargeCommand(assignCommand, shuttleThread, false);
assignCommand.setCommands(commands);//杩愯鍛戒护
- wrkMast.setWrkSts(WrkStsType.CHARGE_SHUTTLE_COMPLETE.sts);
- wrkMast.setModiTime(new Date());
- if (!wrkMastService.updateById(wrkMast)) {
- return false;
- }
-
//涓嬪彂浠诲姟
shuttleAction.assignWork(shuttleProtocol.getShuttleNo(), assignCommand);
return false;
@@ -2037,22 +2032,22 @@
return false;
}
- ShuttleChargeType chargeType = ShuttleChargeType.get(wrkMast.getMk());
+ ShuttleChargeType chargeType = ShuttleChargeType.get(Integer.parseInt(wrkMast.getMk()));
if(chargeType == null) {
return false;
}
- wrkMast.setWrkSts(WrkStsType.CHARGE_SHUTTLE_COMPLETE.sts);
- wrkMast.setModiTime(new Date());
- if (wrkMastService.updateById(wrkMast)) {
- //璋冨害灏忚溅鍘诲緟鏈轰綅
- boolean dispatched = shuttleDispatchUtils.dispatchShuttle(wrkMast.getWrkNo(), chargeType.waitLocNo, wrkMast.getShuttleNo());
- if (!dispatched) {
- return false;
- }
+ //璋冨害灏忚溅鍘诲緟鏈轰綅
+ boolean dispatched = shuttleDispatchUtils.dispatchShuttle(wrkMast.getWrkNo(), chargeType.waitLocNo, wrkMast.getShuttleNo());
+ if (!dispatched) {
return false;
}
+ wrkMast.setWrkSts(WrkStsType.COMPLETE_CHARGE.sts);
+ wrkMast.setModiTime(new Date());
+ if (wrkMastService.updateById(wrkMast)) {
+ return false;
+ }
return false;
}
return true;
@@ -2153,23 +2148,23 @@
assignCommand.setCommands(commands);
- //*************灏濊瘯閿佸畾鐩爣绔欒矾寰�***************
- List<NavigateNode> targetNodes = ForkLiftUtils.getLiftStaNodes(wrkMast.getStaNo());
- if (targetNodes == null) {
- return false;//鏈幏鍙栧埌鑺傜偣
- }
- boolean checkPathIsAvailable = navigateUtils.checkPathIsAvailable(targetNodes, shuttleProtocol.getShuttleNo(), Utils.getLev(wrkMast.getLocNo()));
- if (!checkPathIsAvailable) {
- News.info("{}浠诲姟锛寋}灏忚溅锛岀洰鏍囩珯鐐硅矾寰勮鍗犵敤锛岀姝㈡淳鍙�", wrkMast.getWrkNo(), shuttleProtocol.getShuttleNo());
- return false;//妫�娴嬬洰鏍囩珯鐐硅矾寰勬槸鍚︽湭琚崰鐢�
- }
- //灏濊瘯閿佸畾鐩爣绔欒矾寰�
- boolean result2 = navigateMapUtils.writeNavigateNodeToRedisMap(Utils.getLev(wrkMast.getLocNo()), shuttleProtocol.getShuttleNo(), targetNodes, true);//鎵�浣跨敤鐨勮矾寰勮繘琛岄攣瀹氱鐢�
- if (!result2) {
- News.info("{}浠诲姟锛寋}灏忚溅锛岃矾寰勯攣瀹氬け璐ワ紝绂佹娲惧彂", wrkMast.getWrkNo(), shuttleProtocol.getShuttleNo());
- return false;//璺緞閿佸畾澶辫触
- }
- //*************灏濊瘯閿佸畾鐩爣绔欒矾寰�***************
+// //*************灏濊瘯閿佸畾鐩爣绔欒矾寰�***************
+// List<NavigateNode> targetNodes = ForkLiftUtils.getLiftStaNodes(wrkMast.getStaNo());
+// if (targetNodes == null) {
+// return false;//鏈幏鍙栧埌鑺傜偣
+// }
+// boolean checkPathIsAvailable = navigateUtils.checkPathIsAvailable(targetNodes, shuttleProtocol.getShuttleNo(), Utils.getLev(wrkMast.getLocNo()));
+// if (!checkPathIsAvailable) {
+// News.info("{}浠诲姟锛寋}灏忚溅锛岀洰鏍囩珯鐐硅矾寰勮鍗犵敤锛岀姝㈡淳鍙�", wrkMast.getWrkNo(), shuttleProtocol.getShuttleNo());
+// return false;//妫�娴嬬洰鏍囩珯鐐硅矾寰勬槸鍚︽湭琚崰鐢�
+// }
+// //灏濊瘯閿佸畾鐩爣绔欒矾寰�
+// boolean result2 = navigateMapUtils.writeNavigateNodeToRedisMap(Utils.getLev(wrkMast.getLocNo()), shuttleProtocol.getShuttleNo(), targetNodes, true);//鎵�浣跨敤鐨勮矾寰勮繘琛岄攣瀹氱鐢�
+// if (!result2) {
+// News.info("{}浠诲姟锛寋}灏忚溅锛岃矾寰勯攣瀹氬け璐ワ紝绂佹娲惧彂", wrkMast.getWrkNo(), shuttleProtocol.getShuttleNo());
+// return false;//璺緞閿佸畾澶辫触
+// }
+// //*************灏濊瘯閿佸畾鐩爣绔欒矾寰�***************
wrkMast.setWrkSts(WrkStsType.MOVE_SITE.sts);//灏忚溅绉诲姩鍒版彁鍗囨満涓� 301.鐢熸垚灏忚溅绉诲簱浠诲姟 ==> 302.灏忚溅绉诲姩鑷崇珯鐐�
wrkMast.setModiTime(now);
@@ -2283,17 +2278,6 @@
wrkMast.setLiftNo(null);//閲婃斁鎻愬崌鏈�
wrkMast.setModiTime(now);
wrkMastService.updateById(wrkMast);
-
- if (wrkMast.getWrkSts() == WrkStsType.COMPLETE_MOVE.sts) {
- // 淇濆瓨宸ヤ綔涓绘。鍘嗗彶妗�
- if (wrkMastLogMapper.save(wrkMast.getWrkNo()) <= 0) {
- log.info("淇濆瓨宸ヤ綔鍘嗗彶妗workNo={}]澶辫触", wrkMast.getWrkNo());
- }
- // 鍒犻櫎宸ヤ綔涓绘。
- if (!wrkMastService.deleteById(wrkMast)) {
- log.info("鍒犻櫎宸ヤ綔涓绘。[workNo={}]澶辫触", wrkMast.getWrkNo());
- }
- }
return false;
}
--
Gitblit v1.9.1