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 | 86 ++++++++++++++++++++++++++++++++++++++++++-
1 files changed, 84 insertions(+), 2 deletions(-)
diff --git a/src/main/java/com/zy/asrs/controller/OpenController.java b/src/main/java/com/zy/asrs/controller/OpenController.java
index 329bc10..138fc9c 100644
--- a/src/main/java/com/zy/asrs/controller/OpenController.java
+++ b/src/main/java/com/zy/asrs/controller/OpenController.java
@@ -5,21 +5,28 @@
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;
import com.zy.core.enums.WrkIoType;
import com.zy.core.model.protocol.CrnProtocol;
+import com.zy.core.model.protocol.DualCrnProtocol;
import com.zy.core.model.protocol.RgvProtocol;
+import com.zy.core.model.protocol.StationProtocol;
import com.zy.core.thread.CrnThread;
+import com.zy.core.thread.DualCrnThread;
import com.zy.core.thread.RgvThread;
+import com.zy.core.thread.StationThread;
import com.zy.system.entity.Config;
import com.zy.system.service.ConfigService;
@@ -54,6 +61,8 @@
private ConfigService configService;
@Autowired
private DeviceConfigService deviceConfigService;
+ @Autowired
+ private BasDevpService basDevpService;
// 绉诲簱浠诲姟
@PostMapping("/createLocMoveTask")
@@ -184,8 +193,44 @@
rgvProtocols.add(rgvProtocol);
}
- map.put("crn", crnList);
- map.put("rgv", rgvList);
+ // 鑾峰彇鍙屽伐浣嶅爢鍨涙満鏁版嵁
+ ArrayList<DualCrnProtocol> dualCrnProtocols = new ArrayList<>();
+ List<DeviceConfig> dualCrnList = deviceConfigService.selectList(new EntityWrapper<DeviceConfig>()
+ .eq("device_type", String.valueOf(SlaveType.DualCrn)));
+ for (DeviceConfig device : dualCrnList) {
+ DualCrnThread dualCrnThread = (DualCrnThread) SlaveConnection.get(SlaveType.DualCrn, device.getDeviceNo());
+ if (dualCrnThread == null) {
+ continue;
+ }
+
+ DualCrnProtocol dualCrnProtocol = dualCrnThread.getStatus();
+ if (dualCrnProtocol == null) {
+ continue;
+ }
+ dualCrnProtocols.add(dualCrnProtocol);
+ }
+
+ // 鑾峰彇杈撻�佺珯鐐规暟鎹�
+ 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;
+ }
+ stationProtocols.addAll(stationProtocolList);
+ }
+
+ map.put("crnList", crnProtocols);
+ map.put("rgvList", rgvList);
+ map.put("dualCrnList", dualCrnProtocols);
+ map.put("stationList", stationProtocols);
return R.ok().add(map);
}
@@ -312,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