From 1f62eee8e144988e42f3d0ba2e926d056c01f929 Mon Sep 17 00:00:00 2001
From: LSH
Date: 星期三, 28 六月 2023 10:26:45 +0800
Subject: [PATCH] #

---
 src/main/java/com/zy/asrs/utils/RouteUtils.java             |   14 ++++++++------
 src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java |    3 +++
 src/main/java/com/zy/asrs/mapper/WrkMastMapper.java         |   19 +++++++++++++++++--
 src/main/resources/mapper/WrkMastMapper.xml                 |   20 ++++++++++++++++++++
 4 files changed, 48 insertions(+), 8 deletions(-)

diff --git a/src/main/java/com/zy/asrs/mapper/WrkMastMapper.java b/src/main/java/com/zy/asrs/mapper/WrkMastMapper.java
index 1517399..6237eef 100644
--- a/src/main/java/com/zy/asrs/mapper/WrkMastMapper.java
+++ b/src/main/java/com/zy/asrs/mapper/WrkMastMapper.java
@@ -177,18 +177,33 @@
     /*================================================RGV浠诲姟缁戝畾鐩稿叧 ==================================================*/
 
     /**
-     * 鏌ユ壘鏄惁瀛樺湪RGV姝e湪鍑哄簱宸ヤ綔涓殑浠诲姟
+     * 鏌ユ壘鏄惁瀛樺湪鍏ュ簱宸ヤ綔涓鍦ㄨ蛋鍚慠GV鐨勪换鍔�
      * @param wrkNo
      * @return
      */
     WrkMast selectRgvInSteWrkNo(@Param("wrkNo")Integer wrkNo);
+
     /**
-     * 鏌ユ壘鏄惁瀛樺湪RGV姝e湪鍑哄簱宸ヤ綔涓殑浠诲姟
+     * 鏌ユ壘鏄惁瀛樺湪鍑哄簱宸ヤ綔涓鍦ㄨ蛋鍚慠GV鐨勪换鍔�
      * @param wrkNo
      * @return
      */
     WrkMast selectRgvOutSteWrkNo(@Param("wrkNo")Integer wrkNo);
 
+    /**
+     * 鏌ユ壘鏄惁瀛樺湪鍏ュ簱宸ヤ綔涓瓑寰匯GV鎼繍鐨勪换鍔�
+     * @param rgvNo
+     * @return
+     */
+    WrkMast selectRgvInSteNo(@Param("rgvNo")Integer rgvNo);
+
+    /**
+     * 鏌ユ壘鏄惁瀛樺湪鍑哄簱宸ヤ綔涓瓑寰匯GV鎼繍鐨勪换鍔�
+     * @param rgvNo
+     * @return
+     */
+    WrkMast selectRgvOutSteNo(@Param("rgvNo")Integer rgvNo);
+
 
     /*================================================RGV浠诲姟缁戝畾鐩稿叧 ==================================================*/
 }
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 cd92354..a0aefbe 100644
--- a/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java
+++ b/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java
@@ -1332,6 +1332,9 @@
      * 鍏ュ簱  ===>>  RGV鍏ュ簱绔欏埌绔�
      */
     public synchronized void rgvInStn(RgvSlave slave, RgvProtocol rgvProtocol) {
+        WrkMast wrkMast = wrkMastMapper.selectRgvInSteNo(slave.getId());
+
+
         //鏌ユ壘宸ヤ綔鐘舵�佷负2锛堣澶囦笂璧帮級,涓擱GV鍏ュ簱鎺ラ┏绔欑鍚堢殑鐨勫叆搴撳伐浣滄。锛屾彁鍙栧嚭鏈�澶�2绗�
         List<WrkMast> wrkMastTask = getRgvInTask(slave);
         if(wrkMastTask.size() <= 0){
diff --git a/src/main/java/com/zy/asrs/utils/RouteUtils.java b/src/main/java/com/zy/asrs/utils/RouteUtils.java
index 22f35f5..50713ad 100644
--- a/src/main/java/com/zy/asrs/utils/RouteUtils.java
+++ b/src/main/java/com/zy/asrs/utils/RouteUtils.java
@@ -39,7 +39,8 @@
     }
 
     // 鑾峰彇褰撳墠灏忚溅鏈璧扮殑璺嚎
-    public static List<Integer> getRoute(boolean sign,Integer drop){
+    public static List<Integer> getRoute(Integer groupStart,Integer groupEnd){
+        boolean sign = groupStart < groupEnd;
         List<Integer> result = new ArrayList<>();
         List<Integer> groupRoute = new ArrayList<>();
         if (sign){
@@ -47,11 +48,15 @@
         }else {
             groupRoute = TRACK_POSITION_REVERSE_SEQUENCE;
         }
-        if (groupRoute.contains(drop)) {
+        if (groupRoute.contains(groupStart) && groupRoute.contains(groupEnd)) {
             sign = false;
             for (Integer route : groupRoute) {
-                if (route == drop){
+                if (route.equals(groupStart)){
                     sign=true;
+                }
+                if (route.equals(groupEnd)){
+                    result.add(route);
+                    break;
                 }
                 if (sign){
                     result.add(route);
@@ -60,9 +65,6 @@
         }else {
             return null;
         }
-
-
-
         return result;
     }
     // 澶栦晶鏂瑰悜鐨勮揣浣�  浼樺厛鍏ュ簱鏂瑰悜/浼樺厛鍑哄簱鏂瑰悜 ===>> 鍙嶄箣
diff --git a/src/main/resources/mapper/WrkMastMapper.xml b/src/main/resources/mapper/WrkMastMapper.xml
index fd55f58..bf37b5f 100644
--- a/src/main/resources/mapper/WrkMastMapper.xml
+++ b/src/main/resources/mapper/WrkMastMapper.xml
@@ -248,6 +248,26 @@
         select top 1 * from dbo.asr_wrk_mast where 1=1 and wrk_sts =24 and wrk_no=#{wrkNo} and rgv_no is null
     </select>
 
+    <select id="selectRgvInSteNo" resultMap="BaseResultMap">
+        select top 1 * from dbo.asr_wrk_mast where 1=1 and wrk_sts =12 and rgv_no=#{rgvNo}
+        <if test="rgvNo == 1">
+            order by rgv_dsta_no
+        </if>
+        <if test="rgvNo == 2">
+            order by rgv_dsta_no desc
+        </if>
+    </select>
+
+    <select id="selectRgvOutSteNo" resultMap="BaseResultMap">
+        select top 1 * from dbo.asr_wrk_mast where 1=1 and wrk_sts =24 and rgv_no=#{rgvNo}
+        <if test="rgvNo == 1">
+            order by rgv_dsta_no
+        </if>
+        <if test="rgvNo == 2">
+            order by rgv_dsta_no desc
+        </if>
+    </select>
+
     <!-- ==============================================RGV浠诲姟缁戝畾鐩稿叧 ============================================== -->
 
 </mapper>

--
Gitblit v1.9.1