yuejiaying 4 лет назад
Родитель
Сommit
7ad3ae7c0d

+ 5 - 11
sms_water/src/main/java/com/huaxu/service/impl/OnlineMonitorImpl.java

@@ -92,17 +92,11 @@ public class OnlineMonitorImpl implements OnlineMonitorService {
             List<MonitorDataCollectDto> calculateRes = onlineMonitorMapper.selectSceneParam(monitorDataCollectDto);
             GetCalMonitorData(result, calculateRes);
             //按水量倒序排序 如果是水源按照取水量排序,其他按照供水量
-            result.sort(new Comparator<MonitorDataCollectDto>() {
-                @Override
-                public int compare(MonitorDataCollectDto o1, MonitorDataCollectDto o2) {
-                    Double d1 = monitorDataCollectDto.getSceneTypeName().equals("水源") ? (o1.getIntakeWaterUsage() == null ? 0d : o1.getIntakeWaterUsage()) : (o1.getYieldWaterUsage() == null ? 0d : o1.getYieldWaterUsage());
-                    Double d2 = monitorDataCollectDto.getSceneTypeName().equals("水源") ? (o2.getIntakeWaterUsage() == null ? 0d : o2.getIntakeWaterUsage()) : (o2.getYieldWaterUsage() == null ? 0d : o2.getYieldWaterUsage());
-                    if (d1 > d2) {
-                        return -1;
-                    }
-                    return 0;
-                }
-            });
+            if(monitorDataCollectDto.getSceneTypeName().equals("水源")){
+                result.sort(Comparator.comparing(MonitorDataCollectDto::getIntakeWaterUsage,Comparator.nullsFirst(Double::compareTo)).reversed());
+            }else{
+                result.sort(Comparator.comparing(MonitorDataCollectDto::getYieldWaterUsage,Comparator.nullsFirst(Double::compareTo)).reversed());
+            }
         }else{
             GetCalMonitorData(result, new ArrayList<>());
         }