From 3c7db3d43212a01302c3b375f94a332e1f28d511 Mon Sep 17 00:00:00 2001 From: kaiyu <404897439@qq.com> Date: Thu, 22 Oct 2020 10:10:07 +0800 Subject: [PATCH] 增加国控站坐标获取 --- src/main/java/com/moral/service/impl/AlarmDailyServiceImpl.java | 47 +++++++++++++++++++++++++++++++++++++++++++++++ 1 files changed, 47 insertions(+), 0 deletions(-) diff --git a/src/main/java/com/moral/service/impl/AlarmDailyServiceImpl.java b/src/main/java/com/moral/service/impl/AlarmDailyServiceImpl.java index de4d232..d5d5e4e 100644 --- a/src/main/java/com/moral/service/impl/AlarmDailyServiceImpl.java +++ b/src/main/java/com/moral/service/impl/AlarmDailyServiceImpl.java @@ -5,10 +5,14 @@ import java.time.temporal.TemporalAdjusters; import java.util.ArrayList; import java.util.Arrays; +import java.util.Collections; +import java.util.Comparator; import java.util.HashMap; +import java.util.Iterator; import java.util.LinkedHashMap; import java.util.List; import java.util.Map; +import java.util.Map.Entry; import java.util.stream.Collectors; import javax.annotation.Resource; @@ -16,6 +20,7 @@ import org.springframework.stereotype.Service; import org.springframework.util.ObjectUtils; +import com.moral.entity.Sensor; import com.moral.mapper.AlarmDailyMapper; import com.moral.mapper.SensorMapper; import com.moral.service.AlarmDailyService; @@ -119,4 +124,46 @@ return Arrays.asList(result); } + @Override + public List<Map<String, Object>> getAlarmDataByMonth(Map<String, Object> parameters) { + LocalDate localDate = LocalDate.now(); + List<Sensor> sensors = sensorMapper.selectAll(); +// Iterator<Sensor> iterator = sensors.iterator(); +// while (iterator.hasNext()) { +// if ("warn".equals(iterator.next().getSensorKey())) { +// iterator.remove(); +// } +// } + parameters.put("start", localDate.with(TemporalAdjusters.firstDayOfMonth())); + parameters.put("end", localDate.with(TemporalAdjusters.firstDayOfNextMonth())); + parameters.put("sensors", sensors); + Map<String, Object> map = alarmDailyMapper.getAlarmDataByMonth(parameters); + List<Entry<String, Object>> list = new ArrayList<Entry<String,Object>>(map.entrySet()); + Collections.sort(list, new Comparator<Map.Entry<String, Object>>() { + @Override + public int compare(Entry<String, Object> o1, Entry<String, Object> o2) { + if (o2.getValue().equals(o1.getValue())) { + return o1.getKey().compareTo(o2.getKey()); + //return Integer.compare(Integer.valueOf(o1.getKey().replace("e", "")),Integer.valueOf(o2.getKey().replace("e", ""))); + } else { + return Integer.valueOf(o2.getValue().toString()).compareTo(Integer.valueOf(o1.getValue().toString())); + } + } + }); + List<Map<String, Object>> resultList = new ArrayList<Map<String,Object>>(); + for (Entry<String, Object> entry : list) { + for (Sensor sensor : sensors) { + if (!entry.getValue().toString().equals("0") && entry.getKey().equals(sensor.getSensorKey())) { + Map<String, Object> map2 = new HashMap<String, Object>(); + map2.put(sensor.getDescription(), entry.getValue()); + resultList.add(map2); + sensors.remove(sensor); + break; + } + } + } + + return resultList; + } + } -- Gitblit v1.8.0