From 74e253770f0c321ad47bb68e490e4a118f35fd35 Mon Sep 17 00:00:00 2001
From: liuhaonan <31457034@qq.com>
Date: 星期五, 22 七月 2022 16:29:40 +0800
Subject: [PATCH] 优化

---
 ximon-admin/src/main/java/com/sandu/ximon/admin/controller/PoleController.java |   73 +++++++++++++++++++++++++++++++++++-
 1 files changed, 70 insertions(+), 3 deletions(-)

diff --git a/ximon-admin/src/main/java/com/sandu/ximon/admin/controller/PoleController.java b/ximon-admin/src/main/java/com/sandu/ximon/admin/controller/PoleController.java
index 058ce00..b1e0c81 100644
--- a/ximon-admin/src/main/java/com/sandu/ximon/admin/controller/PoleController.java
+++ b/ximon-admin/src/main/java/com/sandu/ximon/admin/controller/PoleController.java
@@ -10,6 +10,7 @@
 import com.sandu.common.security.annotation.AnonymousAccess;
 import com.sandu.common.util.ResponseUtil;
 import com.sandu.ximon.admin.dto.DeviceStatus;
+import com.sandu.ximon.admin.dto.DeviceStatusDto;
 import com.sandu.ximon.admin.param.PoleBindParam;
 import com.sandu.ximon.admin.param.PoleBindingParam;
 import com.sandu.ximon.admin.param.PoleParam;
@@ -131,9 +132,19 @@
     @AnonymousAccess
     @PostMapping("/setMac/{baseMac}")
     public ResponseVO<Object> setMac(@PathVariable String baseMac) {
-//        if (!permissionConfig.check(MenuEnum.POLE_REAL_ADD.getCode())) {
-//            return ResponseUtil.fail("缂哄皯瀵瑰簲鐢ㄦ埛鏉冮檺");
-//        }
+        //鍒ゆ柇鏄惁鏄湁璁剧疆涓夊厓鐮佹潈闄�
+        if (!permissionConfig.check(MenuEnum.BASE_DEVICE_01.getCode()) && MenuEnum.BASE_DEVICE_01.getCode().equals(baseMac)) {
+            return ResponseUtil.fail("缂哄皯瀵瑰簲鐢ㄦ埛鏉冮檺");
+        } else if (!permissionConfig.check(MenuEnum.BASE_DEVICE_02.getCode()) && MenuEnum.BASE_DEVICE_02.getCode().equals(baseMac)) {
+            return ResponseUtil.fail("缂哄皯瀵瑰簲鐢ㄦ埛鏉冮檺");
+        } else if (!permissionConfig.check(MenuEnum.BASE_DEVICE_03.getCode()) && MenuEnum.BASE_DEVICE_03.getCode().equals(baseMac)) {
+            return ResponseUtil.fail("缂哄皯瀵瑰簲鐢ㄦ埛鏉冮檺");
+        } else if (!permissionConfig.check(MenuEnum.BASE_DEVICE_04.getCode()) && MenuEnum.BASE_DEVICE_04.getCode().equals(baseMac)) {
+            return ResponseUtil.fail("缂哄皯瀵瑰簲鐢ㄦ埛鏉冮檺");
+        } else if (!permissionConfig.check(MenuEnum.BASE_DEVICE_05.getCode()) && MenuEnum.BASE_DEVICE_05.getCode().equals(baseMac)) {
+            return ResponseUtil.fail("缂哄皯瀵瑰簲鐢ㄦ埛鏉冮檺");
+        }
+
         return ResponseUtil.success(poleService.setMac(baseMac));
     }
 
@@ -276,6 +287,62 @@
         return ResponseUtil.success(statusList);
     }
 
+
+    /**
+     * 鏌ヨ鏄惁瀛樺湪鍙敞鍐岃澶�
+     *
+     * @param
+     * @return
+     */
+    @AnonymousAccess
+    @PostMapping("/isRegisterByCode")
+    public ResponseVO<Object> getStatusByCode() {
+//        if (!permissionConfig.check(MenuEnum.GET_STATE_BY_DEVICECODE.getCode())) {
+//            return ResponseUtil.fail("缂哄皯瀵瑰簲鐢ㄦ埛鏉冮檺");
+//        }
+        ArrayList<String> deviceCodeList = new ArrayList<>();
+        deviceCodeList.add("baseDevice01");
+        deviceCodeList.add("baseDevice02");
+        deviceCodeList.add("baseDevice03");
+        deviceCodeList.add("baseDevice04");
+        deviceCodeList.add("baseDevice05");
+        for (String s : deviceCodeList) {
+            if (s == null) {
+                return ResponseUtil.fail("鍙傛暟涓嶈兘涓虹┖");
+            }
+
+        }
+        if (ArrayUtil.isEmpty(deviceCodeList)) {
+            return ResponseUtil.fail("鍙傛暟涓嶈兘涓虹┖");
+        }
+        List<DeviceStatus> statusList = poleService.listStatusByDeviceCode(deviceCodeList);
+        List<DeviceStatusDto> list = new ArrayList<>();
+        String s = "baseDevice0";
+        for (int i = 0; i < deviceCodeList.size(); i++) {
+            DeviceStatusDto dto = new DeviceStatusDto();
+            dto.setDeviceCode(s + (i + 1));
+            dto.setName(s + (i + 1));
+            list.add(dto);
+        }
+
+        statusList.forEach(
+                status -> {
+                    list.forEach(
+                            dto -> {
+                                if (status.getDeviceCode().equals(dto.getDeviceCode())) {
+                                    //status=1鏃�  璁惧鍙互娉ㄥ唽
+                                    if (status.getStatus() == 1) {
+                                        dto.setStatus(1);
+                                    }
+                                }
+                            }
+                    );
+                }
+        );
+        return ResponseUtil.success(list);
+    }
+
+
     @PostMapping("/ClientBindingPole")
     public ResponseVO<Object> ClientBindingPole(@RequestBody PoleBindParam param) {
         if (!permissionConfig.check(MenuEnum.CLIENT_BINDING_POLE.getCode())) {

--
Gitblit v1.9.3