| | |
| | | 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();
|
| | | }
|
| | | }
|
| | | // 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);
|
| | |
| | | @Override
|
| | | public int compare(Entry<String, Object> o1, Entry<String, Object> o2) {
|
| | | if (o2.getValue().equals(o1.getValue())) {
|
| | | return Integer.compare(Integer.valueOf(o1.getKey().replace("e", "")),Integer.valueOf(o2.getKey().replace("e", "")));
|
| | | 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()));
|
| | | }
|
| | | return Integer.valueOf(o2.getValue().toString()).compareTo(Integer.valueOf(o1.getValue().toString()));
|
| | | }
|
| | | });
|
| | | List<Map<String, Object>> resultList = new ArrayList<Map<String,Object>>();
|
| | |
| | | Set<String> sensors = new TreeSet<String>(new Comparator<String>() {
|
| | | @Override
|
| | | public int compare(String o1, String o2) {
|
| | | return Integer.compare(Integer.valueOf(o1.split("-")[0].replace("e", "")), Integer.valueOf(o2.split("-")[0].replace("e", "")));
|
| | | return o1.split("-")[0].compareTo(o2.split("-")[0]);
|
| | | //return Integer.compare(Integer.valueOf(o1.split("-")[0].replace("e", "")), Integer.valueOf(o2.split("-")[0].replace("e", "")));
|
| | | }
|
| | | });
|
| | | Map<String, Double> sortMap = new HashMap<String, Double>();
|
| | |
| | | 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) {
|
| | | // 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));
|
| | | if (key1[0].compareTo(key2[0]) == 0) {
|
| | | return Integer.compare(Integer.valueOf(key1[1]), Integer.valueOf(key2[1]));
|
| | | } else {
|
| | | return key1[0].compareTo(key2[0]);
|
| | | }
|
| | | return Integer.valueOf(sensor1).compareTo(Integer.valueOf(sensor2));
|
| | | } else {
|
| | | return o2.getValue().compareTo(o1.getValue());
|
| | | }
|
| | | return o2.getValue().compareTo(o1.getValue());
|
| | | }
|
| | |
|
| | | });
|