ZhuDongming
2020-03-31 63ec97fc0ff6cdfb9dd3c9c0287ce784f0c2aaf5
update指定设备发送任务
5 files modified
32 ■■■■■ changed files
src/main/java/com/moral/mapper/HistoryMapper.java 2 ●●●●● patch | view | raw | blame | history
src/main/java/com/moral/service/DeviceService.java 2 ●●●●● patch | view | raw | blame | history
src/main/java/com/moral/service/impl/DeviceServiceImpl.java 5 ●●●●● patch | view | raw | blame | history
src/main/java/com/moral/task/HistoryTableInsertTask.java 2 ●●● patch | view | raw | blame | history
src/main/resources/mapper/HistoryMapper.xml 21 ●●●●● patch | view | raw | blame | history
src/main/java/com/moral/mapper/HistoryMapper.java
@@ -18,6 +18,8 @@
    List<Map<String, Object>> getSensorDataByMac(Map<String,Object> parameters);
    List<Map<String, Object>> getSensorDataByMacOnce(Map<String,Object> parameters);
    List<Map<String, Object>> getSensorDataOnce(Map<String,Object> parameters);
    
    Map<String, Object> getMinData(Map<String,Object> parameters);
src/main/java/com/moral/service/DeviceService.java
@@ -11,6 +11,8 @@
    List<Map<String, Object>> getSensorDataByMac(Map<String, Object> parameters);
    List<Map<String, Object>> getSensorDataByMacOnce(Map<String, Object> parameters);
    List<String> getMacs();
    List<String> getMacByOrganizationid(List<Object> organizationIdList);
src/main/java/com/moral/service/impl/DeviceServiceImpl.java
@@ -38,6 +38,11 @@
    }
    @Override
    public List<Map<String, Object>> getSensorDataByMacOnce(Map<String, Object> parameters) {
        return historyMapper.getSensorDataByMacOnce(parameters);
    }
    @Override
    public List<String> getMacs() {
        return deviceMapper.getMacs();
    }
src/main/java/com/moral/task/HistoryTableInsertTask.java
@@ -810,7 +810,7 @@
        devices.put("start", startTime);
        devices.put("end", endTime);
        try {
            List<Map<String, Object>> minutelyData = deviceService.getSensorDataByMac(devices);
            List<Map<String, Object>> minutelyData = deviceService.getSensorDataByMacOnce(devices);
            XxlJobLogger.log("historyMinutelyData:" + minutelyData.size());
            List<Map<String, Object>> minutelyDataList = new ArrayList<>();
            for (Map<String, Object> deviceData : minutelyData) {
src/main/resources/mapper/HistoryMapper.xml
@@ -120,6 +120,27 @@
        h.mac
    </select>
    <select id="getSensorDataByMacOnce" resultType="java.util.LinkedHashMap">
        SELECT
        h.mac,DATE_FORMAT(time,'%Y-%m-%dT%H:%i') time,
        <foreach  collection="sensorKeys" separator="," item="sensorKey">
            AVG(value->'$.${sensorKey}') AS '${sensorKey}',
            MAX(cast(h.value ->'$.${sensorKey}' as decimal(11,3))) AS 'MAX${sensorKey}',
            MIN(cast(h.value ->'$.${sensorKey}' as decimal(11,3))) AS 'MIN${sensorKey}'
        </foreach>
        FROM
        history h
        WHERE
        h.time >= #{start}
        AND h.time <![CDATA[<]]> #{end}
        and h.mac in
        <foreach collection="macList" index="index" item="mac" open="(" separator="," close=")">
            #{mac}
        </foreach>
        group by
        h.mac,DATE_FORMAT(time,'%Y-%m-%dT%H:%i')
    </select>
    <select id="getSensorDataOnce" resultType="java.util.LinkedHashMap">
        SELECT
        h.mac,DATE_FORMAT(time,'%Y-%m-%dT%H:%i') time,