From e77e69a207dad75e1af2ee60c324306be8a43394 Mon Sep 17 00:00:00 2001
From: ‘liusuyi’ <1951119284@qq.com>
Date: 星期四, 14 九月 2023 15:06:13 +0800
Subject: [PATCH] 修复偶尔无法获取二级菜单列表的问题

---
 ard-work/src/main/java/com/ruoyi/health/controller/HealthController.java |   67 ++++++++++++++++++++++++++++++---
 1 files changed, 61 insertions(+), 6 deletions(-)

diff --git a/ard-work/src/main/java/com/ruoyi/health/controller/HealthController.java b/ard-work/src/main/java/com/ruoyi/health/controller/HealthController.java
index faf2331..b1385a1 100644
--- a/ard-work/src/main/java/com/ruoyi/health/controller/HealthController.java
+++ b/ard-work/src/main/java/com/ruoyi/health/controller/HealthController.java
@@ -4,6 +4,7 @@
 import com.alibaba.fastjson.JSONObject;
 import com.ruoyi.common.core.domain.entity.SysConfig;
 import com.ruoyi.health.client.EquipmentsHealthClient;
+import com.ruoyi.health.param.GetEquipmentAlertInfoParam;
 import com.ruoyi.health.param.GetFMTrendParam;
 import com.ruoyi.health.param.GetTrendParam;
 import com.ruoyi.system.service.ISysConfigService;
@@ -19,6 +20,7 @@
 
 import java.math.BigDecimal;
 import java.text.SimpleDateFormat;
+import java.util.ArrayList;
 import java.util.HashMap;
 import java.util.List;
 import java.util.Map;
@@ -69,7 +71,7 @@
     }
 
     @PreAuthorize("@ss.hasPermi('sy:syCar:getMeasureByEquipName')")
-    @ApiOperation("鑾峰彇鏌愪釜娌逛簳娴嬬偣鍒楄〃")
+    @ApiOperation("鏍规嵁name鑾峰彇鏌愪釜娌逛簳娴嬬偣鍒楄〃")
     @GetMapping("getMeasureByEquipName")
     public Results getMeasureByEquipName(String equipNumber){
         String url = configService.getHealth();
@@ -271,16 +273,30 @@
     }
 
     @PreAuthorize("@ss.hasPermi('sy:syCar:getMeasureByEquipKey')")
-    @ApiOperation("鑾峰彇鏌愪釜娌逛簳娴嬬偣鍒楄〃")
+    @ApiOperation("鏍规嵁key鑾峰彇鏌愪釜娌逛簳娴嬬偣鍒楄〃")
     @GetMapping("getMeasureByEquipKey")
-    public Results getMeasureByEquipKey(GetFMTrendParam getFMTrendParam){
+    public Results getMeasureByEquipKey(String equipKey){
+        JSONObject j = new JSONObject();
         String url = configService.getHealth();
-
-        return Results.succeed();
+        //鑾峰彇璁惧鐨勬祴鐐瑰垪琛�
+        Map<String, Object> hashMap = new HashMap<String, Object>();
+        hashMap.put("EquipKey", equipKey);
+        String eResult = ARDSoapUtil.postSoapResult(url, "GetMeasureByEquipKey", hashMap);
+        if ("".equals(eResult)) {
+            //杩斿洖缁撴灉涓虹┖
+            return Results.succeed("娌℃湁娴嬬偣淇℃伅");
+        }
+        Map<String, Object> map1 = (Map<String, Object>) JSON.parse((String) eResult);
+        if ((int) map1.get("code") == 200) {
+            j.put("code", map1.get("code"));
+            List<Map<String, Object>> list = (List<Map<String, Object>>) JSON.parse((String) map1.get("resdata"));
+            j.put("listResult", list);
+        }
+        return Results.succeed(j);
     }
 
     @PreAuthorize("@ss.hasPermi('sy:syCar:GetPartsAlertLeve')")
-    @ApiOperation("鑾峰彇鐐�")
+    @ApiOperation("鑾峰彇ID鑾峰彇鐐逛綅")
     @GetMapping("GetPartsAlertLevel")
     public Results GetPartsAlertLevel(Integer id){
         List<SysConfig> sysConfigs = configService.getAccPwd();
@@ -304,4 +320,43 @@
         Map<String, Object> map = EquipmentsHealthClient.GetPartsAlertLeve(GetPartsAlertLeveUrl, token,id);
         return Results.succeed(map);
     }
+
+    @PreAuthorize("@ss.hasPermi('sy:syCar:GetEquipmentAlertInfo')")
+    @ApiOperation("鏍规嵁ID鑾峰彇璇︾粏璇存槑")
+    @GetMapping("GetEquipmentAlertInfo")
+    public  Results GetEquipmentAlertInfo(GetEquipmentAlertInfoParam param){
+        Integer id = param.getId();
+        String key = param.getPosition();
+        List<SysConfig> sysConfigs = configService.getAccPwd();
+        String account = null,password = null,url = null;
+        for (int i = 0; i < sysConfigs.size(); i++) {
+            SysConfig sysConfig = sysConfigs.get(i);
+            if("eqHealthUrl".equals(sysConfig.getConfigKey())){
+                url = sysConfig.getConfigValue();
+            }
+            if("eqHealthAccount".equals(sysConfig.getConfigKey())){
+                account = sysConfig.getConfigValue();
+            }
+            if("eqHealthPassword".equals(sysConfig.getConfigKey())){
+                password = sysConfig.getConfigValue();
+            }
+        }
+        String tokenUrl = url+"/RoadFlowApi/Home/ValidLogin";
+        Map<String, Object> loginResult = EquipmentsHealthClient.getToken(tokenUrl, account, password);
+        String token = (String) ((Map<String, Object>) ((Map<String, Object>) loginResult.get("data")).get("data")).get("token");
+        String GetEquipmentAlertInfoUrl = url + "/RoadFlowApi/ZX/MeasureData/GetEquipmentAlertInfo";
+        Map<String, Object> map = EquipmentsHealthClient.GetEquipmentAlertInfo(GetEquipmentAlertInfoUrl, token,id);
+        List<Object> list = (List<Object>) ((Map<String, Object>) map.get("data")).get("rows");
+        List<Map<String,Object>> rList = new ArrayList<>();
+        if(list.size()>0){
+            for (int i = 0; i < list.size(); i++) {
+                Map<String,Object> listMap = (Map<String, Object>) list.get(i);
+                String position = (String) listMap.get("position");
+                if(key.equals(position)){
+                    rList.add(listMap);
+                }
+            }
+        }
+        return Results.succeed(rList);
+    }
 }

--
Gitblit v1.9.3