From b74c296ce3c58de5803b2cfea0f41efccb7b89cd Mon Sep 17 00:00:00 2001
From: jinpengyong <jpy123456>
Date: Mon, 20 Dec 2021 14:06:50 +0800
Subject: [PATCH] 根据字典类型获取字典数据列表

---
 screen-api/src/main/java/com/moral/api/service/impl/CityAqiServiceImpl.java |   43 +++++++++++++++++++++++++++++--------------
 1 files changed, 29 insertions(+), 14 deletions(-)

diff --git a/screen-api/src/main/java/com/moral/api/service/impl/CityAqiServiceImpl.java b/screen-api/src/main/java/com/moral/api/service/impl/CityAqiServiceImpl.java
index ac464a6..9ab60a0 100644
--- a/screen-api/src/main/java/com/moral/api/service/impl/CityAqiServiceImpl.java
+++ b/screen-api/src/main/java/com/moral/api/service/impl/CityAqiServiceImpl.java
@@ -176,10 +176,10 @@
             //������������������������
             cityAqis.sort(Comparator.comparing(CityAqi::getTime));
         }
-        //������������������,map���key���HH:mm������������������value���aqi���������
+        //������������������,map���key���yyyy-MM-dd HH:mm������������������value���aqi���������
         Map<String, Object> result = new LinkedHashMap<>();
         for (CityAqi aqi : cityAqis) {
-            String key = DateUtils.dateToDateString(aqi.getTime(), "HH:mm");
+            String key = DateUtils.dateToDateString(aqi.getTime(), "yyyy-MM-dd HH:mm");
             String allDataJson = aqi.getValue();
             if (allDataJson == null) {
                 result.put(key, "");
@@ -223,7 +223,7 @@
     @Override
     public List<Map<String, Object>> rankingDetails(Map<String, Object> params) {
         List<Map<String, Object>> result = new ArrayList<>();
-        int orgId = Integer.parseInt(params.get("organizationId").toString());
+        int regionCode = Integer.parseInt(params.get("regionCode").toString());
         String type = params.get("type").toString();
         String time = null;
         if (!ObjectUtils.isEmpty(params.get("time"))) {
@@ -237,10 +237,10 @@
         }
         String cityType = params.get("cityType").toString();
 
-        //���������,���code
-        Organization organization = organizationService.getById(orgId);
-        Integer curProvinceCode = organization.getProvinceCode();
-        Integer curCityCode = organization.getCityCode();
+        String s = String.valueOf(regionCode);
+        //���������������,���code
+        Integer curProvinceCode = Integer.parseInt(s.substring(0, 2) + "0000");
+        Integer curCityCode = Integer.parseInt(s.substring(0, 4) + "00");
 
         QueryWrapper<SysArea> areaWrapper = new QueryWrapper<>();
         if ("province".equals(cityType)) {
@@ -346,7 +346,12 @@
             sixParamMap.put(Constants.SENSOR_CODE_O3, dataMap.get("O3"));
             AQI aqi = AQIUtils.dailyAQI(sixParamMap);
             dataMap.put("AQI", aqi.getAQIValue());
-            dataMap.put("primaryPollutant", aqi.getPrimaryPollutantNames());
+            List<String> primaryPollutantNames = aqi.getPrimaryPollutantNames();
+            String primaryPollutant = "";
+            if (!ObjectUtils.isEmpty(primaryPollutantNames)) {
+                primaryPollutant = primaryPollutantNames.stream().map(String::valueOf).collect(Collectors.joining(","));
+            }
+            dataMap.put("primaryPollutant", primaryPollutant);
 
             //������������������������������,O3������������O3_8H������
             Map<String, Object> compositeIndexMap = new HashMap<>(dataMap);
@@ -379,6 +384,12 @@
         List<Map<String, Object>> hourData = cityAqiMapper.selectMaps(wrapper);
         for (Map<String, Object> hourDatum : hourData) {
             Map<String, Object> value = JSONObject.parseObject((String) hourDatum.get("value"), Map.class);
+            List<String> primaryPollutantNames = (List<String>) value.get("primaryPollutant");
+            String primaryPollutant = "";
+            if (!ObjectUtils.isEmpty(primaryPollutantNames)) {
+                primaryPollutant = primaryPollutantNames.stream().map(String::valueOf).collect(Collectors.joining(","));
+            }
+            value.put("primaryPollutant", primaryPollutant);
             value.remove("pubtime");
             value.remove("rank");
             result.add(value);
@@ -400,6 +411,12 @@
         List<Map<String, Object>> dayData = cityAqiDailyService.listMaps(wrapper);
         for (Map<String, Object> dayDatum : dayData) {
             Map<String, Object> value = JSONObject.parseObject((String) dayDatum.get("value"), Map.class);
+            List<String> primaryPollutantNames = (List<String>) value.get("primaryPollutant");
+            String primaryPollutant = "";
+            if (!ObjectUtils.isEmpty(primaryPollutantNames)) {
+                primaryPollutant = primaryPollutantNames.stream().map(String::valueOf).collect(Collectors.joining(","));
+            }
+            value.put("primaryPollutant", primaryPollutant);
             //���������
             QueryWrapper<SysArea> queryWrapper = new QueryWrapper<>();
             queryWrapper.select("area_name")
@@ -809,7 +826,7 @@
     }
 
     @Override
-    public Map<String, Object> provincialRanking(Integer organizationId) {
+    public Map<String, Object> provincialRanking(Integer regionCode) {
         //���������
         Map<String, Object> result = new HashMap<>();
 
@@ -818,10 +835,10 @@
         Date yesterday = DateUtils.dataToTimeStampTime(DateUtils.getDateOfDay(now, -1), DateUtils.yyyy_MM_dd_EN);
         String dateString = DateUtils.dateToDateString(yesterday, DateUtils.yyyy_MM_dd_HH_mm_ss_EN);
 
+        String s = String.valueOf(regionCode);
         //���������,���code
-        Organization organization = organizationService.getById(organizationId);
-        Integer provinceCode = organization.getProvinceCode();
-        Integer cityCode = organization.getCityCode();
+        Integer provinceCode = Integer.parseInt(s.substring(0, 2) + "0000");
+        Integer cityCode = Integer.parseInt(s.substring(0, 4) + "00");
         //������������������city_code
         QueryWrapper<SysArea> wrapper = new QueryWrapper<>();
         wrapper.select("area_code").eq("parent_code", provinceCode);
@@ -949,6 +966,4 @@
         }
         return result;
     }
-
-
 }

--
Gitblit v1.8.0