From 4686914dd93138d69e9280a88f24a51a711f52be Mon Sep 17 00:00:00 2001
From: xufenglei <xufenglei>
Date: Fri, 27 Apr 2018 09:01:57 +0800
Subject: [PATCH] 优化 报警数据查询
---
src/main/resources/mapper/AlarmMapper.xml | 8 ++++----
src/main/java/com/moral/service/impl/AlarmServiceImpl.java | 24 +++++++++++++-----------
2 files changed, 17 insertions(+), 15 deletions(-)
diff --git a/src/main/java/com/moral/service/impl/AlarmServiceImpl.java b/src/main/java/com/moral/service/impl/AlarmServiceImpl.java
index 3d56965..a295091 100644
--- a/src/main/java/com/moral/service/impl/AlarmServiceImpl.java
+++ b/src/main/java/com/moral/service/impl/AlarmServiceImpl.java
@@ -62,18 +62,20 @@
Map<String, Object> alarmData = alarmDatas.get(0);
List<String> sensors = (List<String>) parameters.get("sensors");
List list = new ArrayList();
- for (String key : alarmData.keySet()) {
- for (String sensor : sensors) {
- String[] split = sensor.split("-");
- if (key.equals(split[0]) && !"0".equals(alarmData.get(key).toString())) {
- Map<String, Object> map = new HashMap<String, Object>();
- if (parameters.containsKey("description")) {
- map.put("name", split[3]);
- } else {
- map.put("name", split[1]);
+ if (!ObjectUtils.isEmpty(alarmData)) {
+ for (String key : alarmData.keySet()) {
+ for (String sensor : sensors) {
+ String[] split = sensor.split("-");
+ if (key.equals(split[0]) && !"0".equals(alarmData.get(key).toString())) {
+ Map<String, Object> map = new HashMap<String, Object>();
+ if (parameters.containsKey("description")) {
+ map.put("name", split[3]);
+ } else {
+ map.put("name", split[1]);
+ }
+ map.put("value", alarmData.get(key));
+ list.add(map);
}
- map.put("value", alarmData.get(key));
- list.add(map);
}
}
}
diff --git a/src/main/resources/mapper/AlarmMapper.xml b/src/main/resources/mapper/AlarmMapper.xml
index a1f8c94..f053aeb 100644
--- a/src/main/resources/mapper/AlarmMapper.xml
+++ b/src/main/resources/mapper/AlarmMapper.xml
@@ -1,7 +1,7 @@
<?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="getAlarmData" resultType="java.util.Map">
+ <select id="getAlarmData" resultType="java.util.LinkedHashMap">
SELECT
<if test="dimension=='monitorPoint'">
`name`,
@@ -32,11 +32,11 @@
</foreach>
</when>
<otherwise>
- DATE_FORMAT( h.time, '%Y-%m-%d' ) AS 'time'
+ h.time
</otherwise>
</choose>
FROM
- alarm h,
+ alarm_daily h,
device d,
monitor_point mp
WHERE d.monitor_point_id = mp.id
@@ -68,7 +68,7 @@
<if test="dimension=='monitorPoint'">
mp.id,
</if>
- DATE_FORMAT( h.time, '%Y-%m-%d' )
+ h.time
) a
<if test="dimension=='monitorPoint'">
GROUP BY name
--
Gitblit v1.8.0