From e55c8b0a92eb9715edd90c31dfd4de51a47b588b Mon Sep 17 00:00:00 2001
From: liuhaonan <31457034@qq.com>
Date: 星期五, 04 十一月 2022 17:40:08 +0800
Subject: [PATCH] changes

---
 ximon-admin/src/main/java/com/sandu/ximon/admin/controller/RemoteUpdateController.java |  178 +++++++++++++++++++++++------------------------------------
 1 files changed, 69 insertions(+), 109 deletions(-)

diff --git a/ximon-admin/src/main/java/com/sandu/ximon/admin/controller/RemoteUpdateController.java b/ximon-admin/src/main/java/com/sandu/ximon/admin/controller/RemoteUpdateController.java
index d354621..27af564 100644
--- a/ximon-admin/src/main/java/com/sandu/ximon/admin/controller/RemoteUpdateController.java
+++ b/ximon-admin/src/main/java/com/sandu/ximon/admin/controller/RemoteUpdateController.java
@@ -91,44 +91,10 @@
         if (!permissionConfig.check(MenuEnum.REMOTE_UPDATE_START.getCode())) {
             return ResponseUtil.fail("缂哄皯瀵瑰簲鐢ㄦ埛鏉冮檺");
         }
-        String orderType;
-        boolean UpdateFlag = false;
-        String deviceType;
 
-        if(remotePrarm.getDeviceType()==null){
-            throw new BusinessException("鍗囩骇纭欢璁惧绫诲瀷鎸囦护鏈夎锛岃纭锛�");
-        }
-        if (RemoteUpdateTypeEnum.MQTT_MAIN.equals(remotePrarm.getDeviceType())) {
-            //MQTT涓绘澘
-            orderType = A5OrderEnum.REQUEST_LIGHT_DATA.getCode();
-            deviceType=RemoteUpdateTypeEnum.MQTT_MAIN;
-        } else if (RemoteUpdateTypeEnum.MQTT_CORE.equals(remotePrarm.getDeviceType())) {
-            //MQTT鏍稿績鏉�
-            orderType = A5OrderEnum.REQUEST_LIGHT_DATA.getCode();
-            deviceType=RemoteUpdateTypeEnum.MQTT_CORE;
-        } else if (RemoteUpdateTypeEnum.LIGHT.equals(remotePrarm.getDeviceType())) {
-            //鍗曠伅妯″潡
-            orderType = A5OrderEnum.REQUEST_LIGHT_DATA.getCode();
-            deviceType=RemoteUpdateTypeEnum.LIGHT;
-        } else if (RemoteUpdateTypeEnum.C3_CHARGING.equals(remotePrarm.getDeviceType())) {
-            //C3鍏呯數妗╂ā鍧�
-            orderType = A5OrderEnum.REQUEST_C3_DATA.getCode();
-            deviceType=RemoteUpdateTypeEnum.C3_CHARGING;
-        } else if (RemoteUpdateTypeEnum.CAT1_MAIN.equals(remotePrarm.getDeviceType())) {
-            //Cat.1涓绘澘
-            orderType = A5OrderEnum.REQUEST_LIGHT_DATA.getCode();
-            deviceType=RemoteUpdateTypeEnum.CAT1_MAIN;
-        } else if (RemoteUpdateTypeEnum.LIGHT_POLE_HELING.equals(remotePrarm.getDeviceType())) {
-            //鐏潌鍊炬枩妯″潡
-            orderType = A5OrderEnum.REQUEST_POLE_MONITOR_DATA.getCode();
-            deviceType=RemoteUpdateTypeEnum.LIGHT_POLE_HELING;
-        } else if (RemoteUpdateTypeEnum.AIR_EQUIPMENT.equals(remotePrarm.getDeviceType())) {
-            //澶ф皵璁惧妯″潡
-            orderType = A5OrderEnum.REQUEST_ATMOSPHERE_DATA.getCode();
-            deviceType=RemoteUpdateTypeEnum.AIR_EQUIPMENT;
-        } else {
-            throw new BusinessException("鍗囩骇纭欢璁惧绫诲瀷鎸囦护鏈夎锛岃纭锛�");
-        }
+        String deviceType = remotePrarm.getDeviceType();
+        String orderType = deviceType2OrderType(deviceType);
+        boolean UpdateFlag = false;
 
         //鍚姩杩滅▼鍗囩骇鍛戒护
         boolean startRemoteUpdateFlag = remoteUpdateService.StartRemoteUpdate(orderType, remotePrarm.getMac(), remotePrarm.getHardwareVersion()
@@ -179,43 +145,9 @@
 //        if (!permissionConfig.check(MenuEnum.REMOTE_UPDATE_START.getCode())) {
 //            return ResponseUtil.fail("缂哄皯瀵瑰簲鐢ㄦ埛鏉冮檺");
 //        }
-        String orderType;
-        String deviceType;
+        String deviceType = remotePrarm.getDeviceType();
 
-        if(remotePrarm.getDeviceType()==null){
-            throw new BusinessException("鍗囩骇纭欢璁惧绫诲瀷鎸囦护鏈夎锛岃纭锛�");
-        }
-        if (RemoteUpdateTypeEnum.MQTT_MAIN.equals(remotePrarm.getDeviceType())) {
-            //MQTT涓绘澘
-            orderType = A5OrderEnum.REQUEST_LIGHT_DATA.getCode();
-            deviceType=RemoteUpdateTypeEnum.MQTT_MAIN;
-        } else if (RemoteUpdateTypeEnum.MQTT_CORE.equals(remotePrarm.getDeviceType())) {
-            //MQTT鏍稿績鏉�
-            orderType = A5OrderEnum.REQUEST_LIGHT_DATA.getCode();
-            deviceType=RemoteUpdateTypeEnum.MQTT_CORE;
-        } else if (RemoteUpdateTypeEnum.LIGHT.equals(remotePrarm.getDeviceType())) {
-            //鍗曠伅妯″潡
-            orderType = A5OrderEnum.REQUEST_LIGHT_DATA.getCode();
-            deviceType=RemoteUpdateTypeEnum.LIGHT;
-        } else if (RemoteUpdateTypeEnum.C3_CHARGING.equals(remotePrarm.getDeviceType())) {
-            //C3鍏呯數妗╂ā鍧�
-            orderType = A5OrderEnum.REQUEST_C3_DATA.getCode();
-            deviceType=RemoteUpdateTypeEnum.C3_CHARGING;
-        } else if (RemoteUpdateTypeEnum.CAT1_MAIN.equals(remotePrarm.getDeviceType())) {
-            //Cat.1涓绘澘
-            orderType = A5OrderEnum.REQUEST_LIGHT_DATA.getCode();
-            deviceType=RemoteUpdateTypeEnum.CAT1_MAIN;
-        } else if (RemoteUpdateTypeEnum.LIGHT_POLE_HELING.equals(remotePrarm.getDeviceType())) {
-            //鐏潌鍊炬枩妯″潡
-            orderType = A5OrderEnum.REQUEST_POLE_MONITOR_DATA.getCode();
-            deviceType=RemoteUpdateTypeEnum.LIGHT_POLE_HELING;
-        } else if (RemoteUpdateTypeEnum.AIR_EQUIPMENT.equals(remotePrarm.getDeviceType())) {
-            //澶ф皵璁惧妯″潡
-            orderType = A5OrderEnum.REQUEST_ATMOSPHERE_DATA.getCode();
-            deviceType=RemoteUpdateTypeEnum.AIR_EQUIPMENT;
-        } else {
-            throw new BusinessException("鍗囩骇纭欢璁惧绫诲瀷鎸囦护鏈夎锛岃纭锛�");
-        }
+        isDeviceType(deviceType);
 
         RemoteUpgradeProgress progress = new RemoteUpgradeProgress();
         String s = RedisUtils.getBean().get(deviceType + ":" + SecurityUtils.getUserId() + remotePrarm.getMac());
@@ -250,24 +182,7 @@
         if (remotePrarm.getMac() == null || remotePrarm.getDeviceType() == null) {
             throw new BusinessException("缂哄皯鐩稿叧鍙傛暟锛�");
         }
-        String orderType;
-        switch (remotePrarm.getDeviceType()) {
-            case "MQTT涓插彛":
-            case "CAT1":
-                orderType = A5OrderEnum.REQUEST_LIGHT_DATA.getCode();
-                break;
-            case "澶ф皵":
-                orderType = A5OrderEnum.REQUEST_ATMOSPHERE_DATA.getCode();
-                break;
-            case "C3鍏呯數妗�":
-                orderType = A5OrderEnum.REQUEST_C3_DATA.getCode();
-                break;
-            case "鏉嗕綋鍊炬枩":
-                orderType = A5OrderEnum.REQUEST_POLE_MONITOR_DATA.getCode();
-                break;
-            default:
-                throw new BusinessException("鍗囩骇纭欢璁惧绫诲瀷鎸囦护鏈夎锛岃纭锛�");
-        }
+        String orderType = deviceType2OrderType(remotePrarm.getDeviceType());
 
         //鏈嶅姟鍣ㄤ笅鍙戝崌绾х粨鏋滄煡璇�
         String result = remoteUpdateService.SearchUpdateResult(orderType, remotePrarm.getMac());
@@ -288,24 +203,7 @@
         if (remotePrarm.getMac() == null || remotePrarm.getDeviceType() == null) {
             throw new BusinessException("缂哄皯鐩稿叧鍙傛暟锛�");
         }
-        String orderType;
-        switch (remotePrarm.getDeviceType()) {
-            case "MQTT涓插彛":
-            case "CAT1":
-                orderType = A5OrderEnum.REQUEST_LIGHT_DATA.getCode();
-                break;
-            case "澶ф皵":
-                orderType = A5OrderEnum.REQUEST_ATMOSPHERE_DATA.getCode();
-                break;
-            case "C3鍏呯數妗�":
-                orderType = A5OrderEnum.REQUEST_C3_DATA.getCode();
-                break;
-            case "鏉嗕綋鍊炬枩":
-                orderType = A5OrderEnum.REQUEST_POLE_MONITOR_DATA.getCode();
-                break;
-            default:
-                throw new BusinessException("鍗囩骇纭欢璁惧绫诲瀷鎸囦护鏈夎锛岃纭锛�");
-        }
+        String orderType = deviceType2OrderType(remotePrarm.getDeviceType());
 
         //鏈嶅姟鍣ㄤ笅鍙戝崌绾х粨鏋滄煡璇�
         boolean flag = remoteUpdateService.stopUpdate(orderType, remotePrarm.getMac());
@@ -315,4 +213,66 @@
             return ResponseUtil.success("绱ф�ョ粨鏉熷崌绾уけ璐�");
         }
     }
+
+    /**
+     * 璁惧绫诲瀷杞寚浠ょ被鍨�
+     *
+     * @param deviceType
+     * @return
+     */
+    private String deviceType2OrderType(String deviceType) {
+        String orderType;
+        if (RemoteUpdateTypeEnum.MQTT_MAIN.equals(deviceType)) {
+            //MQTT涓绘澘
+            orderType = A5OrderEnum.REQUEST_LIGHT_DATA.getCode();
+        } else if (RemoteUpdateTypeEnum.MQTT_CORE.equals(deviceType)) {
+            //MQTT鏍稿績鏉�
+            orderType = A5OrderEnum.REQUEST_LIGHT_DATA.getCode();
+        } else if (RemoteUpdateTypeEnum.LIGHT.equals(deviceType)) {
+            //鍗曠伅妯″潡
+            orderType = A5OrderEnum.REQUEST_LIGHT_DATA.getCode();
+        } else if (RemoteUpdateTypeEnum.C3_CHARGING.equals(deviceType)) {
+            //C3鍏呯數妗╂ā鍧�
+            orderType = A5OrderEnum.REQUEST_C3_DATA.getCode();
+        } else if (RemoteUpdateTypeEnum.CAT1_MAIN.equals(deviceType)) {
+            //Cat.1涓绘澘
+            orderType = A5OrderEnum.REQUEST_LIGHT_DATA.getCode();
+        } else if (RemoteUpdateTypeEnum.LIGHT_POLE_HELING.equals(deviceType)) {
+            //鐏潌鍊炬枩妯″潡
+            orderType = A5OrderEnum.REQUEST_POLE_MONITOR_DATA.getCode();
+        } else if (RemoteUpdateTypeEnum.AIR_EQUIPMENT.equals(deviceType)) {
+            //澶ф皵璁惧妯″潡
+            orderType = A5OrderEnum.REQUEST_ATMOSPHERE_DATA.getCode();
+        } else {
+            throw new BusinessException("鍗囩骇纭欢璁惧绫诲瀷鎸囦护鏈夎锛岃纭锛�");
+        }
+        return orderType;
+    }
+
+    /**
+     * 鏄惁涓虹郴缁熷唴鐨勮澶囩被鍨�
+     *
+     * @param deviceType
+     * @return
+     */
+    private boolean isDeviceType(String deviceType) {
+        if (RemoteUpdateTypeEnum.MQTT_MAIN.equals(deviceType)) {
+            //MQTT涓绘澘
+        } else if (RemoteUpdateTypeEnum.MQTT_CORE.equals(deviceType)) {
+            //MQTT鏍稿績鏉�
+        } else if (RemoteUpdateTypeEnum.LIGHT.equals(deviceType)) {
+            //鍗曠伅妯″潡
+        } else if (RemoteUpdateTypeEnum.C3_CHARGING.equals(deviceType)) {
+            //C3鍏呯數妗╂ā鍧�
+        } else if (RemoteUpdateTypeEnum.CAT1_MAIN.equals(deviceType)) {
+            //Cat.1涓绘澘
+        } else if (RemoteUpdateTypeEnum.LIGHT_POLE_HELING.equals(deviceType)) {
+            //鐏潌鍊炬枩妯″潡
+        } else if (RemoteUpdateTypeEnum.AIR_EQUIPMENT.equals(deviceType)) {
+            //澶ф皵璁惧妯″潡
+        } else {
+            throw new BusinessException("鍗囩骇纭欢璁惧绫诲瀷鎸囦护鏈夎锛岃纭锛�");
+        }
+        return true;
+    }
 }

--
Gitblit v1.9.3