From 3b604eb218a3b167144cc6e5d9c86cd95e16157c Mon Sep 17 00:00:00 2001
From: yxFwq <1>
Date: 星期六, 10 五月 2025 08:08:24 +0800
Subject: [PATCH] #

---
 src/main/java/com/zy/asrs/controller/RgvController.java |   82 ++++++++++++++++++++++++-----------------
 1 files changed, 48 insertions(+), 34 deletions(-)

diff --git a/src/main/java/com/zy/asrs/controller/RgvController.java b/src/main/java/com/zy/asrs/controller/RgvController.java
index e7c212b..f864314 100644
--- a/src/main/java/com/zy/asrs/controller/RgvController.java
+++ b/src/main/java/com/zy/asrs/controller/RgvController.java
@@ -13,7 +13,7 @@
 import com.zy.asrs.service.LocMastService;
 import com.zy.asrs.service.WrkMastService;
 import com.zy.asrs.service.impl.MainServiceImpl;
-import com.zy.asrs.utils.VersionUtils;
+import com.zy.core.DevpThread;
 import com.zy.core.cache.MessageQueue;
 import com.zy.core.cache.OutputQueue;
 import com.zy.core.cache.SlaveConnection;
@@ -24,11 +24,11 @@
 import com.zy.core.model.Task;
 import com.zy.core.model.command.RgvCommand;
 import com.zy.core.model.protocol.RgvProtocol;
+import com.zy.core.model.protocol.StaProtocol;
 import com.zy.core.properties.SlaveProperties;
 import com.zy.core.thread.RgvThread;
 import lombok.extern.slf4j.Slf4j;
 import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.web.bind.annotation.GetMapping;
 import org.springframework.web.bind.annotation.PostMapping;
 import org.springframework.web.bind.annotation.RequestMapping;
 import org.springframework.web.bind.annotation.RestController;
@@ -64,37 +64,29 @@
     @ManagerAuth(memo = "RGV淇℃伅琛�")
     public R rgvStateTable(){
         List<RgvStateTableVo> list = new ArrayList<>();
-        List<BasRgv> rgvs = basRgvService.selectList(new EntityWrapper<BasRgv>().orderBy("rgv_no"));
-        for (BasRgv basRgv : rgvs) {
-            // 琛ㄦ牸琛�
-            RgvStateTableVo vo = new RgvStateTableVo();
-            vo.setRgvNo(basRgv.getRgvNo());   //  RGV鍙�
-            list.add(vo);
-            // 鑾峰彇RGV淇℃伅
-            RgvThread rgvThread = (RgvThread) SlaveConnection.get(SlaveType.Rgv, basRgv.getRgvNo());
-            if (rgvThread == null) {
-                continue;
-            }
-            RgvProtocol rgvProtocol = rgvThread.getRgvProtocol();
-            if (rgvProtocol == null) {
-                continue;
-            }
-            vo.setStatusType(rgvProtocol.modeType.desc);   //  妯″紡鐘舵��
-            vo.setStatus(rgvProtocol.getStatusType().desc);     //  鐘舵��
-            vo.setWorkNo1(rgvProtocol.getTaskNo1());  //  宸ヤ綅1浠诲姟鍙�
-            vo.setStatus1(rgvProtocol.getStatusType1().desc);  // 宸ヤ綅1鐘舵��
-            vo.setLoading1(rgvProtocol.getLoaded1()==1?"鏈夌墿":"鏃犵墿");  // 宸ヤ綅1鏈夌墿
-            vo.setRgvPos(rgvProtocol.getRgvPos());
-            vo.setWalkPos(rgvProtocol.getWalkPos()==1?"涓嶅湪瀹氫綅":"鍦ㄥ畾浣�");
-            vo.setWorkNo2(rgvProtocol.getTaskNo2());  //  宸ヤ綅2浠诲姟鍙�
-            vo.setStatus2(rgvProtocol.getStatusType2().desc);  // 宸ヤ綅2鐘舵��
-            vo.setLoading2(rgvProtocol.getLoaded2()==1?"鏈夌墿":"鏃犵墿");  // 宸ヤ綅2鏈夌墿
+        DevpThread devpThread = (DevpThread) SlaveConnection.get(SlaveType.Devp, 2);
+        Map<Integer, StaProtocol> station = devpThread.getStation();
+        int[] basRgvList =new int[]{623,624,625,626};
 
-            vo.setWarnCode(String.valueOf(rgvProtocol.getAlarm()));
-            if (rgvProtocol.getAlarm() > 0) {
-                BasRgvErr rgvErr = basRgvErrMapper.selectById(rgvProtocol.getAlarm());
-                vo.setAlarm(rgvErr==null?"鏈煡寮傚父":rgvErr.getErrName());
-            }
+        for (int rgvNo : basRgvList) {
+            RgvStateTableVo vo = new RgvStateTableVo();
+            vo.setRgvNo(rgvNo);    // 绔欑偣缂栧彿
+            list.add(vo);
+            StaProtocol staProtocol = station.get(rgvNo);
+            if (null == staProtocol) { continue; }
+            vo.setWorkNo1(staProtocol.getWorkNo().shortValue());   //  宸ヤ綔鍙�
+            vo.setStatusType(staProtocol.isAutoing()?"Y":"N");   //  鑷姩
+            vo.setStatus(staProtocol.isLoading()?"Y":"N");     //  鏈夌墿
+            vo.setEndRow(staProtocol.getEndRow());   //  灏忚溅鐩爣浣�
+            vo.setNowRow(staProtocol.getNowRow());   //  灏忚溅褰撳墠浣�   //宸︼細1  涓細 2  鍙筹細3   锛堥潰鏈濆叆鏂欏彛锛�
+            vo.setStatus11(staProtocol.isRGV1()?"Y":"N");   //  宸ヤ綔鍙�
+            vo.setStatus12(staProtocol.isRGV2()?"Y":"N");   //  宸ヤ綔鍙�
+            vo.setStatus13(staProtocol.isRGV3()?"Y":"N");   //  宸ヤ綔鍙�
+            vo.setStatus14(staProtocol.isRGV4()?"Y":"N");   //  宸ヤ綔鍙�
+            vo.setStatus15(staProtocol.isRGV5()?"Y":"N");   //  宸ヤ綔鍙�
+            vo.setStatus16(staProtocol.isRGV6()?"Y":"N");   //  宸ヤ綔鍙�
+//            vo.setLocType1(staProtocol.isHigh() != staProtocol.isLow() && staProtocol.isLow() ? "浣�" : "楂�");     //楂樹綆搴撲綅
+//            vo.setLocType1(devp.getDevNo()==102 ? "楂�" : "浣�");
         }
         return R.ok().add(list);
     }
@@ -110,7 +102,7 @@
             vo.setRgvNo(basRgv.getRgvNo());   //  RGV鍙�
             list.add(vo);
             // 鑾峰彇RGV淇℃伅
-            RgvThread rgvThread = (RgvThread) SlaveConnection.get(SlaveType.Crn, basRgv.getRgvNo());
+            RgvThread rgvThread = (RgvThread) SlaveConnection.get(SlaveType.Rgv, basRgv.getRgvNo());
             if (rgvThread == null) {
                 continue;
             }
@@ -119,7 +111,7 @@
                 continue;
             }
 
-            vo.setWorkNo1(rgvProtocol.getTaskNo1());  //  浠诲姟鍙�
+            vo.setWorkNo(rgvProtocol.getTaskNo1());  //  浠诲姟鍙�
             if (rgvProtocol.getTaskNo1()>0) {
                 WrkMast wrkMast = wrkMastService.selectById(rgvProtocol.getTaskNo1());
                 if (wrkMast != null) {
@@ -321,4 +313,26 @@
         return false;
     }
 
+    @PostMapping("/console/rgv/site/data")
+    @ManagerAuth(memo = "灏忚溅瀹炴椂浣嶇疆")
+    public R scaleLatestData(){
+        List<Map> result = new ArrayList<>();
+        for (RgvSlave rgv : slaveProperties.getRgv()) {
+            // 鑾峰彇RGV淇℃伅
+            RgvThread rgvThread = (RgvThread) SlaveConnection.get(SlaveType.Rgv, rgv.getId());
+            if (rgvThread == null) {
+                throw new CoolException("RGV涓嶅湪绾�");
+            }
+            RgvProtocol rgvProtocol = rgvThread.getRgvProtocol();
+            if (rgvProtocol == null) {
+                throw new CoolException("RGV涓嶅湪绾�");
+            }
+            Map<String, Object> rgvMap = new HashMap<>();
+            rgvMap.put("title", rgvProtocol.getRgvPosI());
+            rgvMap.put("id", rgvProtocol.getRgvNo());
+            result.add(rgvMap);
+        }
+        return R.ok().add(result);
+    }
+
 }
\ No newline at end of file

--
Gitblit v1.9.1