From b431b0bb15e9f0cc978d792c049ab121d7303ad2 Mon Sep 17 00:00:00 2001 From: xuyang <748613696@qq.com> Date: Wed, 31 Jan 2024 12:41:45 +0800 Subject: [PATCH] =?UTF-8?q?=E7=AE=97=E6=B3=95=E8=B0=83=E6=95=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../mysql/Impl/line/DayDataServiceImpl.java | 14 ++++++++++---- .../mysql/Impl/line/LimitRateServiceImpl.java | 2 +- 2 files changed, 11 insertions(+), 5 deletions(-) diff --git a/pqs-prepare/prepare-boot/src/main/java/com/njcn/prepare/harmonic/service/mysql/Impl/line/DayDataServiceImpl.java b/pqs-prepare/prepare-boot/src/main/java/com/njcn/prepare/harmonic/service/mysql/Impl/line/DayDataServiceImpl.java index efa8d92da..b5ac1c617 100644 --- a/pqs-prepare/prepare-boot/src/main/java/com/njcn/prepare/harmonic/service/mysql/Impl/line/DayDataServiceImpl.java +++ b/pqs-prepare/prepare-boot/src/main/java/com/njcn/prepare/harmonic/service/mysql/Impl/line/DayDataServiceImpl.java @@ -556,6 +556,7 @@ public class DayDataServiceImpl implements DayDataService { } @Override + @Transactional(rollbackFor = {Exception.class}) public void dataPltHardler(CalculatedParam calculatedParam) { log.info(LocalDateTime.now() + "data_plt转r_stat_data_plt_d开始=====》"); List list16 = new ArrayList<>(); @@ -1820,34 +1821,39 @@ public class DayDataServiceImpl implements DayDataService { //最小值 InfluxQueryWrapper influxQueryWrapper = new InfluxQueryWrapper(DataPlt.class); influxQueryWrapper.regular(DataInHarmRateV::getLineId, lineIndex) - .eq(DataPlt::getValueType, InfluxDbSqlConstant.MIN) .min(DataPlt::getPlt) .groupBy(DataPlt::getLineId,DataPlt::getPhaseType,DataPlt::getQualityFlag,DataPlt::getValueType) .between(DataPlt::getTime, startTime, endTime); List result1 = dataPltMapper.getStatisticsByWraper(influxQueryWrapper); + result1.forEach(item->{ + item.setValueType(InfluxDbSqlConstant.MIN); + }); result.addAll(result1); //最大值 InfluxQueryWrapper influxQueryWrapper2 = new InfluxQueryWrapper(DataPlt.class); influxQueryWrapper2.regular(DataPlt::getLineId, lineIndex) - .eq(DataPlt::getValueType, InfluxDbSqlConstant.MAX) .max(DataPlt::getPlt) .groupBy(DataPlt::getLineId,DataPlt::getPhaseType,DataPlt::getQualityFlag,DataPlt::getValueType) .between(DataPlt::getTime, startTime, endTime); List result2 = dataPltMapper.getStatisticsByWraper(influxQueryWrapper2); + result2.forEach(item->{ + item.setValueType(InfluxDbSqlConstant.MAX); + }); result.addAll(result2); //平均值 InfluxQueryWrapper influxQueryWrapper3 = new InfluxQueryWrapper(DataPlt.class); influxQueryWrapper3.regular(DataPlt::getLineId, lineIndex) - .eq(DataPlt::getValueType, InfluxDbSqlConstant.AVG_WEB) .mean(DataPlt::getPlt) .groupBy(DataPlt::getLineId,DataPlt::getPhaseType,DataPlt::getQualityFlag,DataPlt::getValueType) .between(DataPlt::getTime, startTime, endTime); List result3 = dataPltMapper.getStatisticsByWraper(influxQueryWrapper3); + result3.forEach(item->{ + item.setValueType(InfluxDbSqlConstant.AVG_WEB); + }); result.addAll(result3); //CP95(取平均值的CP95值) InfluxQueryWrapper influxQueryWrapper4 = new InfluxQueryWrapper(DataPlt.class); influxQueryWrapper4.regular(DataPlt::getLineId, lineIndex) - .eq(DataPlt::getValueType, InfluxDbSqlConstant.AVG_WEB) .percentile(DataPlt::getPlt,95) .groupBy(DataPlt::getLineId,DataPlt::getPhaseType,DataPlt::getQualityFlag,DataPlt::getValueType) .between(DataPlt::getTime, startTime, endTime); diff --git a/pqs-prepare/prepare-boot/src/main/java/com/njcn/prepare/harmonic/service/mysql/Impl/line/LimitRateServiceImpl.java b/pqs-prepare/prepare-boot/src/main/java/com/njcn/prepare/harmonic/service/mysql/Impl/line/LimitRateServiceImpl.java index 6f39cd700..79d58d9ec 100644 --- a/pqs-prepare/prepare-boot/src/main/java/com/njcn/prepare/harmonic/service/mysql/Impl/line/LimitRateServiceImpl.java +++ b/pqs-prepare/prepare-boot/src/main/java/com/njcn/prepare/harmonic/service/mysql/Impl/line/LimitRateServiceImpl.java @@ -219,7 +219,7 @@ public class LimitRateServiceImpl extends MppServiceImpl list = list1.stream().map(m -> { list2.stream().filter(m2-> Objects.equals(m.getLineId(),m2.getLineId()) && Objects.equals(m.getPhasicType(),m2.getPhasicType())).forEach(m2-> { m.setAllTime(m.getAllTime() + m2.getAllTime()); - m.setFlickerAllTime(m.getFlickerOvertime() + m2.getFlickerAllTime()); + m.setFlickerAllTime(m.getFlickerAllTime() + m2.getFlickerAllTime()); m.setFreqDevOvertime(m.getFreqDevOvertime() + m2.getFreqDevOvertime()); m.setVoltageDevOvertime(m.getVoltageDevOvertime() + m2.getVoltageDevOvertime()); m.setUbalanceOvertime(m.getUbalanceOvertime() + m2.getUbalanceOvertime());