From 7716cf0a84e88f27e05ab70346f79c4781e5692a Mon Sep 17 00:00:00 2001
From: aijinhui <aijinhui>
Date: 星期二, 12 九月 2023 09:48:25 +0800
Subject: [PATCH] 设备健康点位

---
 ruoyi-system/src/main/java/com/ruoyi/system/service/ISysConfigService.java         |    5 +
 ruoyi-system/src/main/java/com/ruoyi/system/mapper/SysConfigMapper.java            |    4 +
 ard-work/src/main/java/com/ruoyi/health/controller/HealthController.java           |   27 +++++++++
 ard-work/src/main/java/com/ruoyi/health/client/EquipmentsHealthClient.java         |  130 +++++++++++++++++++++++++++++++++++++++++++
 ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysConfigServiceImpl.java |    7 ++
 5 files changed, 172 insertions(+), 1 deletions(-)

diff --git a/ard-work/src/main/java/com/ruoyi/health/client/EquipmentsHealthClient.java b/ard-work/src/main/java/com/ruoyi/health/client/EquipmentsHealthClient.java
new file mode 100644
index 0000000..da380b2
--- /dev/null
+++ b/ard-work/src/main/java/com/ruoyi/health/client/EquipmentsHealthClient.java
@@ -0,0 +1,130 @@
+package com.ruoyi.health.client;
+
+import com.alibaba.fastjson.JSON;
+import okhttp3.FormBody.Builder;
+import okhttp3.*;
+
+import java.io.IOException;
+import java.util.HashMap;
+import java.util.Map;
+
+public class EquipmentsHealthClient {
+	public static Map<String,Object> getToken(String url,String account,String password){//鑾峰彇token
+		OkHttpClient okHttpClient = new OkHttpClient();
+		RequestBody formBody = new Builder()
+                .add("account", account)
+                .add("password", password)
+                .build();
+
+        Request request = new Request.Builder().url(url).post(formBody).build();
+
+        Response response = null;
+        try {
+            response = okHttpClient.newCall(request).execute();
+        } catch (IOException e1) {
+            // TODO Auto-generated catch block
+            e1.printStackTrace();
+        }
+
+        ResponseBody responseBody = response.body();
+
+        try {
+            String message = responseBody.string();
+            Map<String,Object> result = (Map<String, Object>) JSON.parse(message);
+            return result;
+        } catch (IOException e) {
+            // TODO Auto-generated catch block
+            e.printStackTrace();
+            return new HashMap();
+        }
+	}
+
+	public static Map<String,Object> getMeasureStatisticsList(String url,String token){//鎵�鏈変紶鎰熷櫒缁熻淇℃伅
+		MediaType mediaType = MediaType.parse("application/json; charset=utf-8");
+        OkHttpClient okHttpClient = new OkHttpClient();
+
+        RequestBody body = RequestBody.create(mediaType, "");
+        Request request = new Request.Builder().url(url).post(body).addHeader("roadflow-token",token).build();
+
+        Response response = null;
+        try {
+            response = okHttpClient.newCall(request).execute();
+        } catch (IOException e1) {
+            // TODO Auto-generated catch block
+            e1.printStackTrace();
+        }
+
+        ResponseBody responseBody = response.body();
+
+        try {
+            String message = responseBody.string();// 鍝嶅簲浣�
+            Map<String,Object> map0 = (Map<String, Object>) JSON.parse(message);
+            return map0;
+        } catch (IOException e) {
+            // TODO Auto-generated catch block
+            e.printStackTrace();
+            return new HashMap();
+        }
+	}
+
+	public static Map<String,Object> GetEquipInfo(String url,String token,Integer equipId){//鑾峰彇鍗曞彴娌逛簳淇℃伅鍜屾祴鐐�
+		OkHttpClient okHttpClient = new OkHttpClient();
+		RequestBody formBody = new Builder()
+                .add("equipId", String.valueOf(equipId))
+                .build();
+        
+        Request request = new Request.Builder().url(url).post(formBody).addHeader("roadflow-token",token).build();
+       
+        Response response = null;
+        try {
+            response = okHttpClient.newCall(request).execute();
+        } catch (IOException e1) {
+            // TODO Auto-generated catch block
+            e1.printStackTrace();
+        }
+
+        ResponseBody responseBody = response.body();
+
+        try {
+            String message = responseBody.string();
+            System.out.println("////////////");
+            System.out.println(message);
+            Map<String,Object> result = (Map<String, Object>) JSON.parse(message);
+            return result;
+        } catch (IOException e) {
+            // TODO Auto-generated catch block
+            e.printStackTrace();
+            return new HashMap();
+        }
+	}
+
+    public static Map<String,Object> GetPartsAlertLeve(String url,String token){//鑾峰彇鍗曞彴娌逛簳淇℃伅鍜屾祴鐐�
+        OkHttpClient okHttpClient = new OkHttpClient();
+        RequestBody formBody = new FormBody.Builder()
+                .build();
+
+        Request request = new Request.Builder().url(url).post(formBody).addHeader("roadflow-token",token).build();
+
+        Response response = null;
+        try {
+            response = okHttpClient.newCall(request).execute();
+        } catch (IOException e1) {
+            // TODO Auto-generated catch block
+            e1.printStackTrace();
+        }
+
+        ResponseBody responseBody = response.body();
+
+        try {
+            String message = responseBody.string();
+            System.out.println("////////////");
+            System.out.println(message);
+            Map<String,Object> result = (Map<String, Object>) JSON.parse(message);
+            return result;
+        } catch (IOException e) {
+            // TODO Auto-generated catch block
+            e.printStackTrace();
+            return new HashMap();
+        }
+    }
+}
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 c3cdb5a..25a597c 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
@@ -2,7 +2,9 @@
 
 import com.alibaba.fastjson.JSON;
 import com.alibaba.fastjson.JSONObject;
+import com.ruoyi.common.core.domain.entity.SysConfig;
 import com.ruoyi.common.utils.SecurityUtils;
+import com.ruoyi.health.client.EquipmentsHealthClient;
 import com.ruoyi.health.param.GetFMTrendParam;
 import com.ruoyi.health.param.GetTrendParam;
 import com.ruoyi.system.service.ISysConfigService;
@@ -277,4 +279,29 @@
 
         return Results.succeed();
     }
+
+    @PreAuthorize("@ss.hasPermi('sy:syCar:GetPartsAlertLeve')")
+    @ApiOperation("鑾峰彇鐐�")
+    @GetMapping("GetPartsAlertLeve")
+    public Results GetPartsAlertLeve(){
+        List<SysConfig> sysConfigs = configService.getAccPwd();
+        String acc = null,pwd = null,hu = null;
+        for (int i = 0; i < sysConfigs.size(); i++) {
+            SysConfig sysConfig = sysConfigs.get(i);
+            if("eqHealthUrl".equals(sysConfig.getConfigKey())){
+                hu = sysConfig.getConfigValue();
+            }
+            if("eqHealthAccount".equals(sysConfig.getConfigKey())){
+                acc = sysConfig.getConfigValue();
+            }
+            if("eqHealthPassword".equals(sysConfig.getConfigKey())){
+                pwd = sysConfig.getConfigValue();
+            }
+        }
+        Map<String, Object> loginResult = EquipmentsHealthClient.getToken(hu, acc, pwd);
+        String token = (String) ((Map<String, Object>) ((Map<String, Object>) loginResult.get("data")).get("data")).get("token");
+        String GetPartsAlertLeveUrl = hu + "/RoadFlowApi/ZX/MeasureData/GetPartsAlertLeve";
+        Map<String, Object> map = EquipmentsHealthClient.GetPartsAlertLeve(GetPartsAlertLeveUrl, token);
+        return Results.succeed(map);
+    }
 }
diff --git a/ruoyi-system/src/main/java/com/ruoyi/system/mapper/SysConfigMapper.java b/ruoyi-system/src/main/java/com/ruoyi/system/mapper/SysConfigMapper.java
index 6918853..436393d 100644
--- a/ruoyi-system/src/main/java/com/ruoyi/system/mapper/SysConfigMapper.java
+++ b/ruoyi-system/src/main/java/com/ruoyi/system/mapper/SysConfigMapper.java
@@ -1,6 +1,8 @@
 package com.ruoyi.system.mapper;
 
 import java.util.List;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
 import com.ruoyi.common.core.domain.entity.SysConfig;
 
 /**
@@ -8,7 +10,7 @@
  * 
  * @author ruoyi
  */
-public interface SysConfigMapper
+public interface SysConfigMapper extends BaseMapper<SysConfig>
 {
     /**
      * 鏌ヨ鍙傛暟閰嶇疆淇℃伅
diff --git a/ruoyi-system/src/main/java/com/ruoyi/system/service/ISysConfigService.java b/ruoyi-system/src/main/java/com/ruoyi/system/service/ISysConfigService.java
index 6305d48..b54d784 100644
--- a/ruoyi-system/src/main/java/com/ruoyi/system/service/ISysConfigService.java
+++ b/ruoyi-system/src/main/java/com/ruoyi/system/service/ISysConfigService.java
@@ -98,4 +98,9 @@
      * @return
      */
     String getHealth();
+
+    /**
+     * 璁惧鍋ュ悍璐﹀彿瀵嗙爜鍦板潃
+     */
+    List<SysConfig> getAccPwd();
 }
diff --git a/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysConfigServiceImpl.java b/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysConfigServiceImpl.java
index 95141d2..182b371 100644
--- a/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysConfigServiceImpl.java
+++ b/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysConfigServiceImpl.java
@@ -4,7 +4,9 @@
 import java.util.List;
 import javax.annotation.PostConstruct;
 import javax.annotation.Resource;
+import javax.management.Query;
 
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import org.springframework.stereotype.Service;
 import com.ruoyi.common.annotation.DataSource;
 import com.ruoyi.common.constant.CacheConstants;
@@ -250,4 +252,9 @@
             return "";
         }
     }
+
+    @Override
+    public List<SysConfig> getAccPwd() {
+        return configMapper.selectList(new QueryWrapper<SysConfig>().in("config_key","eqHealthUrl","eqHealthAccount","eqHealthPassword"));
+    }
 }

--
Gitblit v1.9.3