src/main/java/com/moral/mapper/ForecastWeatherMapper.java
@@ -5,7 +5,7 @@ public interface ForecastWeatherMapper { void insertForecastWeather(List<Map<String,Object>> list); int insertForecastWeather(List<Map<String,Object>> list); void deleteByTime(Map<String,Object> parameters); } src/main/java/com/moral/mapper/RealWeatherMapper.java
@@ -5,5 +5,5 @@ public interface RealWeatherMapper { void insertRealWeather(List<Map<String,Object>> list); int insertRealWeather(List<Map<String,Object>> list); } src/main/java/com/moral/service/AlarmService.java
@@ -5,7 +5,7 @@ public interface AlarmService { void insertAlarmDaily(); int insertAlarmDaily(); void createTable(String yearAndMonth); } src/main/java/com/moral/service/ForecastWeatherService.java
@@ -4,6 +4,6 @@ public interface ForecastWeatherService { void insertForecastWeather() throws ParseException; int insertForecastWeather() throws ParseException; } src/main/java/com/moral/service/RealWeatherService.java
@@ -4,6 +4,6 @@ public interface RealWeatherService { void insertRealWeather() throws ParseException; int insertRealWeather() throws ParseException; } src/main/java/com/moral/service/impl/AlarmServiceImpl.java
@@ -27,7 +27,7 @@ private AlarmMapper alarmMapper; @Override public void insertAlarmDaily() { public int insertAlarmDaily() { LocalDateTime time = LocalDateTime.now(); LocalDateTime endTime = time.truncatedTo(ChronoUnit.DAYS); LocalDateTime startTime = endTime.minusDays(1); @@ -45,6 +45,7 @@ devices.put("end", endTime); devices.put("yearAndMonth", yearAndMonth); List<String> macs = alarmMapper.getMacs(devices); int count = 0; for (String mac : macs) { List<Map<String, Object>> resultList = new ArrayList<>(); devices.put("mac", mac); @@ -52,12 +53,12 @@ List<Map<String, Object>> newList = list.stream().distinct().collect(Collectors.toList()); for (Map<String, Object> map : newList) { for (String key : map.keySet()) { String[] strings = map.get(key).toString().replace("$.", "") .replace("[", "").replace("]", "") .replace("\"", "").replace(" ", "").split(","); String[] strings = map.get(key).toString().replace("$.", "") .replace("[", "").replace("]", "") .replace("\"", "").replace(" ", "").split(","); List<String> sensors = new ArrayList<String>(Arrays.asList(strings)); map.put(key, sensors); List<String> sensors = new ArrayList<String>(Arrays.asList(strings)); map.put(key, sensors); } } @@ -81,20 +82,21 @@ } for (String key : hashMap.keySet()) { Map<String, Object> jsonMap = new HashMap<>(); Map<String, Object> map = new HashMap<>(); map.put("mac",mac); map.put("time",startTime); map.put("state", key); Set<String> sensors = (Set<String>) hashMap.get(key); for (String sensor : sensors) { jsonMap.put(sensor,1); } map.put("json",JSONUtils.toJSONString(jsonMap)); resultList.add(map); Map<String, Object> jsonMap = new HashMap<>(); Map<String, Object> map = new HashMap<>(); map.put("mac", mac); map.put("time", startTime); map.put("state", key); Set<String> sensors = (Set<String>) hashMap.get(key); for (String sensor : sensors) { jsonMap.put(sensor, 1); } map.put("json", JSONUtils.toJSONString(jsonMap)); resultList.add(map); } alarmMapper.insertAlarmDaily(resultList); count = count + alarmMapper.insertAlarmDaily(resultList); } return count; } @Override src/main/java/com/moral/service/impl/ForecastWeatherServiceImpl.java
@@ -50,7 +50,7 @@ private ProvinceMapper provinceMapper; @Override public void insertForecastWeather() throws ParseException { public int insertForecastWeather() throws ParseException { Calendar c = Calendar.getInstance(); SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd"); SimpleDateFormat sdf1 = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); @@ -123,11 +123,13 @@ } } int count=0; for (Map<String, Object> map : hashSet) { String id = map.get("cityID").toString(); Map<String, Object> dataMap = restTemplate.getForObject("https://api.heweather.net/v7/weather/72h?key=da05c6c4852d4f7aa3364a9236ee9e26&gzip=n&location={1}", Map.class, id); if (dataMap == null) { dataMap = new HashMap<>(); return count; } String json = JSONObject.toJSONString(dataMap); dataMap = (Map<String, Object>) JSONObject.parse(json); @@ -177,7 +179,8 @@ jsonMap.remove("fxTime"); map.put("json", JSONObject.toJSONString(jsonMap)); } forecastWeatherMapper.insertForecastWeather(arrayList); count = count+forecastWeatherMapper.insertForecastWeather(arrayList); } return count; } } src/main/java/com/moral/service/impl/RealWeatherServiceImpl.java
@@ -50,7 +50,7 @@ private ProvinceMapper provinceMapper; @Override public void insertRealWeather() throws ParseException { public int insertRealWeather() throws ParseException { Calendar c = Calendar.getInstance(); SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH"); SimpleDateFormat sdf1 = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); @@ -146,6 +146,6 @@ for (Map<String, Object> map : resultList) { map.remove("name"); } realWeatherMapper.insertRealWeather(resultList); return realWeatherMapper.insertRealWeather(resultList); } } src/main/java/com/moral/task/AlarmTableInsertTask.java
@@ -24,9 +24,12 @@ @XxlJob("alarmDaily") public ReturnT insertAlarmDailyTable(String param) { alarmService.insertAlarmDaily(); int count = alarmService.insertAlarmDaily(); if(count>0){ return new ReturnT(200, "插入天表成功"); }else { return new ReturnT(200, "插入天表成功"); } } @XxlJob("createAlarmSubTable") src/main/java/com/moral/task/ForecastWeatherInsertTask.java
@@ -21,7 +21,11 @@ @XxlJob("forecastWeatherHour") public ReturnT insertForecastWeather(String param) throws ParseException { forecastWeatherService.insertForecastWeather(); return new ReturnT(200, "插入成功"); int count = forecastWeatherService.insertForecastWeather(); if (count > 0) { return new ReturnT(200, "插入成功"); }else { return new ReturnT(200, "插入失败"); } } } src/main/java/com/moral/task/RealWeatherInsertTask.java
@@ -21,7 +21,11 @@ @XxlJob("realWeatherHour") public ReturnT insertRealWeather(String param) throws ParseException { realWeatherService.insertRealWeather(); return new ReturnT(200, "插入成功"); int count = realWeatherService.insertRealWeather(); if (count > 0) { return new ReturnT(200, "插入成功"); }else { return new ReturnT(200, "插入失败"); } } }