From 9bbaf1fdf110e78d3daf76f2b8033aae48f322ca Mon Sep 17 00:00:00 2001
From: Junjie <fallin.jie@qq.com>
Date: 星期一, 27 十一月 2023 13:16:28 +0800
Subject: [PATCH] #

---
 src/main/java/com/zy/asrs/controller/ConsoleController.java |   62 +++++++++++++++++++++++++++++--
 1 files changed, 58 insertions(+), 4 deletions(-)

diff --git a/src/main/java/com/zy/asrs/controller/ConsoleController.java b/src/main/java/com/zy/asrs/controller/ConsoleController.java
index 4b6a012..6a5eb26 100644
--- a/src/main/java/com/zy/asrs/controller/ConsoleController.java
+++ b/src/main/java/com/zy/asrs/controller/ConsoleController.java
@@ -13,14 +13,12 @@
 import com.zy.asrs.domain.enums.SiteStatusType;
 import com.zy.asrs.domain.param.SystemSwitchParam;
 import com.zy.asrs.domain.vo.*;
-import com.zy.asrs.entity.BasCrnError;
-import com.zy.asrs.entity.BasDevp;
-import com.zy.asrs.entity.ChartBean;
-import com.zy.asrs.entity.WrkMast;
+import com.zy.asrs.entity.*;
 import com.zy.asrs.mapper.BasCrnErrorMapper;
 import com.zy.asrs.mapper.LocMastMapper;
 import com.zy.asrs.mapper.ReportQueryMapper;
 import com.zy.asrs.service.BasDevpService;
+import com.zy.asrs.service.DeviceErrorService;
 import com.zy.asrs.service.WrkMastService;
 import com.zy.common.CodeRes;
 import com.zy.core.CrnThread;
@@ -67,6 +65,8 @@
     private BasCrnErrorMapper basCrnErrorMapper;
     @Autowired
     private ReportQueryMapper reportQueryMapper;
+    @Autowired
+    private DeviceErrorService deviceErrorService;
 
     @PostMapping("/system/running/status")
     @ManagerAuth(memo = "绯荤粺杩愯鐘舵��")
@@ -198,6 +198,60 @@
         return R.ok().add(list);
     }
 
+    /**
+     * 鑾峰彇璁惧璇︽儏
+     */
+    @GetMapping("/deviceInfo")
+    @ManagerAuth
+    public R getDeviceInfo() {
+        ArrayList<HashMap<String, Object>> list = new ArrayList<>();
+        for (CrnSlave crn : slaveProperties.getCrn()) {
+            // 鑾峰彇鍫嗗灈鏈轰俊鎭�
+            CrnThread crnThread = (CrnThread) SlaveConnection.get(SlaveType.Crn, crn.getId());
+            if (crnThread == null) {
+                continue;
+            }
+            CrnProtocol crnProtocol = crnThread.getCrnProtocol();
+            if (crnProtocol == null) {
+                continue;
+            }
+
+            HashMap<String, Object> map = new HashMap<>();
+            map.put("device", "鍫嗗灈鏈�");
+            map.put("deviceId", crn.getId());
+            map.put("battery", "");
+            map.put("error", crnProtocol.getFault());
+            map.put("status", crnProtocol.getStatusType().desc);
+            list.add(map);
+        }
+
+        for (DevpSlave devp : slaveProperties.getDevp()) {
+            DeviceError deviceError = deviceErrorService.selectByDeviceAndDeviceId("devp", devp.getId());
+            HashMap<String, Object> map = new HashMap<>();
+            map.put("device", "杈撻�佺嚎");
+            map.put("deviceId", devp.getId());
+            map.put("battery", "");
+            map.put("error", deviceError != null);
+            map.put("status", deviceError == null ? "" : deviceError.getMsg());
+            list.add(map);
+        }
+
+        for (Slave scale : slaveProperties.getScale()) {
+            DeviceError deviceError = deviceErrorService.selectByDeviceAndDeviceId("scale", scale.getId());
+            HashMap<String, Object> map = new HashMap<>();
+            map.put("device", "纾呯Г");
+            map.put("deviceId", scale.getId());
+            map.put("battery", "");
+            map.put("error", deviceError != null);
+            map.put("status", deviceError == null ? "" : deviceError.getMsg());
+            list.add(map);
+        }
+
+        HashMap<String, Object> hashMap = new HashMap<>();
+        hashMap.put("records", list);
+        return R.ok().add(hashMap);
+    }
+
     /****************************************************************/
     /************************** 璇︽儏鎿嶄綔 ******************************/
     /****************************************************************/

--
Gitblit v1.9.1