From bc6aaea416da40038dee2df1b3de4a1581da2a48 Mon Sep 17 00:00:00 2001
From: jinpengyong <jpy123456>
Date: Wed, 29 Jul 2020 10:07:44 +0800
Subject: [PATCH] 臭氧预测update,根据城市名查询预测和实际数据

---
 src/main/java/com/moral/service/impl/HangzhouAqiServiceImpl.java |   57 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 57 insertions(+), 0 deletions(-)

diff --git a/src/main/java/com/moral/service/impl/HangzhouAqiServiceImpl.java b/src/main/java/com/moral/service/impl/HangzhouAqiServiceImpl.java
index f3feac4..445693c 100644
--- a/src/main/java/com/moral/service/impl/HangzhouAqiServiceImpl.java
+++ b/src/main/java/com/moral/service/impl/HangzhouAqiServiceImpl.java
@@ -18,6 +18,7 @@
 import com.moral.mapper.HangzhouAqiMapper;
 import com.moral.mapper.OrganizationMapper;
 import com.moral.service.HangzhouAqiService;
+import com.moral.service.HistoryMinutelyService;
 
 /**
  * @Auther: fengxiang
@@ -30,6 +31,9 @@
   private OrganizationMapper organizationMapper;
   @Resource
   private HangzhouAqiMapper hangzhouAqiMapper;
+
+  @Resource
+  private HistoryMinutelyService historyMinutelyService;
 
   public List<Map> queryAqiOfTimePeriod(String code, TimePeriod timePeriod) {
     return hangzhouAqiMapper.selectAqisByCodeAndTimePeriod(code, timePeriod);
@@ -109,4 +113,57 @@
   public Integer queryCityCode(Integer areaCode) {
     return  hangzhouAqiMapper.queryCityCode(areaCode);
   }
+
+  @Override
+  public List<Map<String, Object>> getAreaAvgDataByAreaCode(Map<String, Object> parameters) throws Exception {
+    historyMinutelyService.convertQueryParam(parameters);
+    if (!ObjectUtils.isEmpty(parameters.get("compensate"))) {
+      parameters.put("timeUnits", "10min");
+    }
+
+    String sensors2 = parameters.get("sensors2").toString();
+
+    String sensors1 = sensors2;
+    String sensors="";
+    switch (sensors2) {
+      case "e1":
+        sensors1 = "PM2_5";
+        sensors="PM25C";
+        break;
+      case "e2":
+        sensors1 = "PM10";
+        sensors="PM10C";
+        break;
+      case "e10":
+        sensors1 = "CO";
+        sensors="COC";
+        break;
+      case "e11":
+        sensors1 = "SO2";
+        sensors="SO2C";
+        break;
+      case "e15":
+        sensors1 = "O3";
+        sensors="O3C";
+        break;
+      case "e16":
+        sensors1 = "NO2";
+        sensors="NO2C";
+        break;
+      default:
+        break;
+    }
+
+    parameters.put("sensors1", sensors1);
+    parameters.put("sensors",sensors);
+    List<Map<String, Object>> areaList = hangzhouAqiMapper.getAreaAvgDataByAreaCode(parameters);
+    if (areaList.isEmpty()) {
+      Integer areaCode = Integer.valueOf(parameters.get("areaCode").toString());
+      areaCode = hangzhouAqiMapper.queryCityCode(areaCode);
+      parameters.put("areaCode", String.valueOf(areaCode));
+      areaList = hangzhouAqiMapper.getAreaAvgDataByAreaCode(parameters);
+    }
+    return areaList;
+
+  }
 }

--
Gitblit v1.8.0