From ad79ba405b2d1ac96423f88f4e8a76c584b9d38a Mon Sep 17 00:00:00 2001
From: zwl <1051256694@qq.com>
Date: 星期一, 09 二月 2026 15:57:06 +0800
Subject: [PATCH] #

---
 src/main/java/com/zy/asrs/controller/OpenController.java |   42 ++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 42 insertions(+), 0 deletions(-)

diff --git a/src/main/java/com/zy/asrs/controller/OpenController.java b/src/main/java/com/zy/asrs/controller/OpenController.java
index abc031f..138fc9c 100644
--- a/src/main/java/com/zy/asrs/controller/OpenController.java
+++ b/src/main/java/com/zy/asrs/controller/OpenController.java
@@ -5,13 +5,16 @@
 import com.core.common.R;
 import com.core.exception.CoolException;
 import com.zy.asrs.domain.param.*;
+import com.zy.asrs.entity.BasDevp;
 import com.zy.asrs.entity.DeviceConfig;
 import com.zy.asrs.entity.LocMast;
 import com.zy.asrs.entity.WrkMast;
+import com.zy.asrs.service.BasDevpService;
 import com.zy.asrs.service.DeviceConfigService;
 import com.zy.asrs.service.LocMastService;
 import com.zy.asrs.service.WrkMastService;
 import com.zy.common.annotations.OpenApiLog;
+import com.zy.common.model.MonitorParam;
 import com.zy.common.service.CommonService;
 import com.zy.core.cache.SlaveConnection;
 import com.zy.core.enums.SlaveType;
@@ -58,6 +61,8 @@
     private ConfigService configService;
     @Autowired
     private DeviceConfigService deviceConfigService;
+    @Autowired
+    private BasDevpService basDevpService;
 
     // 绉诲簱浠诲姟
     @PostMapping("/createLocMoveTask")
@@ -352,4 +357,41 @@
         return R.ok();
     }
 
+    // 鍙嶉浠诲姟鎵ц缁撴灉
+    @PostMapping("/stationStatus")
+    public R stationStatus(@RequestBody MonitorParam param){
+        if(param == null || param.getStationIds().length == 0){
+            return R.error("杈撳叆鐨勫弬鏁颁负绌�");
+        }
+        List<StationProtocol> basDevps  =  new ArrayList<>();
+        Boolean flag = false;
+        // 鑾峰彇杈撻�佺珯鐐规暟鎹�
+        ArrayList<StationProtocol> stationProtocols = new ArrayList<>();
+        List<DeviceConfig> stationList = deviceConfigService.selectList(new EntityWrapper<DeviceConfig>()
+                .eq("device_type", String.valueOf(SlaveType.Devp)));
+        for (DeviceConfig device : stationList) {
+            StationThread stationThread = (StationThread) SlaveConnection.get(SlaveType.Devp, device.getDeviceNo());
+            if (stationThread == null) {
+                continue;
+            }
+
+            List<StationProtocol> stationProtocolList = stationThread.getStatus();
+            if (stationProtocolList == null) {
+                continue;
+            }
+            for (StationProtocol stationProtocol : stationProtocolList) {
+                for (int i = 0; i < param.getStationIds().length; i++) {
+                    if (stationProtocol.getStationId().equals(param.getStationIds()[i])){
+                        flag = true;
+                        basDevps.add(stationProtocol);
+                    }
+                }
+            }
+        }
+        if(flag){
+            return R.ok().add(basDevps);
+        }
+        return null;
+    }
+
 }

--
Gitblit v1.9.1