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