From 60477d72e953fc73744943db3c63f26d8eb94a19 Mon Sep 17 00:00:00 2001
From: kaiyu <404897439@qq.com>
Date: Mon, 22 Nov 2021 09:19:43 +0800
Subject: [PATCH] screen-api            增加获取柱状图表格数据的mock接口

---
 screen-api/src/main/java/com/moral/api/controller/AqiController.java |  337 +++++++++++++++++++++++++++++++++++++++++++++----------
 1 files changed, 272 insertions(+), 65 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 c7f4672..c3210a4 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,11 @@
 package com.moral.api.controller;
 
+import com.moral.api.pojo.dto.cityAQI.BarChartOfPollutionLevelVO;
+import com.moral.api.pojo.dto.cityAQI.BarChartTableOfPollutionLevelVO;
+import com.moral.api.pojo.dto.cityAQI.PieChartOfPollutionLevelVO;
+import com.moral.api.pojo.form.aqi.QueryPieChartOfPollutionLevelForm;
+import com.moral.api.service.CityAqiDailyService;
+
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiImplicitParam;
 import io.swagger.annotations.ApiImplicitParams;
@@ -11,10 +17,7 @@
 import org.springframework.web.bind.annotation.RequestMapping;
 import org.springframework.web.bind.annotation.RestController;
 
-import java.util.ArrayList;
-import java.util.HashMap;
-import java.util.List;
-import java.util.Map;
+import java.util.*;
 
 import javax.servlet.http.HttpServletRequest;
 
@@ -31,6 +34,8 @@
 
     @Autowired
     private CityAqiService cityAqiService;
+    @Autowired
+    private CityAqiDailyService cityAqiDailyService;
 
     @GetMapping("compareO3")
     @ApiOperation(value = "���������������������������", notes = "���������������������������")
@@ -73,85 +78,287 @@
     }
 
     /**
-    * @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);
+    }
+
+    /**
+     * @Description: ������������������������������������������������
+     * @Param: [regionCode]
+     * @return: com.moral.constant.ResultMessage
+     * @Author: ���������
+     * @Date: 2021/11/11
+     */
+    @GetMapping("queryPieChartOfPollutionLevel")
+    public ResultMessage queryPieChartOfPollutionLevel(QueryPieChartOfPollutionLevelForm form) {
+        //������������������������
+        if (!form.valid())
+            return ResultMessage.fail(ResponseCodeEnum.PARAMETERS_IS_MISSING.getCode(),
+                    ResponseCodeEnum.PARAMETERS_IS_MISSING.getMsg());
+
+        PieChartOfPollutionLevelVO VO = cityAqiDailyService.queryPieChartOfPollutionLevels(form);
+        return ResultMessage.ok(VO);
+    }
+
+    @GetMapping("test1")
+    public ResultMessage test1(){
+        List<PieChartOfPollutionLevelVO> dtos = new ArrayList<>();
+        PieChartOfPollutionLevelVO dto = new PieChartOfPollutionLevelVO();
+        dto.setTime("2021-11");
+        dto.setTotalDays(10);
+        List<Map<String,Object>> list = new ArrayList<>();
+        Map<String,Object> map = new HashMap<>();
+        map.put("proportion","40%");
+        map.put("days",4);
+        map.put("pollution",0);
+        list.add(map);
+
+        Map<String,Object> map1 = new HashMap<>();
+        map1.put("proportion","30%");
+        map1.put("days",3);
+        map1.put("pollution",1);
+        list.add(map1);
+
+        Map<String,Object> map2 = new HashMap<>();
+        map2.put("proportion","30%");
+        map2.put("days",3);
+        map2.put("pollution",2);
+        list.add(map2);
+
+        Map<String,Object> map3 = new HashMap<>();
+        map3.put("proportion","0%");
+        map3.put("days",0);
+        map3.put("pollution",3);
+        list.add(map3);
+
+        Map<String,Object> map4 = new HashMap<>();
+        map4.put("proportion","0%");
+        map4.put("days",0);
+        map4.put("pollution",4);
+        list.add(map4);
+
+        Map<String,Object> map5 = new HashMap<>();
+        map5.put("proportion","0%");
+        map5.put("days",0);
+        map5.put("pollution",5);
+        list.add(map5);
+        dto.setValues(list);
+
+        PieChartOfPollutionLevelVO dto1 = new PieChartOfPollutionLevelVO();
+        dto1.setTime("2021-11");
+        List<Map<String,Object>> list1 = new ArrayList<>();
+
+        Map<String,Object> map11 = new HashMap<>();
+        map11.put("proportion","40%");
+        map11.put("days",4);
+        map11.put("pollution",0);
+        list1.add(map11);
+
+        Map<String,Object> map12 = new HashMap<>();
+        map12.put("proportion","30%");
+        map12.put("days",3);
+        map12.put("pollution",1);
+        list1.add(map12);
+
+        Map<String,Object> map13 = new HashMap<>();
+        map13.put("proportion","30%");
+        map13.put("days",3);
+        map13.put("pollution",2);
+        list1.add(map13);
+
+        Map<String,Object> map14 = new HashMap<>();
+        map14.put("proportion","0%");
+        map14.put("days",0);
+        map14.put("pollution",3);
+        list1.add(map14);
+
+        Map<String,Object> map15 = new HashMap<>();
+        map15.put("proportion","0%");
+        map15.put("days",0);
+        map15.put("pollution",4);
+        list1.add(map15);
+
+        Map<String,Object> map16 = new HashMap<>();
+        map16.put("proportion","0%");
+        map16.put("days",0);
+        map16.put("pollution",5);
+        list1.add(map16);
+        dto1.setValues(list1);
+        dto1.setTotalDays(10);
+
+        dtos.add(dto);
+        dtos.add(dto1);
+        return ResultMessage.ok(dtos);
+    }
+
+    @GetMapping("queryBarChartOfPollutionLevel")
+    public ResultMessage queryBarChartOfPollutionLevel(){
+        BarChartOfPollutionLevelVO dto = new BarChartOfPollutionLevelVO();
+        List<String> time = new ArrayList<>();
+        time.add("2021-10");
+        time.add("2021-11");
+        List<Map<String,Object>> values = new ArrayList<>();
+
+        Map<String,Object> map1 = new HashMap<>();
+        map1.put("pollution",0);
+        List<Integer> days1 = new ArrayList<>();
+        days1.add(4);
+        days1.add(6);
+        List<String> proportion1 = new ArrayList<>();
+        proportion1.add("40%");
+        proportion1.add("60%");
+        map1.put("days",days1);
+        map1.put("proportion",proportion1);
+
+        Map<String,Object> map2 = new HashMap<>();
+        map2.put("pollution",1);
+        List<Integer> days2 = new ArrayList<>();
+        days2.add(1);
+        days2.add(0);
+        List<String> proportion2 = new ArrayList<>();
+        proportion2.add("10%");
+        proportion2.add("0%");
+        map2.put("days",days2);
+        map2.put("proportion",proportion2);
+
+        Map<String,Object> map3 = new HashMap<>();
+        map3.put("pollution",2);
+        List<Integer> days3 = new ArrayList<>();
+        days3.add(1);
+        days3.add(0);
+        List<String> proportion3 = new ArrayList<>();
+        proportion3.add("10%");
+        proportion3.add("0%");
+        map3.put("days",days3);
+        map3.put("proportion",proportion3);
+
+
+        Map<String,Object> map4 = new HashMap<>();
+        map4.put("pollution",3);
+        List<Integer> days4 = new ArrayList<>();
+        days4.add(2);
+        days4.add(2);
+        List<String> proportion4 = new ArrayList<>();
+        proportion4.add("20%");
+        proportion4.add("20%");
+        map4.put("days",days4);
+        map4.put("proportion",proportion4);
+
+
+        Map<String,Object> map5 = new HashMap<>();
+        map5.put("pollution",4);
+        List<Integer> days5 = new ArrayList<>();
+        days5.add(2);
+        days5.add(2);
+        List<String> proportion5 = new ArrayList<>();
+        proportion5.add("20%");
+        proportion5.add("20%");
+        map5.put("days",days5);
+        map5.put("proportion",proportion5);
+
+
+        Map<String,Object> map6 = new HashMap<>();
+        map6.put("pollution",5);
+        List<Integer> days6 = new ArrayList<>();
+        days6.add(0);
+        days6.add(0);
+        List<String> proportion6 = new ArrayList<>();
+        proportion6.add("0%");
+        proportion6.add("0%");
+        map6.put("days",days6);
+        map6.put("proportion",proportion6);
+
+        values.add(map1);
+        values.add(map2);
+        values.add(map3);
+        values.add(map4);
+        values.add(map5);
+        values.add(map6);
+
+        dto.setTime(time);
+        dto.setValues(values);
+        return ResultMessage.ok(dto);
+
+    }
+
+    @GetMapping("queryBarChatTableOfPollutionLevel")
+    public ResultMessage queryBarChatTableOfPollutionLevel(){
+        List<BarChartTableOfPollutionLevelVO> vos = new ArrayList<>();
+
+        BarChartTableOfPollutionLevelVO vo1 = new BarChartTableOfPollutionLevelVO();
+        BarChartTableOfPollutionLevelVO vo2 = new BarChartTableOfPollutionLevelVO();
+        vo1.setExcellent("4(40%)");
+        vo1.setGood("1(10%)");
+        vo1.setMild("1(10%)");
+        vo1.setMiddle("2(20%)");
+        vo1.setSerious("2(20%)");
+        vo1.setServer("0(0%)");
+        vo1.setTotal("10(100%)");
+        vo1.setTime("2021���10���");
+
+        vo2.setExcellent("6(60%)");
+        vo2.setGood("0(0%)");
+        vo2.setMild("0(0%)");
+        vo2.setMiddle("2(20%)");
+        vo2.setSerious("2(20%)");
+        vo2.setServer("0(0%)");
+        vo2.setTotal("10(100%)");
+        vo2.setTime("2021���11���");
+
+        vos.add(vo1);
+        vos.add(vo2);
+        return ResultMessage.ok(vos);
     }
 
     @GetMapping("provincialRanking")
     @ApiOperation(value = "������������", notes = "������������")
     @ApiImplicitParams(value = {
-            @ApiImplicitParam(name = "organizationId", value = "������id", required = true, paramType = "query", dataType = "Integer")
+            @ApiImplicitParam(name = "regionCode", value = "������", required = true, paramType = "query", dataType = "Integer")
     })
-    public ResultMessage provincialRanking(Integer organizationId) {
-        if (ObjectUtils.isEmpty(organizationId)) {
+    public ResultMessage provincialRanking(Integer regionCode) {
+        if (ObjectUtils.isEmpty(regionCode)) {
             return ResultMessage.fail(ResponseCodeEnum.PARAMETERS_IS_MISSING.getCode(), ResponseCodeEnum.PARAMETERS_IS_MISSING.getMsg());
         }
-        Map<String, Object> response = cityAqiService.provincialRanking(organizationId);
+        Map<String, Object> response = cityAqiService.provincialRanking(regionCode);
         return ResultMessage.ok(response);
     }
 
     @GetMapping("rankingDetails")
     @ApiOperation(value = "������������", notes = "������������")
     @ApiImplicitParams(value = {
+            @ApiImplicitParam(name = "regionCode", value = "������", required = true, paramType = "query", dataType = "Integer"),
+            @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() {
-        List<Map<String, Object>> response = new ArrayList<>();
-        Map<String, Object> map1 = new HashMap<>();
-        map1.put("rank", 1);
-        map1.put("cityName", "������");
-        map1.put("aqi", 75);
-        map1.put("compositeIndex", 4.23);
-        map1.put("pm2_5", 55);
-        map1.put("pm10", 74);
-        map1.put("so2", 12);
-        map1.put("no2", 46);
-        map1.put("co", 0.6);
-        map1.put("o3", 19);
-        map1.put("o3_8h", 18);
-        map1.put("primary", "o3");
-
-
-        Map<String, Object> map2 = new HashMap<>();
-        map2.put("rank", 2);
-        map2.put("cityName", "������");
-        map2.put("aqi", 72);
-        map2.put("compositeIndex", 3.20);
-        map2.put("pm2_5", 65);
-        map2.put("pm10", 89);
-        map2.put("so2", 23);
-        map2.put("no2", 65);
-        map2.put("co", 0.3);
-        map2.put("o3", 23);
-        map2.put("o3_8h", 24);
-        map2.put("primary", "pm10");
-
-        Map<String, Object> map3 = new HashMap<>();
-        map3.put("rank", 3);
-        map3.put("cityName", "������");
-        map3.put("aqi", 68);
-        map3.put("compositeIndex", 3.56);
-        map3.put("pm2_5", 56);
-        map3.put("pm10", 62);
-        map3.put("so2", 65);
-        map3.put("no2", 54);
-        map3.put("co", 0.6);
-        map3.put("o3", 36);
-        map3.put("o3_8h", 30);
-        map3.put("primary", "so2");
-        response.add(map1);
-        response.add(map2);
-        response.add(map3);
-
-
-
+    public ResultMessage rankingDetails(HttpServletRequest request) {
+        Map<String, Object> params = WebUtils.getParametersStartingWith(request, null);
+        if (!params.containsKey("type") || !params.containsKey("cityType") || !params.containsKey("regionCode")) {
+            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