From 54a30a0171c552f9f885ed9f0a90ac53069c4e35 Mon Sep 17 00:00:00 2001 From: lizijie <lzjiiie@163.com> Date: Tue, 24 Nov 2020 18:10:40 +0800 Subject: [PATCH] 数据转发程序离线报警 --- src/main/resources/mapper/AlarmMapper.xml | 38 +++++++++++++++++++++----------------- 1 files changed, 21 insertions(+), 17 deletions(-) diff --git a/src/main/resources/mapper/AlarmMapper.xml b/src/main/resources/mapper/AlarmMapper.xml index 210ab59..f070bda 100644 --- a/src/main/resources/mapper/AlarmMapper.xml +++ b/src/main/resources/mapper/AlarmMapper.xml @@ -1,25 +1,29 @@ <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> <mapper namespace="com.moral.mapper.AlarmMapper"> - <select id="getAvgAlarmData" resultType="java.util.LinkedHashMap"> + <select id="getAlarmData" resultType="java.util.LinkedHashMap"> SELECT - a.mac, - max(a.state) state - <foreach collection="sensorKeys" open="," separator="," item="sensorKey"> - AVG(a.json->'$.${sensorKey}[0]') AS '${sensorKey}' - </foreach> + json_search ( json, 'all', '1' ) '1', + json_search ( json, 'all', '2' ) '2', + json_search ( json, 'all', '3' ) '3' FROM - alarm_${yearAndMonth} a + alarm_${yearAndMonth} WHERE - a.time >= #{start} - AND a.time <![CDATA[<]]> #{end} - AND a.mac in - <foreach collection="macs" open="(" separator="," close=")" - item="mac"> - #{mac} - </foreach> - group by - a.mac + time >= #{start} + AND time <![CDATA[<]]> #{end} + AND mac =#{mac} + </select> + + <select id="getMacs" resultType="java.lang.String"> + SELECT + mac + FROM + alarm_${yearAndMonth} + where + time >= #{start} + AND time <![CDATA[<]]> #{end} + GROUP BY + mac </select> <insert id="insertAlarmDaily"> @@ -32,7 +36,7 @@ </insert> <update id="createTable"> - CREATE TABLE `alarm_${yearAndMonth}` ( + CREATE TABLE IF NOT EXISTS `alarm_${yearAndMonth}` ( `mac` varchar(20) CHARACTER SET utf8 DEFAULT NULL, `json` json DEFAULT NULL, `state` int(2) DEFAULT NULL, -- Gitblit v1.8.0