From 14a6067ac871ed3c0d73ee1d1939db7a7aefe13a Mon Sep 17 00:00:00 2001
From: Junjie <xjj@123>
Date: 星期五, 10 五月 2024 08:43:28 +0800
Subject: [PATCH] #
---
zy-asrs-wcs/src/main/java/com/zy/asrs/wcs/core/action/ShuttleAction.java | 60 ++++++++++++++++++++++++++++++------------------------------
1 files changed, 30 insertions(+), 30 deletions(-)
diff --git a/zy-asrs-wcs/src/main/java/com/zy/asrs/wcs/core/action/ShuttleAction.java b/zy-asrs-wcs/src/main/java/com/zy/asrs/wcs/core/action/ShuttleAction.java
index 6c02d01..9ca36f9 100644
--- a/zy-asrs-wcs/src/main/java/com/zy/asrs/wcs/core/action/ShuttleAction.java
+++ b/zy-asrs-wcs/src/main/java/com/zy/asrs/wcs/core/action/ShuttleAction.java
@@ -250,7 +250,7 @@
if (shuttleThread == null) {
return;
}
- ShuttleProtocol shuttleProtocol = shuttleThread.getStatus();
+ ShuttleProtocol shuttleProtocol = shuttleThread.getStatus(false);
if (shuttleProtocol == null) {
return;
}
@@ -280,35 +280,6 @@
}
if (shuttleProtocol.getMoveType() == 0) {//璺戣建閬�
- ArrayList<String> locs = new ArrayList<>();
- for (int i = shuttleProtocol.getXCurrent(); i <= shuttleProtocol.getXTarget(); i++) {
- String locNo = Utils.getLocNo(i, shuttleProtocol.getYCurrent(), lev);
- locs.add(locNo);
- }
-
- List<Loc> locList = locService.list(new LambdaQueryWrapper<Loc>()
- .in(Loc::getLocNo, locs));
- if (locList.isEmpty()) {
- //绌哄簱浣�
- shuttleProtocol.setYCurrent(shuttleProtocol.getYCurrent() + 1);
- return;
- }
-
- Loc start = locList.get(0);
- Loc target = locList.get(locList.size() - 1);
- //鍒ゆ柇灏忚溅鏄惁鍦ㄨ捣鐐逛綅缃�
- if (!shuttleProtocol.getCurrentLocNo().equals(start.getLocNo())) {//涓嶅湪璧风偣浣嶇疆锛岃皟搴﹀幓璧风偣浣嶇疆
- shuttleDispatcher.generateMoveTask(device, start.getLocNo());
- }else {
- //鍦ㄨ捣鐐逛綅缃紝璋冨害鍘荤洰鏍囦綅缃�
- if (shuttleProtocol.getCurrentLocNo().equals(target.getLocNo())) {
- shuttleProtocol.setYCurrent(shuttleProtocol.getYCurrent() + 1);//灏忚溅鍜岀洰鏍囦綅缃竴鑷达紝璺宠繃
- }else {
- shuttleDispatcher.generateMoveTask(device, start.getLocNo());
- shuttleProtocol.setYCurrent(shuttleProtocol.getYCurrent() + 1);
- }
- }
- } else if (shuttleProtocol.getMoveType() == 1) {//璺戝簱浣�
Integer xCurrent = shuttleProtocol.getXCurrent();
if (xCurrent > shuttleProtocol.getXTarget()) {//褰揦鍊煎ぇ浜嶺鐩爣鍊硷紝杩涜褰掗浂涓擸鏂瑰悜+1
shuttleProtocol.setXCurrent(shuttleProtocol.getXStart());
@@ -338,6 +309,35 @@
shuttleDispatcher.generateMoveTask(device, target.getLocNo());
shuttleProtocol.setXCurrent(shuttleProtocol.getXCurrent() + 1);
}
+ } else if (shuttleProtocol.getMoveType() == 1) {//璺戝簱浣�
+ ArrayList<String> locs = new ArrayList<>();
+ for (int i = shuttleProtocol.getXCurrent(); i <= shuttleProtocol.getXTarget(); i++) {
+ String locNo = Utils.getLocNo(i, shuttleProtocol.getYCurrent(), lev);
+ locs.add(locNo);
+ }
+
+ List<Loc> locList = locService.list(new LambdaQueryWrapper<Loc>()
+ .in(Loc::getLocNo, locs));
+ if (locList.isEmpty()) {
+ //绌哄簱浣�
+ shuttleProtocol.setYCurrent(shuttleProtocol.getYCurrent() + 1);
+ return;
+ }
+
+ Loc start = locList.get(0);
+ Loc target = locList.get(locList.size() - 1);
+ //鍒ゆ柇灏忚溅鏄惁鍦ㄨ捣鐐逛綅缃�
+ if (!shuttleProtocol.getCurrentLocNo().equals(start.getLocNo())) {//涓嶅湪璧风偣浣嶇疆锛岃皟搴﹀幓璧风偣浣嶇疆
+ shuttleDispatcher.generateMoveTask(device, start.getLocNo());
+ }else {
+ //鍦ㄨ捣鐐逛綅缃紝璋冨害鍘荤洰鏍囦綅缃�
+ if (shuttleProtocol.getCurrentLocNo().equals(target.getLocNo())) {
+ shuttleProtocol.setYCurrent(shuttleProtocol.getYCurrent() + 1);//灏忚溅鍜岀洰鏍囦綅缃竴鑷达紝璺宠繃
+ }else {
+ shuttleDispatcher.generateMoveTask(device, start.getLocNo());
+ shuttleProtocol.setYCurrent(shuttleProtocol.getYCurrent() + 1);
+ }
+ }
} else if (shuttleProtocol.getMoveType() == 2) {//姣嶈建閬撳惊鐜窇
Integer xCurrent = shuttleProtocol.getXCurrent();
Integer yCurrent = shuttleProtocol.getYCurrent();
--
Gitblit v1.9.1