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