diff --git a/pqs-harmonic/harmonic-boot/src/main/java/com/njcn/harmonic/service/impl/HistoryResultServiceImpl.java b/pqs-harmonic/harmonic-boot/src/main/java/com/njcn/harmonic/service/impl/HistoryResultServiceImpl.java index f5e7da4e8..19ee557ba 100644 --- a/pqs-harmonic/harmonic-boot/src/main/java/com/njcn/harmonic/service/impl/HistoryResultServiceImpl.java +++ b/pqs-harmonic/harmonic-boot/src/main/java/com/njcn/harmonic/service/impl/HistoryResultServiceImpl.java @@ -13,6 +13,7 @@ import com.njcn.device.biz.commApi.CommTerminalGeneralClient; import com.njcn.device.biz.pojo.dto.LineDevGetDTO; import com.njcn.device.biz.pojo.po.Overlimit; import com.njcn.device.biz.pojo.po.PqsDeviceUnit; +import com.njcn.device.biz.utils.COverlimitUtil; import com.njcn.event.api.EventDetailFeignClient; import com.njcn.event.pojo.po.EventDetail; import com.njcn.harmonic.enums.HarmonicResponseEnum; @@ -38,6 +39,8 @@ import com.njcn.influx.pojo.dto.HarmHistoryDataDTO; import com.njcn.influx.pojo.po.DataHarmRateV; import com.njcn.influx.pojo.po.DataI; import com.njcn.influx.query.InfluxQueryWrapper; +import com.njcn.system.api.DicDataFeignClient; +import com.njcn.system.pojo.po.DictData; import com.njcn.user.api.DeptFeignClient; import com.njcn.user.pojo.dto.DeptDTO; import com.njcn.web.utils.WebUtil; @@ -84,6 +87,8 @@ public class HistoryResultServiceImpl implements HistoryResultService { private final CommTerminalGeneralClient commTerminalGeneralClient; + private final DicDataFeignClient dicDataFeignClient; + @Override @@ -246,10 +251,21 @@ public class HistoryResultServiceImpl implements HistoryResultService { if (!lineId.isEmpty()) { Float topLimit = 0f; Float lowerLimit = 0f; - //获取限值 - Overlimit overlimit = commTerminalGeneralClient.getOverLimitData(lineId).getData(); + + //获取监测点信息 LineDevGetDTO lineDetailDataVO = commTerminalGeneralClient.getMonitorDetail(lineId).getData(); + //获取限值 + Overlimit overlimit = commTerminalGeneralClient.getOverLimitData(lineId).getData(); + if(Objects.isNull(overlimit)){ + //对配网没有限值的统一处理 + DictData dictData = dicDataFeignClient.getDicDataById(lineDetailDataVO.getVoltageLevel()).getData(); + float voltageLevel = Float.parseFloat(dictData.getValue()); + float shortVal = COverlimitUtil.getDlCapByVoltageLevel(voltageLevel); + overlimit = COverlimitUtil.globalAssemble(voltageLevel,10f,10f,shortVal,1,1); + } + + //组装sql语句 StringBuilder stringBuilder = new StringBuilder(); stringBuilder.append(InfluxDBTableConstant.TIME + " >= '").append(startTime).append(InfluxDBTableConstant.START_TIME).append("' and ").append(InfluxDBTableConstant.TIME).append(" <= '").append(endTime).append(InfluxDBTableConstant.END_TIME).append("' and (");