From 3702da0c36ba791c3bdc73260ad8a22864382ba6 Mon Sep 17 00:00:00 2001 From: wany <13995595726@qq.com> Date: Mon, 26 Aug 2024 16:46:29 +0800 Subject: [PATCH] =?UTF-8?q?=E8=A7=A3=E5=86=B3=E5=B8=83=E7=BD=AE=E5=9B=BE-?= =?UTF-8?q?=E6=B8=97=E6=B5=81=E6=9F=A5=E8=AF=A2=E6=8A=A5=E9=94=99?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../xyt/service/OsmoticPressRService.java | 38 ++++++++++--------- 1 file changed, 20 insertions(+), 18 deletions(-) diff --git a/src/main/java/com/gunshi/project/xyt/service/OsmoticPressRService.java b/src/main/java/com/gunshi/project/xyt/service/OsmoticPressRService.java index 10878cb..568446b 100644 --- a/src/main/java/com/gunshi/project/xyt/service/OsmoticPressRService.java +++ b/src/main/java/com/gunshi/project/xyt/service/OsmoticPressRService.java @@ -392,24 +392,26 @@ public class OsmoticPressRService extends ServiceImpl stationCodes = list.stream().map(OsmoticPressVo::getStationCode).collect(Collectors.toList()); - String maxTm = list.stream().filter(o->o.getTm() != null).max(Comparator.comparing(OsmoticPressVo::getTm)).get().getTm(); - String minTm = list.stream().filter(o->o.getTm() != null).min(Comparator.comparing(OsmoticPressVo::getTm)).get().getTm(); - so.setStationCodes(stationCodes); - DateTimeRangeSo dateTimeRangeSo = new DateTimeRangeSo(); - dateTimeRangeSo.setStart(DateUtil.convertStringToDate(minTm)); - dateTimeRangeSo.setEnd(DateUtil.convertStringToDate(maxTm)); - so.setDateTimeRangeSo(dateTimeRangeSo); - List warnList = baseMapper.queryWarn(so); - list.stream().map(o->{ - if(o.getTm() != null && DateUtil.hoursBetweenDate(DateUtil.convertStringToDate(o.getTm()), new Date()) > 48){ - o.setFlag(1); - } - Boolean b = warnList.stream().filter(t->t.getStationCode().equals(o.getStationCode()) && t.getTm().equals(o.getTm())).findAny().isPresent(); - if(b){ - o.setStatus(1); - } - return o; - }).collect(Collectors.toList()); + if(list.stream().filter(o->o.getTm() != null).collect(Collectors.toList()).size() > 0 ){ + String maxTm = list.stream().filter(o->o.getTm() != null).max(Comparator.comparing(OsmoticPressVo::getTm)).get().getTm(); + String minTm = list.stream().filter(o->o.getTm() != null).min(Comparator.comparing(OsmoticPressVo::getTm)).get().getTm(); + so.setStationCodes(stationCodes); + DateTimeRangeSo dateTimeRangeSo = new DateTimeRangeSo(); + dateTimeRangeSo.setStart(DateUtil.convertStringToDate(minTm)); + dateTimeRangeSo.setEnd(DateUtil.convertStringToDate(maxTm)); + so.setDateTimeRangeSo(dateTimeRangeSo); + List warnList = baseMapper.queryWarn(so); + list.stream().map(o->{ + if(o.getTm() != null && DateUtil.hoursBetweenDate(DateUtil.convertStringToDate(o.getTm()), new Date()) > 48){ + o.setFlag(1); + } + Boolean b = warnList.stream().filter(t->t.getStationCode().equals(o.getStationCode()) && t.getTm().equals(o.getTm())).findAny().isPresent(); + if(b){ + o.setStatus(1); + } + return o; + }).collect(Collectors.toList()); + } return list; }