From 10d4b885a9b2af2a38bb03249d7547283f948197 Mon Sep 17 00:00:00 2001
From: kaiyu <404897439@qq.com>
Date: Mon, 13 Sep 2021 13:15:18 +0800
Subject: [PATCH] screen-api 增加获取无人机数据接口
---
screen-job/src/main/resources/mapper/HistoryMinutelyMapper.xml | 40 ++++++++++------------------------------
1 files changed, 10 insertions(+), 30 deletions(-)
diff --git a/screen-job/src/main/resources/mapper/HistoryMinutelyMapper.xml b/screen-job/src/main/resources/mapper/HistoryMinutelyMapper.xml
index d705dd2..e806e90 100644
--- a/screen-job/src/main/resources/mapper/HistoryMinutelyMapper.xml
+++ b/screen-job/src/main/resources/mapper/HistoryMinutelyMapper.xml
@@ -8,43 +8,23 @@
`time` datetime DEFAULT NULL COMMENT '������������',
`value` json DEFAULT NULL COMMENT '������',
`version` INT (11) DEFAULT NULL COMMENT '������',
- KEY `idx_mac` (`mac`),
- KEY `idx_time` (`time`),
KEY `idx_mac_time` (`mac`,`time`)
) ENGINE=INNODB DEFAULT CHARSET=utf8 COMMENT '���������������'
</update>
- <select id="getHistoryFiveMinutelyData" resultType="java.util.LinkedHashMap">
+ <select id="getHistoryMinutelyData" resultType="java.util.LinkedHashMap">
SELECT
- mac
- <foreach collection="sensorKeys" open="," separator="," item="sensorKey">
- <choose>
- <when test="sensorKey=='e23[0]'">
- ROUND((CASE WHEN AVG(value->'$.e18[0]'*SIN((value->'$.e23[0]'/180)*PI()))<![CDATA[>]]>0 AND
- AVG(value->'$.e18[0]'*COS((value->'$.e23[0]'/180)*PI()))<![CDATA[>]]>0
- THEN
- ATAN(AVG(value->'$.e18[0]'*SIN((value->'$.e23[0]'/180)*PI()))/AVG(value->'$.e18[0]'*COS((value->'$.e23[0]'/180)*PI())))*180/PI()
- WHEN AVG(value->'$.e18[0]'*SIN((value->'$.e23[0]'/180)*PI()))>0 AND
- AVG(value->'$.e18[0]'*COS((value->'$.e23[0]'/180)*PI()))<![CDATA[<]]>0
- THEN
- (ATAN(AVG(value->'$.e18[0]'*SIN((value->'$.e23[0]'/180)*PI()))/AVG(value->'$.e18[0]'*COS((value->'$.e23[0]'/180)*PI())))*180/PI())+180
- WHEN AVG(value->'$.e18[0]'*SIN((value->'$.e23[0]'/180)*PI()))<![CDATA[<]]>0 AND
- AVG(value->'$.e18[0]'*COS((value->'$.e23[0]'/180)*PI()))<![CDATA[<]]>0
- THEN
- (ATAN(AVG(value->'$.e18[0]'*SIN((value->'$.e23[0]'/180)*PI()))/AVG(value->'$.e18[0]'*COS((value->'$.e23[0]'/180)*PI())))*180/PI())+180
- ELSE
- (ATAN(AVG(value->'$.e18[0]'*SIN((value->'$.e23[0]'/180)*PI()))/AVG(value->'$.e18[0]'*COS((value->'$.e23[0]'/180)*PI())))*180/PI())+360
- END),3) AS '${sensorKey}'
- </when>
- <otherwise>
- ROUND(AVG(value->'$.${sensorKey}[0]'),3) AS '${sensorKey}'
- </otherwise>
- </choose>
- </foreach>
+ mac, `value`, version
FROM
history_minutely_${timeUnits}
- WHERE time <![CDATA[>=]]> #{start} AND time <![CDATA[<]]> #{end}
- GROUP BY mac
+ WHERE `time` <![CDATA[>=]]> #{start}
+ AND `time` <![CDATA[<]]> #{end}
+ <if test="macs != null">
+ AND mac IN
+ <foreach collection="macs" item="mac" open="(" close=")" separator=",">
+ #{mac}
+ </foreach>
+ </if>
</select>
</mapper>
\ No newline at end of file
--
Gitblit v1.8.0