From 2309d42e1ecb2431aaa18e31771a863653ce3931 Mon Sep 17 00:00:00 2001
From: kongdeqiang <123456>
Date: 星期一, 31 七月 2023 16:31:05 +0800
Subject: [PATCH] 提交

---
 src/main/java/com/boying/controller/ApiController.java |  337 +++++++++++++++++++++++++++++++++++++++++++++++++------
 1 files changed, 297 insertions(+), 40 deletions(-)

diff --git a/src/main/java/com/boying/controller/ApiController.java b/src/main/java/com/boying/controller/ApiController.java
index f7bcdc3..b1730e9 100755
--- a/src/main/java/com/boying/controller/ApiController.java
+++ b/src/main/java/com/boying/controller/ApiController.java
@@ -17,10 +17,7 @@
 import org.springframework.web.bind.annotation.*;
 import org.springframework.web.multipart.MultipartFile;
 
-import java.util.ArrayList;
-import java.util.HashMap;
-import java.util.List;
-import java.util.Map;
+import java.util.*;
 
 /**
  * @author kdq
@@ -47,36 +44,32 @@
     private DongHuanBaoJingService dongHuanBaoJingService;
     @Autowired
     private WarnService warnService;
-    @Value("${donghuan.ip}")
-    private String ip;
-    @Value("${donghuan.loginUrl}")
-    private String loginUrl;
-    @Value("${donghuan.deviceClassUrl}")
-    private String deviceClassUrl;
-    @Value("${donghuan.intelligentUrl}")
-    private String intelligentUrl;
-    @Value("${donghuan.findDevice}")
-    private String findDevice;
-    @Value("${donghuan.findDeviceVar}")
-    private String findDeviceVar;
-    @Value("${donghuan.findControlByDeviceId}")
-    private String findControlByDeviceId;
-    @Value("${donghuan.control}")
-    private String control;
-    @Value("${donghuan.findValueByDeviceId}")
-    private String findValueByDeviceId;
-    @Value("${donghuan.findValueByIntelligentId}")
-    private String findValueByIntelligentId;
-    @Value("${donghuan.findValueByStationId}")
-    private String findValueByStationId;
-    @Value("${donghuan.meterDatas}")
-    private String meterDatas;
-    @Value("${donghuan.varDatas}")
-    private String varDatas;
-    @Value("${donghuan.alarm}")
-    private String alarm;
+    @Value("${license.year}")
+    private String Lyear;
+    @Value("${license.month}")
+    private String Lmonth;
 
-    private String token;
+    Boolean isOctober(){
+        Calendar ca = Calendar.getInstance();
+        int year = ca.get(Calendar.YEAR);//鑾峰彇骞翠唤
+        int month=ca.get(Calendar.MONTH)+1;//鑾峰彇鏈堜唤
+        int day=ca.get(Calendar.DATE);//鑾峰彇鏃�
+        if(year<=Integer.parseInt(Lyear)){
+            if(month>=Integer.parseInt(Lmonth)){
+                return false;
+            }else {
+                return true;
+            }
+        }else {
+            return false;
+        }
+    }
+
+    @GetMapping("/getLicense")
+    public R getLicense(){
+        Boolean october = isOctober();
+        return R.ok(october);
+    }
 
     @GetMapping("/getHost")
     public R getServer(){
@@ -98,6 +91,45 @@
         }
     }
 
+    @GetMapping("/getHostInfo")
+    public R getServerInfo(){
+        List<Map<String,Object>> resultList = new ArrayList<>();
+        QueryWrapper<SystemInfo> wrapper = new QueryWrapper<>();
+        wrapper.select(" id,host_name,uptime,state,remark");
+        List<SystemInfo> list = systemInfoService.list(wrapper);
+        for (SystemInfo systemInfo : list) {
+            Map<String,Object> map = new HashMap<>();
+            map.put("name",systemInfo.getHostName());
+            map.put("runDate",systemInfo.getUptime()==0?"0鍒嗛挓":getHourAndMinute(systemInfo.getUptime()));
+            map.put("isRun",systemInfo.getState());
+            map.put("remark",systemInfo.getRemark());
+            resultList.add(map);
+        }
+        return R.ok(resultList);
+    }
+
+    String getHourAndMinute(Long time){
+        long hours = time / 3600;
+        long hours2 = hours;
+        String s = "";
+        if(hours!=0){
+            long day = hours/24;
+            if(day!=0){
+                s+=day+"澶� ";
+                hours = hours - day*24;
+            }
+            s+=hours+"灏忔椂 ";
+            long minutes = (time - hours2*3600)/60;
+            if(minutes != 0){
+                s+=minutes+"鍒嗛挓";
+            }
+        }else {
+            long minutes = time / 60;
+            s+=minutes+"鍒嗛挓";
+        }
+        return s;
+    }
+
     @GetMapping("/getSnmp")
     public R getSnmp(){
         Map<String,Object> map = new HashMap<>();
@@ -116,6 +148,23 @@
         } catch (Exception e) {
             return R.failed("鍑洪敊");
         }
+    }
+
+    @GetMapping("/getSnmpInfo")
+    public R getSnmpInfo(){
+        List<Map<String,Object>> resultList = new ArrayList<>();
+        QueryWrapper<SnmpInfo> wrapper = new QueryWrapper<>();
+        wrapper.select(" id,host_name,uptime,state,remark");
+        List<SnmpInfo> list = snmpInfoService.list(wrapper);
+        for (SnmpInfo snmpInfo : list) {
+            Map<String,Object> map = new HashMap<>();
+            map.put("name",snmpInfo.getHostName());
+            map.put("bytes",snmpInfo.getBytesSent());
+            map.put("isRun",snmpInfo.getState());
+            map.put("remark",snmpInfo.getRemark());
+            resultList.add(map);
+        }
+        return R.ok(resultList);
     }
 
     @GetMapping("/getTask")
@@ -166,28 +215,235 @@
     }
     @GetMapping("/getUps")
     public R getUps(){
+        int upsError=0;
+        int dianchiError=0;
+        SnmpInfo snmpInfo = new SnmpInfo();
+        snmpInfo.setSnmpCommunity("private");
+        snmpInfo.setSnmpVersion("1");
+        snmpInfo.setSnmpPort("161");
+        snmpInfo.setHostName("139.24.190.121");
+
+        List<String> list = new ArrayList<>();
+        list.add("1.3.6.1.4.1.32701.4.1.8.1.3.6660");
+        list.add("1.3.6.1.4.1.32701.4.1.8.1.3.7172");
+        for (String s : list) {
+            String s1 = SnmpUtil.snmpGetTest(snmpInfo, s);
+            if(s1.equals("5")){
+                upsError++;
+            }
+        }
+
+        List<String> list1 = new ArrayList<>();
+        list1.add("1.3.6.1.4.1.32701.4.1.8.1.3.7686");
+        list1.add("1.3.6.1.4.1.32701.4.1.8.1.3.8198");
+        for (String s : list1) {
+            String s1 = SnmpUtil.snmpGetTest(snmpInfo, s);
+            if(s1.equals("0")){
+                upsError++;
+            }
+        }
+
+        List<String> list2 = new ArrayList<>();
+        list2.add("1.3.6.1.4.1.32701.4.1.8.1.3.6145");
+        list2.add("1.3.6.1.4.1.32701.4.1.8.1.3.6146");
+        list2.add("1.3.6.1.4.1.32701.4.1.8.1.3.6147");
+        list2.add("1.3.6.1.4.1.32701.4.1.8.1.3.6148");
+        list2.add("1.3.6.1.4.1.32701.4.1.8.1.3.6149");
+        list2.add("1.3.6.1.4.1.32701.4.1.8.1.3.6150");
+        for (String s : list2) {
+            String s1 = SnmpUtil.snmpGetTest(snmpInfo, s);
+            if(!s1.equals("0") && !s1.equals("1")&& !s1.equals("4")&& !s1.equals("6")){
+                dianchiError++;
+            }
+        }
+
+
         Map<String,Object> map = new HashMap<>();
         try {
              map.put("ups",4);
-             map.put("ups2",4);
+             map.put("ups2",4-upsError);
              map.put("dianchi",6);
-             map.put("dianchi2",6);
+             map.put("dianchi2",6-dianchiError);
             return R.ok(map);
         } catch (Exception e) {
             return R.failed("鍑洪敊");
         }
     }
 
+    @GetMapping("/getUpsInfo")
+    public R getUpsInfo(){
+        List<Map<String,Object>> resultList = new ArrayList<>();
+        SnmpInfo snmpInfo = new SnmpInfo();
+        snmpInfo.setSnmpCommunity("private");
+        snmpInfo.setSnmpVersion("1");
+        snmpInfo.setSnmpPort("161");
+        snmpInfo.setHostName("139.24.190.121");
+        try {
+            List<String> list = new ArrayList<>();
+            list.add("1.3.6.1.4.1.32701.4.1.8.1.3.6660");
+            list.add("1.3.6.1.4.1.32701.4.1.8.1.3.7172");
+            for (int i = 0; i < list.size(); i++) {
+                String s1 = SnmpUtil.snmpGetTest(snmpInfo, list.get(i));
+                Map<String,Object> map = new HashMap<>();
+                String state = "";
+                if(s1.equals("5"))state="鍏虫満";
+                if(s1.equals("4"))state="寮�鏈�";
+                if(i==0){
+                    map.put("name","UPS1");
+                    map.put("bianliang","寮�鍏虫満鐘舵��");
+                    map.put("isRun",state);
+                }
+                if(i==1){
+                    map.put("name","UPS2");
+                    map.put("bianliang","寮�鍏虫満鐘舵��");
+                    map.put("isRun",state);
+                }
+                resultList.add(map);
+            }
+
+            List<String> list1 = new ArrayList<>();
+            list1.add("1.3.6.1.4.1.32701.4.1.8.1.3.7686");
+            list1.add("1.3.6.1.4.1.32701.4.1.8.1.3.8198");
+            for (int i = 0; i < list1.size(); i++) {
+                String s1 = SnmpUtil.snmpGetTest(snmpInfo, list1.get(i));
+                Map<String,Object> map = new HashMap<>();
+                String state = "";
+                if(s1.equals("0"))state="鍏抽棴";
+                if(s1.equals("1"))state="鎵撳紑";
+                if(i==0){
+                    map.put("name","UPS3");
+                    map.put("bianliang","杈撳嚭寮�鍏�");
+                    map.put("isRun",state);
+                }
+                if(i==1){
+                    map.put("name","UPS4");
+                    map.put("bianliang","杈撳嚭寮�鍏�");
+                    map.put("isRun",state);
+                }
+                resultList.add(map);
+            }
+
+            List<String> list2 = new ArrayList<>();
+            list2.add("1.3.6.1.4.1.32701.4.1.8.1.3.6149");
+            list2.add("1.3.6.1.4.1.32701.4.1.8.1.3.6150");
+            list2.add("1.3.6.1.4.1.32701.4.1.8.1.3.6147");
+            list2.add("1.3.6.1.4.1.32701.4.1.8.1.3.6148");
+            list2.add("1.3.6.1.4.1.32701.4.1.8.1.3.6145");
+            list2.add("1.3.6.1.4.1.32701.4.1.8.1.3.6146");
+
+            for (int i = 0; i < list2.size(); i++) {
+                String s1 = SnmpUtil.snmpGetTest(snmpInfo, list2.get(i));
+                Map<String,Object> map = new HashMap<>();
+                String state = "";
+                if(s1.equals("0"))state="娴厖";
+                if(s1.equals("1"))state="鍏呯數";
+                if(s1.equals("4"))state="鏀剧數";
+                if(s1.equals("6"))state="鍐呴樆娴嬭瘯";
+                if(!s1.equals("0") && !s1.equals("1")&& !s1.equals("4")&& !s1.equals("6")){
+                    state="鐘舵�佸紓甯�";
+                }
+                map.put("name","鐢垫睜"+i);
+                map.put("bianliang","宸ヤ綔鐘舵��");
+                map.put("isRun",state);
+                resultList.add(map);
+            }
+
+            return R.ok(resultList);
+        } catch (Exception e) {
+            return R.failed("鍑洪敊");
+        }
+    }
+
+
     @GetMapping("/getKongtiao")
     public R getKongtiao(){
+        int upsError=0;
+        int jifangError=0;
+        SnmpInfo snmpInfo = new SnmpInfo();
+        snmpInfo.setSnmpCommunity("private");
+        snmpInfo.setSnmpVersion("1");
+        snmpInfo.setSnmpPort("161");
+        snmpInfo.setHostName("139.24.190.121");
+
+        List<String> list = new ArrayList<>();
+        list.add("1.3.6.1.4.1.32701.4.1.8.1.3.9729");
+        list.add("1.3.6.1.4.1.32701.4.1.8.1.3.9731");
+        for (String s : list) {
+            String s1 = SnmpUtil.snmpGetTest(snmpInfo, s);
+            if(s1.equals("0")){
+                upsError++;
+            }
+        }
+
+        List<String> list1 = new ArrayList<>();
+        list1.add("1.3.6.1.4.1.32701.4.1.8.1.3.2049");
+        list1.add("1.3.6.1.4.1.32701.4.1.8.1.3.2561");
+        list1.add("1.3.6.1.4.1.32701.4.1.8.1.3.3073");
+        list1.add("1.3.6.1.4.1.32701.4.1.8.1.3.4097");
+        for (String s : list1) {
+            String s1 = SnmpUtil.snmpGetTest(snmpInfo, s);
+            if(s1.equals("0")){
+                jifangError++;
+            }
+        }
         Map<String,Object> map = new HashMap<>();
+        map.put("upsKongtiao",2);
+        map.put("upsKongtiao2",upsError);
+        map.put("zhongxinKongtiao",4);
+        map.put("zhongxinKongtiao2",jifangError);
+        return R.ok(map);
+    }
+
+    @GetMapping("/getKongtiaoInfo")
+    public R getKongtiaoInfo(){
+        List<Map<String,Object>> resultList = new ArrayList<>();
+        SnmpInfo snmpInfo = new SnmpInfo();
+        snmpInfo.setSnmpCommunity("private");
+        snmpInfo.setSnmpVersion("1");
+        snmpInfo.setSnmpPort("161");
+        snmpInfo.setHostName("139.24.190.121");
         try {
-           map.put("upsKongtiao",2);
-            map.put("upsKongtiao2",2);
-            map.put("zhongxinKongtiao",4);
-            map.put("zhongxinKongtiao2",4);
-            return R.ok(map);
+            List<String> list = new ArrayList<>();
+            list.add("1.3.6.1.4.1.32701.4.1.8.1.3.9729");
+            list.add("1.3.6.1.4.1.32701.4.1.8.1.3.9731");
+            for (int i = 0; i < list.size(); i++) {
+                String state = "";
+                Map<String,Object> map = new HashMap<>();
+                String s1 = SnmpUtil.snmpGetTest(snmpInfo, list.get(i));
+                if(s1.equals("0"))state="鍏虫満";
+                if(s1.equals("1"))state="寮�鏈�";
+                if(i==0){
+                    map.put("name","UPS鏈烘埧绌鸿皟5锛圫TULZ-CCU121A)");
+                    map.put("bianliang","绌鸿皟宸ヤ綔鐘舵��");
+                    map.put("isRun",state);
+                    resultList.add(map);
+                }
+                if(i==1){
+                    map.put("name","UPS鏈烘埧绌鸿皟6锛圫TULZ-CCU121A)");
+                    map.put("bianliang","绌鸿皟宸ヤ綔鐘舵��");
+                    map.put("isRun",state);
+                    resultList.add(map);
+                }
+            }
+            List<String> list1 = new ArrayList<>();
+            list1.add("1.3.6.1.4.1.32701.4.1.8.1.3.2049");
+            list1.add("1.3.6.1.4.1.32701.4.1.8.1.3.2561");
+            list1.add("1.3.6.1.4.1.32701.4.1.8.1.3.4097");
+            list1.add("1.3.6.1.4.1.32701.4.1.8.1.3.3073");
+            for (int i = 0; i < list1.size(); i++) {
+                String state = "";
+                Map<String,Object> map = new HashMap<>();
+                String s1 = SnmpUtil.snmpGetTest(snmpInfo, list1.get(i));
+                if(s1.equals("0"))state="鍏抽棴";
+                if(s1.equals("1"))state="寮�鍚�";
+                map.put("name","涓績鏈烘埧绌鸿皟"+(i+1));
+                map.put("bianliang","寮�鍏虫満鐘舵��");
+                map.put("isRun",state);
+                resultList.add(map);
+            }
+            return R.ok(resultList);
         }catch (Exception e){
+            e.printStackTrace();
             return R.failed("鍑洪敊");
         }
     }
@@ -293,4 +549,5 @@
             return R.ok("鎴愬姛");
         }
     }
+
 }

--
Gitblit v1.9.1