From c4bcb806f606fc5080b40af20562d6837889f496 Mon Sep 17 00:00:00 2001
From: Junjie <fallin.jie@qq.com>
Date: 星期一, 31 七月 2023 16:46:35 +0800
Subject: [PATCH] 穿梭车入库

---
 src/main/java/com/zy/asrs/utils/Utils.java |   23 +++++++++++++++--------
 1 files changed, 15 insertions(+), 8 deletions(-)

diff --git a/src/main/java/com/zy/asrs/utils/Utils.java b/src/main/java/com/zy/asrs/utils/Utils.java
index d862cba..041ec0a 100644
--- a/src/main/java/com/zy/asrs/utils/Utils.java
+++ b/src/main/java/com/zy/asrs/utils/Utils.java
@@ -23,8 +23,10 @@
 import com.zy.core.model.Task;
 import com.zy.core.model.command.ShuttleAssignCommand;
 import com.zy.core.model.command.ShuttleCommand;
+import com.zy.core.model.protocol.NyShuttleProtocol;
 import com.zy.core.model.protocol.ShuttleProtocol;
 import com.zy.core.properties.SlaveProperties;
+import com.zy.core.thread.NyShuttleThread;
 import com.zy.core.thread.ShuttleThread;
 
 import java.text.DecimalFormat;
@@ -420,24 +422,24 @@
             }
 
             //鑾峰彇绌挎杞︽墍鍦ㄨ妭鐐逛綅缃�
-            ShuttleThread shuttleThread = (ShuttleThread) SlaveConnection.get(SlaveType.Shuttle, slave.getId());
+            NyShuttleThread shuttleThread = (NyShuttleThread) SlaveConnection.get(SlaveType.Shuttle, slave.getId());
             if (shuttleThread == null) {
                 continue;
             }
-            ShuttleProtocol shuttleProtocol = shuttleThread.getShuttleProtocol();
+            NyShuttleProtocol shuttleProtocol = shuttleThread.getShuttleProtocol();
             if (shuttleProtocol == null) {
                 continue;
             }
 
-            if (shuttleProtocol.getLocNo() == null) {
+            if (shuttleProtocol.getCurrentLocNo() == null) {
                 continue;
             }
 
-            if (lev != Utils.getLev(shuttleProtocol.getLocNo())) {
+            if (lev != Utils.getLev(shuttleProtocol.getCurrentLocNo())) {
                 continue;//妤煎眰涓嶅悓
             }
 
-            int[] xyPosition = NavigatePositionConvert.positionToXY(shuttleProtocol.getLocNo());//閫氳繃搴撲綅鍙疯幏鍙杧y鍧愭爣
+            int[] xyPosition = NavigatePositionConvert.positionToXY(shuttleProtocol.getCurrentLocNo());//閫氳繃搴撲綅鍙疯幏鍙杧y鍧愭爣
             list.add(xyPosition);
         }
         return list;
@@ -445,7 +447,7 @@
 
     //妫�娴嬬┛姊溅琛岃蛋璺緞锛屾槸鍚﹀瓨鍦ㄥ叾浠栧皬杞︼紝濡傛湁鍏朵粬灏忚溅鍒欒繘琛岃皟绂�
     public static boolean checkShuttlePath(List<NavigateNode> nodes, Integer shuttleId) {
-          boolean flag = false;
+        boolean flag = false;
         int shuttleX = -1;
         int shuttleY = -1;
         int shuttleZ = -1;
@@ -504,6 +506,11 @@
             if (currentShuttleThread == null) {
                 //娌℃壘鍒板皬杞�
                 return false;
+            }
+
+            ShuttleProtocol shuttleProtocol = currentShuttleThread.getShuttleProtocol();
+            if (!shuttleProtocol.isIdle()) {
+                return false;//琚皟搴︾殑灏忚溅澶勪簬宸ヤ綔鐘舵�侊紝绂佹瑙﹀彂閬胯浠诲姟
             }
 
             //鎼滅储涓�鏉℃病鏈夊皬杞︾殑绌哄贩閬擄紝骞惰皟搴﹀皬杞�
@@ -582,7 +589,7 @@
             ShuttleAssignCommand assignCommand = new ShuttleAssignCommand();
             assignCommand.setShuttleNo(shuttleProtocol.getShuttleNo());//鍥涘悜绌挎杞﹀彿
             assignCommand.setTaskNo((short) commonService.getWorkNo(7));//浠诲姟鍙�
-            assignCommand.setTaskMode(ShuttleTaskModeType.MOVE_LOC_NO.id.shortValue());//绉诲姩鍒扮洰鏍囧簱浣�
+            assignCommand.setTaskMode(ShuttleTaskModeType.AVOID.id.shortValue());//閬胯浠诲姟
             assignCommand.setSourceLocNo(startLocNo);//婧愬簱浣�
 
             //鍒嗛厤鐩爣搴撲綅
@@ -596,7 +603,7 @@
                 return null;
             }
 
-            assignCommand.setCommands(commands);
+//            assignCommand.setCommands(commands);
             return assignCommand;
         }
         return null;

--
Gitblit v1.9.1