From 40f616cb7b272efa6693585303cc98802827e8e1 Mon Sep 17 00:00:00 2001
From: lizijie <lzjiiie@163.com>
Date: Thu, 11 Nov 2021 17:06:31 +0800
Subject: [PATCH] 报警信息按条件查询

---
 screen-api/src/main/java/com/moral/api/controller/AqiController.java |   81 ++++++++++++++++++++++++++++++----------
 1 files changed, 60 insertions(+), 21 deletions(-)

diff --git a/screen-api/src/main/java/com/moral/api/controller/AqiController.java b/screen-api/src/main/java/com/moral/api/controller/AqiController.java
index 640f34f..172fbad 100644
--- a/screen-api/src/main/java/com/moral/api/controller/AqiController.java
+++ b/screen-api/src/main/java/com/moral/api/controller/AqiController.java
@@ -1,5 +1,7 @@
 package com.moral.api.controller;
 
+import com.moral.api.pojo.dto.dataDisplay.PollutionLevelProportionDTO;
+import com.moral.api.service.CityAqiDailyService;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiImplicitParam;
 import io.swagger.annotations.ApiImplicitParams;
@@ -29,6 +31,8 @@
 
     @Autowired
     private CityAqiService cityAqiService;
+    @Autowired
+    private CityAqiDailyService cityAqiDailyService;
 
     @GetMapping("compareO3")
     @ApiOperation(value = "���������������������������", notes = "���������������������������")
@@ -45,42 +49,48 @@
     }
 
     /**
-    * @Description: ���������������6������aqi������
-            * @Param: [regionCode]
-            * @return: com.moral.constant.ResultMessage
-            * @Author: ���������
-            * @Date: 2021/11/1
-            */
+     * @Description: ���������������6������aqi������
+     * @Param: [regionCode]
+     * @return: com.moral.constant.ResultMessage
+     * @Author: ���������
+     * @Date: 2021/11/1
+     */
     @GetMapping("queryByRegionCode")
-    public ResultMessage queryByRegionCode(Integer regionCode){
+    public ResultMessage queryByRegionCode(Integer regionCode) {
         Map<String, Object> value = cityAqiService.queryCityAqiByRegionCode(regionCode);
         return ResultMessage.ok(value);
     }
 
     /**
-    * @Description: ������������24���������aqi������
-            * @Param: [regionCode]
-            * @return: com.moral.constant.ResultMessage
-            * @Author: ���������
-            * @Date: 2021/11/1
-            */
+     * @Description: ������������24���������aqi������
+     * @Param: [regionCode]
+     * @return: com.moral.constant.ResultMessage
+     * @Author: ���������
+     * @Date: 2021/11/1
+     */
     @GetMapping("query24HoursAQI")
-    public ResultMessage query24HoursAQIByRegionCode(Integer regionCode){
+    public ResultMessage query24HoursAQIByRegionCode(Integer regionCode) {
         Map<String, Object> datas = cityAqiService.query24HoursAqiByRegionCode(regionCode);
         return ResultMessage.ok(datas);
     }
 
     /**
-    * @Description: ���������������������aqi���������������������
-            * @Param: [RegionCode]
-            * @return: com.moral.constant.ResultMessage
-            * @Author: ���������
-            * @Date: 2021/11/2
-            */
+     * @Description: ���������������������aqi���������������������
+     * @Param: [RegionCode]
+     * @return: com.moral.constant.ResultMessage
+     * @Author: ���������
+     * @Date: 2021/11/2
+     */
     @GetMapping("queryTodayAqiAndPollutant")
-    public ResultMessage queryTodayAqiAndPollutant(Integer regionCode){
+    public ResultMessage queryTodayAqiAndPollutant(Integer regionCode) {
         Map<String, Object> datas = cityAqiService.queryTodayAqiAndPollutant(regionCode);
         return ResultMessage.ok(datas);
+    }
+
+    @GetMapping("queryPollutionLevelsForThisYear")
+    public ResultMessage queryPollutionLevelsForThisYear(Integer regionCode){
+        PollutionLevelProportionDTO dto = cityAqiDailyService.queryPollutionLevelsForThisYear(regionCode);
+        return ResultMessage.ok(dto);
     }
 
     @GetMapping("provincialRanking")
@@ -95,4 +105,33 @@
         Map<String, Object> response = cityAqiService.provincialRanking(organizationId);
         return ResultMessage.ok(response);
     }
+
+    @GetMapping("rankingDetails")
+    @ApiOperation(value = "������������", notes = "������������")
+    @ApiImplicitParams(value = {
+            @ApiImplicitParam(name = "type", value = "������������������������������today������������hour���������day���������month���������year���������������custom", required = true, paramType = "query", dataType = "String"),
+            @ApiImplicitParam(name = "time", value = "������������������������day,month,year���������������", required = true, paramType = "query", dataType = "String"),
+            @ApiImplicitParam(name = "start", value = "������������������������������custom���������������������������������������������2021-11-02", required = true, paramType = "query", dataType = "String"),
+            @ApiImplicitParam(name = "end", value = "������������������������������custom���������������������������������������������2021-11-03", required = true, paramType = "query", dataType = "String"),
+            @ApiImplicitParam(name = "cityType", value = "������������������������������province������������������city", required = true, paramType = "query", dataType = "String"),
+    })
+    public ResultMessage rankingDetails(HttpServletRequest request) {
+        Map<String, Object> params = WebUtils.getParametersStartingWith(request, null);
+        if (!params.containsKey("type") || !params.containsKey("cityType")) {
+            return ResultMessage.fail(ResponseCodeEnum.PARAMETERS_IS_MISSING.getCode(), ResponseCodeEnum.PARAMETERS_IS_MISSING.getMsg());
+        }
+        Object type = params.get("type");
+        if ("hour".equals(type) || "day".equals(type) || "month".equals(type) || "year".equals(type)) {
+            if (!params.containsKey("time")) {
+                return ResultMessage.fail(ResponseCodeEnum.PARAMETERS_IS_MISSING.getCode(), ResponseCodeEnum.PARAMETERS_IS_MISSING.getMsg());
+            }
+        }
+        if ("custom".equals(type)) {
+            if (!params.containsKey("start") || !params.containsKey("end")) {
+                return ResultMessage.fail(ResponseCodeEnum.PARAMETERS_IS_MISSING.getCode(), ResponseCodeEnum.PARAMETERS_IS_MISSING.getMsg());
+            }
+        }
+        List<Map<String, Object>> response = cityAqiService.rankingDetails(params);
+        return ResultMessage.ok(response);
+    }
 }

--
Gitblit v1.8.0