From e3e9b168cbd9a60858843c622a3859896aefe5fb Mon Sep 17 00:00:00 2001
From: jinpengyong <jpy123456>
Date: Mon, 07 Sep 2020 10:40:00 +0800
Subject: [PATCH] update

---
 src/main/java/com/moral/service/impl/WeatherServiceImpl.java |   20 ++++++++++++++++++--
 1 files changed, 18 insertions(+), 2 deletions(-)

diff --git a/src/main/java/com/moral/service/impl/WeatherServiceImpl.java b/src/main/java/com/moral/service/impl/WeatherServiceImpl.java
index 667a819..3df2b4f 100644
--- a/src/main/java/com/moral/service/impl/WeatherServiceImpl.java
+++ b/src/main/java/com/moral/service/impl/WeatherServiceImpl.java
@@ -10,6 +10,7 @@
 import java.util.Collections;
 import java.util.Date;
 import java.util.HashMap;
+import java.util.LinkedHashMap;
 import java.util.List;
 import java.util.Map;
 
@@ -283,6 +284,9 @@
     @Override
     public List<Map<String, Object>> getWeatherData(Map<String, Object> parameters) throws ParseException {
         parameters.put("typeFormat", "%Y-%m-%d %H:%i:%s");
+        if (parameters.get("city") == null) {
+            return new ArrayList<Map<String, Object>>();
+        }
         String cityName = parameters.get("city").toString();
         Area area = areaMapper.getAreaByName(cityName);
         Integer code;
@@ -307,6 +311,7 @@
         String time = parameters.get("time").toString();
         SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
         SimpleDateFormat sdf1 = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
+        SimpleDateFormat sdf2 = new SimpleDateFormat("yyyy-MM-dd HH");
         Date now = new Date();
         Date selectTime = sdf1.parse(time + " 01:00:00");
         Calendar cal = Calendar.getInstance();
@@ -320,6 +325,7 @@
         parameters.put("end", end);
         Integer fcode = 0;
         List<Map<String, Object>> forecastList = forecastWeatherMapper.getForecast(parameters);
+
         if (forecastList.size() == 0) {
             List<Area> areaList = areaMapper.getAreaByCityCode(code);
             for (Area area1 : areaList) {
@@ -584,6 +590,16 @@
 
         List<Map<String, Object>> resultList = new ArrayList<>();
 
+        if (foreList.size() == 0) {
+            for (Map<String, Object> map : realWeatherList) {
+                Map<String,Object> hashMap=new LinkedHashMap<>();
+                hashMap.put("time",map.get("time").toString());
+                hashMap.put("type","������");
+                hashMap.put("city",map.get("city").toString());
+                foreList.add(hashMap);
+            }
+        }
+
         for (Map<String, Object> foreMap : foreList) {
             for (Map<String, Object> realMap : list) {
                 if (foreMap.get("time").equals(realMap.get("time"))) {
@@ -657,8 +673,8 @@
         if (nowMinute >= 46) {
             nowHour = nowHour + 1;
             cal.setTime(now);
-            cal.add(Calendar.HOUR_OF_DAY,1);
-            format=sdf1.format(cal.getTime()).substring(0, 13) + ":00:00";
+            cal.add(Calendar.HOUR_OF_DAY, 1);
+            format = sdf1.format(cal.getTime()).substring(0, 13) + ":00:00";
         }
 
         for (Map<String, Object> resultMap : resultList) {

--
Gitblit v1.8.0