diff --git a/pqs-supervision/supervision-boot/src/main/java/com/njcn/supervision/service/device/impl/LineWarningServiceImpl.java b/pqs-supervision/supervision-boot/src/main/java/com/njcn/supervision/service/device/impl/LineWarningServiceImpl.java index 32f319d69..3fba587f8 100644 --- a/pqs-supervision/supervision-boot/src/main/java/com/njcn/supervision/service/device/impl/LineWarningServiceImpl.java +++ b/pqs-supervision/supervision-boot/src/main/java/com/njcn/supervision/service/device/impl/LineWarningServiceImpl.java @@ -50,6 +50,7 @@ import com.njcn.system.pojo.po.DictData; import com.njcn.user.api.DeptFeignClient; import com.njcn.web.factory.PageFactory; import lombok.RequiredArgsConstructor; +import lombok.extern.slf4j.Slf4j; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; @@ -76,6 +77,7 @@ import static java.util.regex.Pattern.*; * @author xy * @since 2024-06-17 */ +@Slf4j @Service @RequiredArgsConstructor public class LineWarningServiceImpl extends MppServiceImpl implements ILineWarningService { @@ -374,11 +376,16 @@ public class LineWarningServiceImpl extends MppServiceImpl { String time = item.getTime().format(DateTimeFormatter.ofPattern(DatePattern.NORM_DATE_PATTERN)); - double maxData = getFreqDev(param.getLineId() + List freqDevList = getFreqDev(param.getLineId() , time + " 00:00:00" , time + " 23:59:59" - ).get(0).getFreqDev(); - channelEachData(item, maxData > 0 ? overlimit.getFreqDev() : -overlimit.getFreqDev(), "getFreqDev", result, DicDataEnum.FREQUENCY_DEV.getName(), timeInterval, maxData); + ); + if (CollUtil.isNotEmpty(freqDevList)) { + double maxData = freqDevList.get(0).getFreqDev(); + channelEachData(item, maxData > 0 ? overlimit.getFreqDev() : -overlimit.getFreqDev(), "getFreqDev", result, DicDataEnum.FREQUENCY_DEV.getName(), timeInterval, maxData); + } else { + log.info("{}原始数据缺失", time); + } }); } } @@ -394,15 +401,19 @@ public class LineWarningServiceImpl extends MppServiceImpl voltage = voltageList.stream().map(DataV::getVuDev).collect(Collectors.toList()); - if (Math.abs(voltage.get(0)) >= Math.abs(voltage.get(1))) { - overLimit = overlimit.getUvoltageDev(); - maxData = voltage.get(0); + if (CollUtil.isNotEmpty(voltageList)) { + List voltage = voltageList.stream().map(DataV::getVuDev).collect(Collectors.toList()); + if (Math.abs(voltage.get(0)) >= Math.abs(voltage.get(1))) { + overLimit = overlimit.getUvoltageDev(); + maxData = voltage.get(0); + } else { + overLimit = overlimit.getVoltageDev(); + maxData = voltage.get(1); + } + channelEachData(item, overLimit, "getVoltageDev", result, DicDataEnum.VOLTAGE_DEV.getName(), timeInterval, maxData); } else { - overLimit = overlimit.getVoltageDev(); - maxData = voltage.get(1); + log.info("{}原始数据缺失", time); } - channelEachData(item, overLimit, "getVoltageDev", result, DicDataEnum.VOLTAGE_DEV.getName(), timeInterval, maxData); }); } } @@ -412,11 +423,16 @@ public class LineWarningServiceImpl extends MppServiceImpl { String time = item.getTime().format(DateTimeFormatter.ofPattern(DatePattern.NORM_DATE_PATTERN)); - double maxData = getFlicker(param.getLineId() + List dataPltList = getFlicker(param.getLineId() , time + " 00:00:00" , time + " 23:59:59" - ).get(0).getPlt(); - channelEachData(item, overlimit.getFlicker(), "getFlicker", result, DicDataEnum.FLICKER.getName(), timeInterval, maxData); + ); + if (CollUtil.isNotEmpty(dataPltList)) { + double maxData = dataPltList.get(0).getPlt(); + channelEachData(item, overlimit.getFlicker(), "getFlicker", result, DicDataEnum.FLICKER.getName(), timeInterval, maxData); + } else { + log.info("{}原始数据缺失", time); + } }); } } @@ -426,11 +442,16 @@ public class LineWarningServiceImpl extends MppServiceImpl { String time = item.getTime().format(DateTimeFormatter.ofPattern(DatePattern.NORM_DATE_PATTERN)); - double maxData = getVThd(param.getLineId() + List dataVList = getVThd(param.getLineId() , time + " 00:00:00" , time + " 23:59:59" - ).get(0).getVThd(); - channelEachData(item, overlimit.getUaberrance(), "getUaberrance", result, DicDataEnum.THD_V.getName(), timeInterval, maxData); + ); + if (CollUtil.isNotEmpty(dataVList)) { + double maxData = dataVList.get(0).getVThd(); + channelEachData(item, overlimit.getUaberrance(), "getUaberrance", result, DicDataEnum.THD_V.getName(), timeInterval, maxData); + } else { + log.info("{}原始数据缺失", time); + } }); } } @@ -441,11 +462,16 @@ public class LineWarningServiceImpl extends MppServiceImpl { String time = item.getTime().format(DateTimeFormatter.ofPattern(DatePattern.NORM_DATE_PATTERN)); - double maxData = getVThd(param.getLineId() + List dataVList = getVThd(param.getLineId() , time + " 00:00:00" , time + " 23:59:59" - ).get(0).getVThd(); - channelEachData(item, overlimit.getUaberrance(), "getUaberrance", result, DicDataEnum.THD_V.getName(), timeInterval, maxData); + ); + if (CollUtil.isNotEmpty(dataVList)) { + double maxData = dataVList.get(0).getVThd(); + channelEachData(item, overlimit.getUaberrance(), "getUaberrance", result, DicDataEnum.THD_V.getName(), timeInterval, maxData); + } else { + log.info("{}原始数据缺失", time); + } }); } //谐波电压含有率2~25次 @@ -453,10 +479,15 @@ public class LineWarningServiceImpl extends MppServiceImpl { String time = item.getTime().format(DateTimeFormatter.ofPattern(DatePattern.NORM_DATE_PATTERN)); - DataHarmRateV dataHarmRateV = getDataHarmRateV(param.getLineId() + List dataHarmRateVList = getDataHarmRateV(param.getLineId() , time + " 00:00:00" - , time + " 23:59:59").get(0); - channelHarmonicData(dataHarmRateV, null, null, item, overlimit, result, "getUharm", DicDataEnum.HARMONIC_VOLTAGE.getName(), timeInterval, 2, 25); + , time + " 23:59:59"); + if (CollUtil.isNotEmpty(dataHarmRateVList)) { + DataHarmRateV dataHarmRateV = dataHarmRateVList.get(0); + channelHarmonicData(dataHarmRateV, null, null, item, overlimit, result, "getUharm", DicDataEnum.HARMONIC_VOLTAGE.getName(), timeInterval, 2, 25); + } else { + log.info("{}原始数据缺失", time); + } }); } } @@ -466,10 +497,15 @@ public class LineWarningServiceImpl extends MppServiceImpl { String time = item.getTime().format(DateTimeFormatter.ofPattern(DatePattern.NORM_DATE_PATTERN)); - DataI dataI = getDataI(param.getLineId() + List dataIList = getDataI(param.getLineId() , time + " 00:00:00" - , time + " 23:59:59").get(0); - channelHarmonicData(null, dataI, null, item, overlimit, result, "getIharm", DicDataEnum.HARMONIC_CURRENT.getName(), timeInterval, 2, 25); + , time + " 23:59:59"); + if (CollUtil.isNotEmpty(dataIList)) { + DataI dataI = dataIList.get(0); + channelHarmonicData(null, dataI, null, item, overlimit, result, "getIharm", DicDataEnum.HARMONIC_CURRENT.getName(), timeInterval, 2, 25); + } else { + log.info("{}原始数据缺失", time); + } }); } } @@ -479,10 +515,15 @@ public class LineWarningServiceImpl extends MppServiceImpl { String time = item.getTime().format(DateTimeFormatter.ofPattern(DatePattern.NORM_DATE_PATTERN)); - DataInHarmV dataInHarmV = getDataInHarmV(param.getLineId() + List dataInHarmVList = getDataInHarmV(param.getLineId() , time + " 00:00:00" - , time + " 23:59:59").get(0); - channelHarmonicData(null, null, dataInHarmV, item, overlimit, result, "getInuharm", DicDataEnum.INTERHARMONIC_VOLTAGE.getName(), timeInterval, 1, 16); + , time + " 23:59:59"); + if (CollUtil.isNotEmpty(dataInHarmVList)) { + DataInHarmV dataInHarmV = dataInHarmVList.get(0); + channelHarmonicData(null, null, dataInHarmV, item, overlimit, result, "getInuharm", DicDataEnum.INTERHARMONIC_VOLTAGE.getName(), timeInterval, 1, 16); + } else { + log.info("{}原始数据缺失", time); + } }); } } @@ -492,11 +533,16 @@ public class LineWarningServiceImpl extends MppServiceImpl { String time = item.getTime().format(DateTimeFormatter.ofPattern(DatePattern.NORM_DATE_PATTERN)); - double maxData = getUnbalance(param.getLineId() + List dataVList = getUnbalance(param.getLineId() , time + " 00:00:00" , time + " 23:59:59" - ).get(0).getVUnbalance(); - channelEachData(item, overlimit.getUbalance(), "getUbalance", result, DicDataEnum.PHASE_VOLTAGE.getName(), timeInterval, maxData); + ); + if (CollUtil.isNotEmpty(dataVList)) { + double maxData = dataVList.get(0).getVUnbalance(); + channelEachData(item, overlimit.getUbalance(), "getUbalance", result, DicDataEnum.PHASE_VOLTAGE.getName(), timeInterval, maxData); + } else { + log.info("{}原始数据缺失", time); + } }); } } @@ -506,11 +552,16 @@ public class LineWarningServiceImpl extends MppServiceImpl { String time = item.getTime().format(DateTimeFormatter.ofPattern(DatePattern.NORM_DATE_PATTERN)); - double maxData = getINeg(param.getLineId() + List dataIList = getINeg(param.getLineId() , time + " 00:00:00" , time + " 23:59:59" - ).get(0).getINeg(); - channelEachData(item, overlimit.getINeg(), "getINeg", result, DicDataEnum.NEG_CURRENT.getName(), timeInterval, maxData); + ); + if (CollUtil.isNotEmpty(dataIList)) { + double maxData = dataIList.get(0).getINeg(); + channelEachData(item, overlimit.getINeg(), "getINeg", result, DicDataEnum.NEG_CURRENT.getName(), timeInterval, maxData); + } else { + log.info("{}原始数据缺失", time); + } }); } } @@ -904,12 +955,12 @@ public class LineWarningServiceImpl extends MppServiceImpl getUnbalance(String lineIndex, String startTime, String endTime) { InfluxQueryWrapper influxQueryWrapper = new InfluxQueryWrapper(DataV.class); influxQueryWrapper.eq(DataV::getLineId, lineIndex) - .eq(DataV::getValueType, InfluxDbSqlConstant.MAX) + .eq(DataV::getValueType, InfluxDbSqlConstant.CP95) .eq(DataV::getPhaseType, "T") .max(DataV::getVUnbalance) .between(DataV::getTime, startTime, endTime); @@ -917,12 +968,12 @@ public class LineWarningServiceImpl extends MppServiceImpl getINeg(String lineIndex, String startTime, String endTime) { InfluxQueryWrapper influxQueryWrapper = new InfluxQueryWrapper(DataI.class); influxQueryWrapper.eq(DataI::getLineId, lineIndex) - .eq(DataI::getValueType, InfluxDbSqlConstant.MAX) + .eq(DataI::getValueType, InfluxDbSqlConstant.CP95) .eq(DataI::getPhaseType, "T") .max(DataI::getINeg) .between(DataI::getTime, startTime, endTime);