From aa86cb57b09c5300db3c33d75d91d8b51a4b636f Mon Sep 17 00:00:00 2001
From: 13693261870 <252740454@qq.com>
Date: 星期五, 16 六月 2023 09:27:45 +0800
Subject: [PATCH] 1

---
 src/main/java/com/yssh/controller/WarningAnalyseController.java |   71 ++++++++++++++++++++++++-----------
 1 files changed, 48 insertions(+), 23 deletions(-)

diff --git a/src/main/java/com/yssh/controller/WarningAnalyseController.java b/src/main/java/com/yssh/controller/WarningAnalyseController.java
index a225299..4fd7aca 100644
--- a/src/main/java/com/yssh/controller/WarningAnalyseController.java
+++ b/src/main/java/com/yssh/controller/WarningAnalyseController.java
@@ -1,11 +1,15 @@
 package com.yssh.controller;
 
+import com.yssh.entity.Qxsh;
+import com.yssh.utils.CacheUtils;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiOperation;
 
 import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.format.annotation.DateTimeFormat;
 import org.springframework.web.bind.annotation.GetMapping;
 import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RequestParam;
 import org.springframework.web.bind.annotation.RestController;
 
 import com.github.xiaoymin.knife4j.annotations.ApiOperationSupport;
@@ -18,7 +22,7 @@
 import java.util.Map;
 import java.util.concurrent.ConcurrentHashMap;
 
-@Api(tags="鍛婅鍒嗘瀽")
+@Api(tags = "鍛婅鍒嗘瀽")
 @RequestMapping("/warning")
 @RestController
 @SuppressWarnings("rawtypes")
@@ -27,11 +31,7 @@
     @Autowired
     private IWarningAnalyseService warningService;
 
-    private static ConcurrentHashMap<String, Object> cache = new ConcurrentHashMap<>(5);
-
     private SimpleDateFormat dateFormat = new SimpleDateFormat("yyyyMMdd");
-
-    public static final long CACHE_HOLD_TIME_24H = 24 * 60 * 60 * 1000L;
 
     /**
      * 1.鏌ヨ褰撳墠鏃堕棿鐨勬墍鏈夌偣浣峷alue鍊硷紙浠�47.dat鏌ヨ鍗冲彲锛�
@@ -76,15 +76,18 @@
         //return Result.OK(warningService.selectEachLocationDataChange());
 
         String key = dateFormat.format(new Date()) + "_local";
+        Object obj = CacheUtils.get(key);
         Map<String, List<Double>> map;
-        if (cache.containsKey(key)) {
-            map = (Map<String, List<Double>>) cache.get(key);
-        } else {
-            map = warningService.selectEachLocationDataChange();
-            if (null != map && map.size() > 0) {
-                cache.put(key, map);
-            }
-        }
+
+        //if (null != obj) {
+        //    map = (Map<String, List<Double>>) obj;
+        //} else {
+            //map = warningService.selectEachLocationDataChange();
+            map = warningService.select3Hours();
+        //    if (null != map && map.size() > 0) {
+        //        CacheUtils.put(key, map);
+        //    }
+        //}
 
         return Result.ok(map);
     }
@@ -95,17 +98,39 @@
     public Result monthTop10() {
         //return Result.OK(warningService.selectThisMonthLocationValueDataTop10());
 
-        String key = dateFormat.format(new Date()) + "_top10";
-        List<Map<String, Object>> list;
-        if (cache.containsKey(key)) {
-            list = (List<Map<String, Object>>) cache.get(key);
-        } else {
-            list = warningService.selectThisMonthLocationValueDataTop10();
-            if (null != list && list.size() > 0) {
-                cache.put(key, list);
-            }
+        //String key = dateFormat.format(new Date()) + "_top10";
+        //Object obj = CacheUtils.get(key);
+        List<Qxsh> list;
+
+        //if (null != obj) {
+        //    list = (List<Qxsh>) obj;
+        //} else {
+            //list = warningService.selectThisMonthLocationValueDataTop10();
+            list = warningService.selectMonthTop10();
+        //    if (null != list && list.size() > 0) {
+        //        CacheUtils.put(key, list);
+        //    }
+        //}
+
+        return Result.ok(list);
+    }
+
+    @ApiOperationSupport(order = 5)
+    @ApiOperation(value = "鏍规嵁鏃堕棿鑾峰彇鎶ヨ鍜岄璀︿俊鎭�", notes = "鏍规嵁鏃堕棿鑾峰彇鎶ヨ鍜岄璀︿俊鎭�")
+    @GetMapping("/getAlarmAndWarnByTime")
+    public Result getAlarmAndWarnByTime(
+            @RequestParam(value = "begin", required = true) @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") Date begin,
+            @RequestParam(value = "end", required = true) @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") Date end) {
+        if (null == begin || null == end) {
+            return Result.error(null);
         }
 
-        return Result.OK(list);
+        if (begin.getTime() > end.getTime()) {
+            Date tmp = end;
+            begin = end;
+            end = tmp;
+        }
+
+        return Result.OK(warningService.getAlarmAndWarnByTime(begin, end));
     }
 }

--
Gitblit v1.9.3