From 81d31a0f9449943dcd78c1d0358443366a998201 Mon Sep 17 00:00:00 2001 From: jinpengyong <jpy123456> Date: Mon, 11 Oct 2021 17:30:10 +0800 Subject: [PATCH] 接入城市气象数据定时任务 --- screen-job/src/main/java/com/moral/api/service/impl/HistoryDailyServiceImpl.java | 29 +++++++++++++---------------- 1 files changed, 13 insertions(+), 16 deletions(-) diff --git a/screen-job/src/main/java/com/moral/api/service/impl/HistoryDailyServiceImpl.java b/screen-job/src/main/java/com/moral/api/service/impl/HistoryDailyServiceImpl.java index 5409221..7f845eb 100644 --- a/screen-job/src/main/java/com/moral/api/service/impl/HistoryDailyServiceImpl.java +++ b/screen-job/src/main/java/com/moral/api/service/impl/HistoryDailyServiceImpl.java @@ -3,7 +3,6 @@ import com.alibaba.fastjson.JSONObject; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.moral.api.entity.HistoryDaily; -import com.moral.api.entity.HistoryHourly; import com.moral.api.entity.Sensor; import com.moral.api.mapper.HistoryDailyMapper; import com.moral.api.service.HistoryDailyService; @@ -63,9 +62,13 @@ List<Sensor> sensors = sensorService.list(sensorQueryWrapper); //������������������������������ - QueryWrapper<HistoryHourly> historyHourlyQueryWrapper = new QueryWrapper<>(); - historyHourlyQueryWrapper.ge("time", DateUtils.dateToDateString(start)).le("time", DateUtils.dateToDateString(end)); - List<Map<String, Object>> dailyData = historyHourlyService.listMaps(historyHourlyQueryWrapper); + Map<String, Object> prop = new HashMap<>(); + String timeUnits = DateUtils.dateToDateString(start, DateUtils.yyyyMM_EN); + prop.put("timeUnits", timeUnits); + prop.put("start", DateUtils.dateToDateString(start)); + prop.put("end", DateUtils.dateToDateString(end)); + List<Map<String, Object>> dailyData = historyHourlyService.selectDailyData(prop); + if (dailyData.size() == 0) { return; } @@ -76,18 +79,17 @@ //��������������������������� List<Map<String, Object>> insertData = new ArrayList<>(); - data.forEach((key, value) -> { + data.forEach((mac, value) -> { Map<String, Object> dataMap = new HashMap<>(); Map<String, Object> jsonMap = new HashMap<>(); - dataMap.put("mac", key); + dataMap.put("mac", mac); dataMap.put("time", start); //��������������������������������������������������� List<Map<String, Object>> tempValue = new ArrayList<>(value); - //������������������������0������������O3������������������������������1���-8��� + //������������������������0������������O3������������������������������1���-8��� value.removeIf(map -> ((Date) map.get("time")).getTime() == start.getTime()); - Map<String, Object> params = new HashMap<>(); params.put("data", value); params.put("type", "day"); @@ -149,13 +151,12 @@ Map<String, Object> dataValue = JSONObject.parseObject((String) v.get("value"), Map.class); Object sensorValue = dataValue.get(sensorCode); //������������������������ - Object flag = dataValue.get(sensorCode + Constants.MARKER_BIT_KEY); + Object flag = dataValue.get(sensorCode + "-" + Constants.MARKER_BIT_KEY); if (!Constants.MARKER_BIT_TRUE.equals(flag)) { return null; } if (ObjectUtils.isEmpty(sensorValue)) { - System.out.println(456); return null; } @@ -167,19 +168,15 @@ //������������������������������������ double aDouble = Double.parseDouble(sensorValue.toString()); if (!ObjectUtils.isEmpty(upper)) { - if (aDouble < upper) { + if (aDouble > upper) { return null; } } if (!ObjectUtils.isEmpty(lower)) { - if (aDouble > lower) { + if (aDouble < lower) { return null; } } - if ("a00e12".equals(sensorCode)) { - System.out.println(key + "==" + sensorCode + "==" + v.get("time") + "==" + aDouble); - } - return DoubleStream.of(aDouble); }).average(); if (optionalDouble.isPresent()) { -- Gitblit v1.8.0