From cdd72249b457b83e425584c3fd9bdf82577179ea Mon Sep 17 00:00:00 2001 From: xufenglei <xufenglei> Date: Wed, 09 May 2018 14:10:03 +0800 Subject: [PATCH] 三级警报 优化 --- src/main/java/com/moral/service/impl/HistoryMinutelyServiceImpl.java | 23 +++++++++++++++++++---- 1 files changed, 19 insertions(+), 4 deletions(-) diff --git a/src/main/java/com/moral/service/impl/HistoryMinutelyServiceImpl.java b/src/main/java/com/moral/service/impl/HistoryMinutelyServiceImpl.java index d1653fc..efacd53 100644 --- a/src/main/java/com/moral/service/impl/HistoryMinutelyServiceImpl.java +++ b/src/main/java/com/moral/service/impl/HistoryMinutelyServiceImpl.java @@ -44,6 +44,7 @@ import com.moral.entity.charts.DataCondition; import com.moral.entity.charts.LineChartCriteria; import com.moral.entity.charts.TimePeriod; +import com.moral.mapper.AlarmDailyMapper; import com.moral.mapper.AlarmMapper; import com.moral.mapper.DeviceMapper; import com.moral.mapper.HistoryMinutelyMapper; @@ -64,7 +65,7 @@ private SensorMapper sensorMapper; @Resource - private AlarmMapper alarmMapper; + private AlarmDailyMapper alarmDailyMapper; @Override public Map<String, Object> getDayAQIByDevice(Map<String, Object> parameters) { @@ -223,7 +224,17 @@ Collections.sort(sortList,new Comparator<Map.Entry<String,Double>>(){ @Override public int compare(Entry<String, Double> o1, Entry<String, Double> o2) { - return o1.getValue().compareTo(o2.getValue()); + if (o2.getValue().compareTo(o1.getValue()) == 0) { + String[] key1 = o1.getKey().split("-"); + String[] key2 = o2.getKey().split("-"); + String sensor1 = key1[0].replace("e", ""); + String sensor2 = key2[0].replace("e", ""); + if (Integer.valueOf(sensor1).compareTo(Integer.valueOf(sensor2)) == 0) { + return Integer.compare(Integer.valueOf(key1[1]), Integer.valueOf(key2[1])); + } + return Integer.valueOf(sensor1).compareTo(Integer.valueOf(sensor2)); + } + return o2.getValue().compareTo(o1.getValue()); } }); @@ -277,7 +288,7 @@ Object type = parameters.get("type"); if ("year".equals(type) || "month".equals(type)) { parameters.put("sensorKeys", Arrays.asList("e1", "e2", "e10", "e11", "e15", "e16")); - resultMap.put("alarmData" + part, alarmMapper.getAlarmData(parameters).get(0)); + resultMap.put("alarmData" + part, alarmDailyMapper.getAlarmData(parameters).get(0)); } return resultMap; } @@ -325,7 +336,11 @@ List<Sensor> sensorList = sensorMapper.getSensorsByCriteria(parameters); for (Sensor sensor : sensorList) { sensorKeys.add(sensor.getSensorKey()); - sensors.add(sensor.getSensorKey() + "-" + sensor.getName() + "-" + sensor.getUnit()); + String string = sensor.getSensorKey() + "-" + sensor.getName() + "-" + sensor.getUnit(); + if (parameters.containsKey("description")) { + string += "-" + sensor.getDescription(); + } + sensors.add(string); } } parameters.put("sensorKeys", sensorKeys); -- Gitblit v1.8.0