From c1f81776979d4a7b08d4b28d8b63a073386d1708 Mon Sep 17 00:00:00 2001
From: lsh <lsh@163.com>
Date: 星期五, 18 十月 2024 13:42:12 +0800
Subject: [PATCH] *

---
 src/main/java/com/zy/core/enums/RgvStatusType.java          |   10 +-
 /dev/null                                                   |  120 ----------------------------------------
 src/main/java/com/zy/core/thread/RgvThread.java             |   18 +++---
 src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java |   23 +++++++
 4 files changed, 37 insertions(+), 134 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 3e6f610..9d634e6 100644
--- a/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java
+++ b/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java
@@ -1,9 +1,14 @@
 package com.zy.asrs.service.impl;
 
 import com.alibaba.fastjson.JSON;
+import com.baomidou.mybatisplus.mapper.EntityWrapper;
 import com.core.common.Cools;
+import com.zy.asrs.entity.BasCircularShuttle;
+import com.zy.asrs.entity.BasDevpPosition;
 import com.zy.asrs.entity.BasRgv;
 import com.zy.asrs.entity.BasSte;
+import com.zy.asrs.service.BasCircularShuttleService;
+import com.zy.asrs.service.BasDevpPositionService;
 import com.zy.asrs.service.BasDevpService;
 import com.zy.asrs.utils.Utils;
 import com.zy.core.DevpThread;
@@ -30,6 +35,7 @@
 import org.springframework.transaction.annotation.Transactional;
 
 import java.util.Date;
+import java.util.List;
 import java.util.Map;
 
 /**
@@ -47,11 +53,28 @@
     private BasDevpService basDevpService;
     @Autowired
     private BasRgvServiceImpl basRgvService;
+    @Autowired
+    private BasDevpPositionService basDevpPositionService;
+    @Autowired
+    private BasCircularShuttleService basCircularShuttleService;
     /**
      * 绔欑偣浠诲姟妫�娴�  涓嬪彂灏忚溅鍙栨斁浠诲姟
      */
     public synchronized void updateStePosition() {
+        try{
+            List<BasCircularShuttle> basCircularShuttleList = basCircularShuttleService.selectList(new EntityWrapper<BasCircularShuttle>().orderBy("ste_id", true));
+            for (BasCircularShuttle basCircularShuttle : basCircularShuttleList){
+                RgvThread rgvThread = (RgvThread) SlaveConnection.get(SlaveType.Rgv, basCircularShuttle.getSteNo());
+                RgvProtocol rgvProtocol = rgvThread.getRgvProtocol();
+                if (rgvProtocol.modeType != RgvModeType.AUTO || (rgvProtocol.getStatusType() != RgvStatusType.IDLE && rgvProtocol.getStatusType() != RgvStatusType.SOS1001) ){
 
+                } else {
+                    break;
+                }
+            }
+        } catch (Exception e){
+
+        }
     }
     /**
      * 绔欑偣浠诲姟妫�娴�  涓嬪彂灏忚溅鍙栨斁浠诲姟
diff --git a/src/main/java/com/zy/asrs/utils/SteAndJarUtil.java b/src/main/java/com/zy/asrs/utils/SteAndJarUtil.java
deleted file mode 100644
index a3d4c97..0000000
--- a/src/main/java/com/zy/asrs/utils/SteAndJarUtil.java
+++ /dev/null
@@ -1,120 +0,0 @@
-package com.zy.asrs.utils;
-
-import java.util.regex.Pattern;
-
-public class SteAndJarUtil {
-
-    /**
-     * RGV浣嶇疆鏄惁涓庣~鍖栫綈姝e
-     */
-    public static boolean steAndJarNowRow(short steNowRow , Integer jarNo){
-        return (steNowRow==(short) 1 && (jarNo == 2 || jarNo == 4 || jarNo == 5 || jarNo == 6)) || (steNowRow==(short)3 && (jarNo == 1 || jarNo == 3));
-    }
-
-    /**
-     * RGV浣嶇疆姝e鑾峰彇
-     */
-    public static Integer getRgvJarNowRow(Integer jarNo){
-        switch (jarNo){
-            case 1:
-            case 3:
-                return 3;
-            case 2:
-            case 4:
-            case 5:
-            case 6:
-                return 1;
-        }
-        return 2;
-    }
-
-    /**
-     * RGV浣嶇疆姝e鑾峰彇
-     */
-    public static boolean getRgvJarNowRow(Integer staNo,short nowRow){
-        switch (staNo){
-            case 615:
-            case 622:
-            case 628:
-            case 627:
-                return nowRow==(short) 1;
-            case 612:
-            case 619:
-                return nowRow==(short) 2;
-        }
-        return false;
-    }
-
-    /**
-     * RGV浣嶇疆姝e鑾峰彇
-     */
-    public static Integer getRgvStaRow(Integer staNo){
-        switch (staNo){
-            case 615:
-            case 622:
-            case 628:
-            case 627:
-                return  1;
-            case 612:
-            case 619:
-                return  3;
-        }
-        return 0;
-    }
-
-    /**
-     * 鑾峰彇姝e鍐峰嵈妲界~鍖栫綈
-     */
-    public static Integer getRgvJarNo(Integer jarNo){
-        switch (jarNo){
-            case 1:
-            case 2:
-            case 5:
-                return  2;
-            case 3:
-            case 4:
-            case 6:
-                return  4;
-        }
-        return 0;
-    }
-    /**
-     * 鑾峰彇姝e鍐峰嵈妲界~鍖栫綈
-     */
-    public static Integer getBJarNo(Integer jarNo){
-        switch (jarNo){
-            case 1:
-            case 2:
-            case 5:
-                return  5;
-            case 3:
-            case 4:
-            case 6:
-                return  6;
-        }
-        return 0;
-    }
-
-    /**
-     * 鑾峰彇纭寲缃怰GV浣嶇疆
-     */
-    public static Integer getJarNoEndRow(Integer jarNo){
-        switch (jarNo){
-            case 1:
-            case 3:
-                return  3;
-            case 2:
-            case 4:
-                return  1;
-            case 5:
-            case 6:
-                return  1;
-        }
-        return 0;
-    }
-
-    public static void main(String[] args) {
-
-    }
-
-}
diff --git a/src/main/java/com/zy/core/enums/RgvStatusType.java b/src/main/java/com/zy/core/enums/RgvStatusType.java
index b5d86cb..b2b59b4 100644
--- a/src/main/java/com/zy/core/enums/RgvStatusType.java
+++ b/src/main/java/com/zy/core/enums/RgvStatusType.java
@@ -4,16 +4,16 @@
 
     NONE(-1, "绂荤嚎","#4A4035"),
     IDLE(0, "鏃犱换鍔�","#1F3696"),
-    WORKING(1, "鍙栬揣琛岃蛋","#2196F3"),
-    SOS(2, "杩涚珯杩愯涓�","#2196F3"),
-    FETCHING(3, "杩涚珯瀹屾垚","#2196F3"),
+    PICK_UP_WALK(1, "鍙栬揣琛岃蛋","#2196F3"),
+    IN_STATION_OPERATION(2, "杩涚珯杩愯涓�","#2196F3"),
+    STATION_ENTRY_COMPLETED(3, "杩涚珯瀹屾垚","#2196F3"),
     PUTTING(4, "鏈夌墿寰呭嚭绔�","#2196F3"),
-    WAITING(5, "鍑虹珯琛岃蛋","#E2C027"),
+    WAITING1(5, "鍑虹珯琛岃蛋","#E2C027"),
     FETCHWAITING(6, "鍑虹珯璇锋眰","#2196F3"),
     SOS99(7, "鍑虹珯杩愯涓�","#2196F3"),
     SOS100(8, "鍑虹珯瀹屾垚","#2196F3"),
     SOS1001(11, "婕父","#2196F3"),
-    SOS1002(100, "浠诲姟鎵ц瀹屾垚","#2196F3"),
+    WAITING(100, "浠诲姟鎵ц瀹屾垚绛夊緟纭","#2196F3"),
     SOSSUPER(999, "鏈煡","#2196F3")
     ;
 
diff --git a/src/main/java/com/zy/core/thread/RgvThread.java b/src/main/java/com/zy/core/thread/RgvThread.java
index e92b47f..7a15cab 100644
--- a/src/main/java/com/zy/core/thread/RgvThread.java
+++ b/src/main/java/com/zy/core/thread/RgvThread.java
@@ -131,20 +131,20 @@
      */
     private void readStatus(){
         try {
-            OperateResultExOne<byte[]> result = siemensNet.Read("DB100.0", (short) 18);
+            OperateResultExOne<byte[]> result = siemensNet.Read("DB100.0", (short) 20);
             if (result.IsSuccess) {
                 if (null == rgvProtocol) {
                     rgvProtocol = new RgvProtocol();
                     rgvProtocol.setRgvNo(slave.getId());
                 }
-                rgvProtocol.setMode(siemensNet.getByteTransform().TransInt16(result.Content, 0));
-                rgvProtocol.setStartSta(siemensNet.getByteTransform().TransInt16(result.Content, 2));
-                rgvProtocol.setEndSta(siemensNet.getByteTransform().TransInt16(result.Content, 4));
-                rgvProtocol.setTaskNo1(siemensNet.getByteTransform().TransInt16(result.Content, 6));
-                rgvProtocol.setAlarm(siemensNet.getByteTransform().TransInt16(result.Content, 8));
-                rgvProtocol.setStatus(siemensNet.getByteTransform().TransInt16(result.Content, 10));
-                rgvProtocol.setxSpeed(siemensNet.getByteTransform().TransInt16(result.Content, 12));
-                rgvProtocol.setRgvPos(siemensNet.getByteTransform().TransUInt32(result.Content, 14));
+                rgvProtocol.setMode(siemensNet.getByteTransform().TransInt16(result.Content, 2));
+                rgvProtocol.setStartSta(siemensNet.getByteTransform().TransInt16(result.Content, 4));
+                rgvProtocol.setEndSta(siemensNet.getByteTransform().TransInt16(result.Content, 6));
+                rgvProtocol.setTaskNo1(siemensNet.getByteTransform().TransInt16(result.Content, 8));
+                rgvProtocol.setAlarm(siemensNet.getByteTransform().TransInt16(result.Content, 10));
+                rgvProtocol.setStatus(siemensNet.getByteTransform().TransInt16(result.Content, 12));
+                rgvProtocol.setxSpeed(siemensNet.getByteTransform().TransInt16(result.Content, 14));
+                rgvProtocol.setRgvPos(siemensNet.getByteTransform().TransUInt32(result.Content, 16));
                 rgvProtocol.setRgvPos(slave.getId().longValue()*100000);
                 OutputQueue.RGV.offer(MessageFormat.format("銆恵0}銆慬id:{1}] <<<<< 瀹炴椂鏁版嵁鏇存柊鎴愬姛",DateUtils.convert(new Date()), slave.getId()));
 

--
Gitblit v1.9.1