xufenglei
2018-04-27 4686914dd93138d69e9280a88f24a51a711f52be
优化 报警数据查询
2 files modified
32 ■■■■ changed files
src/main/java/com/moral/service/impl/AlarmServiceImpl.java 24 ●●●● patch | view | raw | blame | history
src/main/resources/mapper/AlarmMapper.xml 8 ●●●● patch | view | raw | blame | history
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);
                    }
                }
            }
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