From 63ec97fc0ff6cdfb9dd3c9c0287ce784f0c2aaf5 Mon Sep 17 00:00:00 2001
From: ZhuDongming <773644075@qq.com>
Date: Tue, 31 Mar 2020 09:52:18 +0800
Subject: [PATCH] update指定设备发送任务
---
src/main/java/com/moral/service/DeviceService.java | 2 ++
src/main/java/com/moral/mapper/HistoryMapper.java | 2 ++
src/main/resources/mapper/HistoryMapper.xml | 21 +++++++++++++++++++++
src/main/java/com/moral/task/HistoryTableInsertTask.java | 2 +-
src/main/java/com/moral/service/impl/DeviceServiceImpl.java | 5 +++++
5 files changed, 31 insertions(+), 1 deletions(-)
diff --git a/src/main/java/com/moral/mapper/HistoryMapper.java b/src/main/java/com/moral/mapper/HistoryMapper.java
index fd4026f..d9ac919 100644
--- a/src/main/java/com/moral/mapper/HistoryMapper.java
+++ b/src/main/java/com/moral/mapper/HistoryMapper.java
@@ -18,6 +18,8 @@
List<Map<String, Object>> getSensorDataByMac(Map<String,Object> parameters);
+ List<Map<String, Object>> getSensorDataByMacOnce(Map<String,Object> parameters);
+
List<Map<String, Object>> getSensorDataOnce(Map<String,Object> parameters);
Map<String, Object> getMinData(Map<String,Object> parameters);
diff --git a/src/main/java/com/moral/service/DeviceService.java b/src/main/java/com/moral/service/DeviceService.java
index a91d4d6..0ef2920 100644
--- a/src/main/java/com/moral/service/DeviceService.java
+++ b/src/main/java/com/moral/service/DeviceService.java
@@ -11,6 +11,8 @@
List<Map<String, Object>> getSensorDataByMac(Map<String, Object> parameters);
+ List<Map<String, Object>> getSensorDataByMacOnce(Map<String, Object> parameters);
+
List<String> getMacs();
List<String> getMacByOrganizationid(List<Object> organizationIdList);
diff --git a/src/main/java/com/moral/service/impl/DeviceServiceImpl.java b/src/main/java/com/moral/service/impl/DeviceServiceImpl.java
index 304b3e4..280914b 100644
--- a/src/main/java/com/moral/service/impl/DeviceServiceImpl.java
+++ b/src/main/java/com/moral/service/impl/DeviceServiceImpl.java
@@ -38,6 +38,11 @@
}
@Override
+ public List<Map<String, Object>> getSensorDataByMacOnce(Map<String, Object> parameters) {
+ return historyMapper.getSensorDataByMacOnce(parameters);
+ }
+
+ @Override
public List<String> getMacs() {
return deviceMapper.getMacs();
}
diff --git a/src/main/java/com/moral/task/HistoryTableInsertTask.java b/src/main/java/com/moral/task/HistoryTableInsertTask.java
index ea5796f..fe94ff9 100644
--- a/src/main/java/com/moral/task/HistoryTableInsertTask.java
+++ b/src/main/java/com/moral/task/HistoryTableInsertTask.java
@@ -810,7 +810,7 @@
devices.put("start", startTime);
devices.put("end", endTime);
try {
- List<Map<String, Object>> minutelyData = deviceService.getSensorDataByMac(devices);
+ List<Map<String, Object>> minutelyData = deviceService.getSensorDataByMacOnce(devices);
XxlJobLogger.log("historyMinutelyData:" + minutelyData.size());
List<Map<String, Object>> minutelyDataList = new ArrayList<>();
for (Map<String, Object> deviceData : minutelyData) {
diff --git a/src/main/resources/mapper/HistoryMapper.xml b/src/main/resources/mapper/HistoryMapper.xml
index 4e677f0..823b530 100644
--- a/src/main/resources/mapper/HistoryMapper.xml
+++ b/src/main/resources/mapper/HistoryMapper.xml
@@ -120,6 +120,27 @@
h.mac
</select>
+ <select id="getSensorDataByMacOnce" resultType="java.util.LinkedHashMap">
+ SELECT
+ h.mac,DATE_FORMAT(time,'%Y-%m-%dT%H:%i') time,
+ <foreach collection="sensorKeys" separator="," item="sensorKey">
+ AVG(value->'$.${sensorKey}') AS '${sensorKey}',
+ MAX(cast(h.value ->'$.${sensorKey}' as decimal(11,3))) AS 'MAX${sensorKey}',
+ MIN(cast(h.value ->'$.${sensorKey}' as decimal(11,3))) AS 'MIN${sensorKey}'
+ </foreach>
+ FROM
+ history h
+ WHERE
+ h.time >= #{start}
+ AND h.time <![CDATA[<]]> #{end}
+ and h.mac in
+ <foreach collection="macList" index="index" item="mac" open="(" separator="," close=")">
+ #{mac}
+ </foreach>
+ group by
+ h.mac,DATE_FORMAT(time,'%Y-%m-%dT%H:%i')
+ </select>
+
<select id="getSensorDataOnce" resultType="java.util.LinkedHashMap">
SELECT
h.mac,DATE_FORMAT(time,'%Y-%m-%dT%H:%i') time,
--
Gitblit v1.8.0