From f28149d8183a62f87fa9c8df9ae589070d83f612 Mon Sep 17 00:00:00 2001
From: 于紫祥_1901 <email@yuzixiang_1910>
Date: Thu, 24 Dec 2020 13:47:50 +0800
Subject: [PATCH] 波动补偿
---
src/main/java/com/moral/service/impl/HistoryServiceImpl.java | 37 +++++++++++++++++--------------------
1 files changed, 17 insertions(+), 20 deletions(-)
diff --git a/src/main/java/com/moral/service/impl/HistoryServiceImpl.java b/src/main/java/com/moral/service/impl/HistoryServiceImpl.java
index 3f5d6d6..498bcec 100644
--- a/src/main/java/com/moral/service/impl/HistoryServiceImpl.java
+++ b/src/main/java/com/moral/service/impl/HistoryServiceImpl.java
@@ -74,12 +74,10 @@
Map<String, Object> resultMap = new LinkedHashMap<String, Object>();
accountService.setOrgIdsByAccount(parameters);
LocalDateTime time = LocalDateTime.now();
- // ������������ -10������
- LocalDateTime start = time.minusMinutes(10);
- parameters.put("start", start);
+ parameters.put("end", time);
// ������������ -5������
- LocalDateTime end = time.minusMinutes(5);
- parameters.put("end", end);
+ LocalDateTime start = time.minusMinutes(5);
+ parameters.put("start", start);
List<Sensor> Sensors = sensorMapper.getSensorsByCriteria(parameters);
List<String> sensorKeys = new ArrayList<String>();
for (Sensor sensor : Sensors) {
@@ -87,7 +85,7 @@
}
parameters.put("sensorKeys", sensorKeys);
DateTimeFormatter df = DateTimeFormatter.ofPattern("yyyyMM");
- parameters.put("timeUnits", "minutely_" + df.format(start));
+ parameters.put("timeUnits", "five_minutely_" + df.format(time));
List<Map<String, Object>> list = historyMapper.getAreaAllDataByAccount(parameters);
resultMap.putAll(list.get(0));
return resultMap;
@@ -111,7 +109,6 @@
parameters.put("sensorKeys", sensorKeys);
parameters.put("timeUnits", "hourly");
List<Map<String, Object>> list = historyMapper.getAreaAllDataByAccount(parameters);
-
for (Map<String, Object> map : list) {
result.put((String) map.get("name"), map.get(macKey.toString()));
}
@@ -386,7 +383,6 @@
resultMap.put(map.remove("sensor_key").toString(), map);
}
return resultMap;
-
}
@Override
@@ -410,14 +406,17 @@
String timeUnits = startTime.substring(0, 10).replace("-", "");
Map<String, Object> map = historyMapper.getAVGValueByMacAndTimeslot(mac, startTime, endTime, timeUnits);
Map<String, Object> returnMap = new HashMap<>();
- if (map.isEmpty()) {
- returnMap.put("AQI", "N/V");
+ if (ObjectUtils.isEmpty(map) || map.isEmpty()) {
+ returnMap.put("AQI", "N/V");
+ return returnMap;
} else {
Map<String, Double> AQIMap = new HashMap<>();
for (Map.Entry<String, Object> entry : map.entrySet()) {
String key = entry.getKey();
- Double value = Double.parseDouble(entry.getValue().toString());
- AQIMap.put(key, value);
+ if (entry.getValue() != null) {
+ Double value = Double.parseDouble(entry.getValue().toString());
+ AQIMap.put(key, value);
+ }
}
returnMap = AQICalculation.hourlyAQI(AQIMap);
}
@@ -541,8 +540,8 @@
String startTime = parameters.get("startTime").toString();
DateTimeFormatter dateTimeFormatter = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss");
LocalDateTime startTimeLocalDateTime = LocalDateTime.parse(startTime, dateTimeFormatter);
- LocalDateTime today = LocalDateTime.now().truncatedTo(ChronoUnit.DAYS);
- LocalDateTime startTimeDay = startTimeLocalDateTime.truncatedTo(ChronoUnit.DAYS);
+ SimpleDateFormat sdf = new SimpleDateFormat("yyyyMM");
+ int format = Integer.parseInt(sdf.format(new Date()));
int year = startTimeLocalDateTime.getYear();
int month = startTimeLocalDateTime.getMonthValue();
String monthStr = month < 10 ? ("0" + month) : month + "";
@@ -554,17 +553,15 @@
}
parameters.put("sensorKeys", sensorKeys);
List<Map<String, Object>> listMap = null;
- /*if (today.compareTo(startTimeDay) == 0) {
- listMap = historyMapper.listGetSensorData(parameters);
- }*/
- //if (CollectionUtils.isEmpty(listMap)) {
listMap = historyMapper.getCarSensorData(parameters);
if (CollectionUtils.isEmpty(listMap)) {
if (year <= 2019) {
listMap = historyMinutelyMapper.getSensorData(parameters);
} else {
- parameters.put("yearAndMonth", yearAndMonth);
- listMap = historyMinutelyMapper.getSensorData2020(parameters);
+ if (Integer.parseInt(yearAndMonth) <= format) {
+ parameters.put("yearAndMonth", yearAndMonth);
+ listMap = historyMinutelyMapper.getSensorData2020(parameters);
+ }
}
}
//}
--
Gitblit v1.8.0