xufenglei
2018-04-27 4686914dd93138d69e9280a88f24a51a711f52be
优化 报警数据查询
2 files modified
10 ■■■■■ changed files
src/main/java/com/moral/service/impl/AlarmServiceImpl.java 2 ●●●●● 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,6 +62,7 @@
            Map<String, Object> alarmData = alarmDatas.get(0);
            List<String> sensors = (List<String>) parameters.get("sensors");
            List list = new ArrayList();
            if (!ObjectUtils.isEmpty(alarmData)) {
            for (String key : alarmData.keySet()) {
                for (String sensor : sensors) {
                    String[] split = sensor.split("-");
@@ -77,6 +78,7 @@
                    }
                }
            }
            }
            resultMap.put("list", list);
        }
        return resultMap;
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