From decc45300653afc4649818815df4eea8468dfbf4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=9B=A8=E6=9C=A8c?= <857448963@qq.com> Date: Tue, 14 Nov 2023 10:44:02 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E6=94=B9bug?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../harmonic/service/impl/HarmonicServiceImpl.java | 12 ++++++++---- .../service/impl/SteadyExceedRateServiceImpl.java | 14 +++++++++++--- 2 files changed, 19 insertions(+), 7 deletions(-) diff --git a/pqs-harmonic/harmonic-boot/src/main/java/com/njcn/harmonic/service/impl/HarmonicServiceImpl.java b/pqs-harmonic/harmonic-boot/src/main/java/com/njcn/harmonic/service/impl/HarmonicServiceImpl.java index ac8d8de65..26c0abf04 100644 --- a/pqs-harmonic/harmonic-boot/src/main/java/com/njcn/harmonic/service/impl/HarmonicServiceImpl.java +++ b/pqs-harmonic/harmonic-boot/src/main/java/com/njcn/harmonic/service/impl/HarmonicServiceImpl.java @@ -34,7 +34,7 @@ import org.springframework.util.CollectionUtils; import java.math.BigDecimal; import java.math.RoundingMode; -import java.time.Instant; +import java.time.*; import java.util.*; import java.util.stream.Collectors; import java.util.stream.Stream; @@ -307,7 +307,11 @@ public class HarmonicServiceImpl implements IHarmonicService { if (CollUtil.isNotEmpty(limitRates)) { limitRates.forEach(list -> { LimitTarget limitRatePO = BeanUtil.copyProperties(list, LimitTarget.class); - limitRatePO.setTime(list.getTime().toInstant()); + LocalDateTime localDateTime = list.getTime().atStartOfDay(); + + // 将LocalDateTime转换为Instant + Instant instant = localDateTime.toInstant(ZoneOffset.ofHours(8)); + limitRatePO.setTime(instant); limitRatePO.setLineId(list.getLineId()); limitRatePO.setPhasicType(list.getPhasicType()); limitRatePO.setAllTime(list.getAllTime()); @@ -413,8 +417,8 @@ public class HarmonicServiceImpl implements IHarmonicService { } } } - Map> map = list.stream().collect(Collectors.groupingBy(RStatLimitTargetDPO::getTime)); - for (Date key : map.keySet()) { + Map> map = list.stream().collect(Collectors.groupingBy(RStatLimitTargetDPO::getTime)); + for (LocalDate key : map.keySet()) { int overDay = 0; List l = map.get(key); for (RStatLimitTargetDPO pojo : l) { diff --git a/pqs-harmonic/harmonic-boot/src/main/java/com/njcn/harmonic/service/impl/SteadyExceedRateServiceImpl.java b/pqs-harmonic/harmonic-boot/src/main/java/com/njcn/harmonic/service/impl/SteadyExceedRateServiceImpl.java index 2f9782ac3..994e6ece9 100644 --- a/pqs-harmonic/harmonic-boot/src/main/java/com/njcn/harmonic/service/impl/SteadyExceedRateServiceImpl.java +++ b/pqs-harmonic/harmonic-boot/src/main/java/com/njcn/harmonic/service/impl/SteadyExceedRateServiceImpl.java @@ -30,6 +30,11 @@ import org.springframework.stereotype.Service; import org.springframework.util.CollectionUtils; import java.text.SimpleDateFormat; +import java.time.Instant; +import java.time.LocalDate; +import java.time.LocalDateTime; +import java.time.ZoneOffset; +import java.time.format.DateTimeFormatter; import java.util.*; import java.util.stream.Collectors; @@ -476,10 +481,13 @@ public class SteadyExceedRateServiceImpl implements SteadyExceedRateService { if(CollUtil.isNotEmpty(limitRates)){ limitRates.forEach(list ->{ LimitRatePO limitRatePO = new LimitRatePO(); - limitRatePO.setDayStr(DateUtil.format(list.getTime(),"yyyy-MM-dd")); - limitRatePO.setMouthStr(DateUtil.format(list.getTime(),"yyyy-MM")); + limitRatePO.setDayStr(list.getTime().format(DateTimeFormatter.ofPattern("yyyy-MM-dd"))); + limitRatePO.setMouthStr(list.getTime().format(DateTimeFormatter.ofPattern("yyyy-MM"))); + LocalDateTime localDateTime = list.getTime().atStartOfDay(); + + Instant instant = localDateTime.toInstant(ZoneOffset.ofHours(8)); + limitRatePO.setTime(instant); - limitRatePO.setTime(list.getTime().toInstant()); limitRatePO.setLineId(list.getLineId()); limitRatePO.setPhasicType(list.getPhasicType()); limitRatePO.setAllTime(list.getAllTime());