From cbcbb9aa45d119bced3d52d5370e14138372fcdb Mon Sep 17 00:00:00 2001 From: jinpengyong <jpy123456> Date: Mon, 21 Sep 2020 11:30:19 +0800 Subject: [PATCH] windSpeed单位km/h->m/s --- src/main/java/com/moral/service/impl/ForecastWeatherServiceImpl.java | 33 +++++++++++++++++++++++++++------ 1 files changed, 27 insertions(+), 6 deletions(-) diff --git a/src/main/java/com/moral/service/impl/ForecastWeatherServiceImpl.java b/src/main/java/com/moral/service/impl/ForecastWeatherServiceImpl.java index 4bbbbfa..6abf51b 100644 --- a/src/main/java/com/moral/service/impl/ForecastWeatherServiceImpl.java +++ b/src/main/java/com/moral/service/impl/ForecastWeatherServiceImpl.java @@ -1,5 +1,6 @@ package com.moral.service.impl; +import java.text.DecimalFormat; import java.text.ParseException; import java.text.SimpleDateFormat; import java.util.ArrayList; @@ -69,6 +70,7 @@ Calendar c = Calendar.getInstance(); SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd"); SimpleDateFormat sdf1 = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); + DecimalFormat df = new DecimalFormat("0.0"); c.add(Calendar.DAY_OF_MONTH, 1); String nextDay = sdf.format(c.getTime()); c.setTime(c.getTime()); @@ -121,6 +123,19 @@ hashMap.put("parentCode", parentCode); hashSet.add(hashMap); } + + Map<String, Object> bmap = new HashMap<>(); + bmap.put("name1", "���������"); + bmap.put("parentName", "���������"); + bmap.put("cityCode", 110000); + bmap.put("parentCode", 110000); + hashSet.add(bmap); + Map<String, Object> kunShanMap = new HashMap<>(); + kunShanMap.put("name1", "���������"); + kunShanMap.put("parentName", "���������"); + kunShanMap.put("cityCode", 320500); + hashSet.add(kunShanMap); + List<Element> elements = Dom4jUtils.readDocument(); String cityID = "101190404"; for (Map<String, Object> map : hashSet) { @@ -174,6 +189,10 @@ } nextDayList.remove(0); for (Map<String, Object> nextDayMap : nextDayList) { + //������km/h->m/s + Double windSpeed = Double.valueOf(nextDayMap.get("windSpeed").toString()); + windSpeed = windSpeed * 1000 / 3600; + nextDayMap.put("windSpeed",df.format(windSpeed)); String text = nextDayMap.get("text").toString(); String condition = ""; if ("���".equals(text)) { @@ -188,6 +207,8 @@ condition = "20"; } else if ("���".equals(text)) { condition = "0"; + } else { + condition = "50"; } nextDayMap.put("condition", condition); } @@ -233,13 +254,13 @@ String nextDayTemp = dataMap.get("temp").toString(); String nextDayCloud = dataMap.get("cloud").toString(); Integer condition = Integer.valueOf(dataMap.get("condition").toString()); - String value=""; + Integer value = 0; if (condition >= 80) { - value = "80"; + value = 80; } else if (condition >= 40) { - value = "40"; + value = 40; } else if (condition >= 0) { - value = "0"; + value = 0; } map.put("condition", value); List<Map<String, Object>> tempAndCloudList = realWeatherMapper.getTempAndCloud(map); @@ -338,7 +359,7 @@ Double b = Double.valueOf(cmap.get("b").toString()); double O3C = b * Double.valueOf(nextDayTemp) + a; if (O3C < 1.0) { - O3C=1.0; + O3C = 1.0; } dataMap.put("O3C", String.valueOf(Math.round(O3C))); } @@ -347,7 +368,7 @@ Double n = Double.valueOf(cmap.get("n").toString()); double beam = n * Double.valueOf(nextDayCloud) + m; if (beam < 1.0) { - beam=0.0; + beam = 0.0; } dataMap.put("beam", String.valueOf(Math.round(beam))); } -- Gitblit v1.8.0