调整全景监测点详情里,监测点超标为只为谐波电压超标

This commit is contained in:
wr
2025-12-13 11:09:23 +08:00
parent 5e8e03cbb1
commit 10273dd2b0

View File

@@ -96,12 +96,14 @@ public class RStatLimitServiceImpl implements RStatLimitService {
//监测点总数量 //监测点总数量
List<String> lineIds = list.stream().flatMap(x -> x.getLineIndexes().stream()).distinct().collect(Collectors.toList()); List<String> lineIds = list.stream().flatMap(x -> x.getLineIndexes().stream()).distinct().collect(Collectors.toList());
//超标监测点信息 //超标监测点信息
List<RStatLimitTargetVO> limitTargetList = new ArrayList<>(); List<String> limitTargetList = new ArrayList<>();
List<RStatIntegrityD> integrityList = new ArrayList<>(); List<RStatIntegrityD> integrityList = new ArrayList<>();
if (CollUtil.isNotEmpty(lineIds)) { if (CollUtil.isNotEmpty(lineIds)) {
limitTargetList = rStatLimitTargetDMapper.getSumTargetDetails(lineIds, StatSubstationBizBaseParam baseParam = new StatSubstationBizBaseParam();
DateUtil.beginOfDay(DateUtil.parse(deviceInfoParam.getSearchBeginTime())).toString(), baseParam.setIds(lineIds);
DateUtil.endOfDay(DateUtil.parse(deviceInfoParam.getSearchEndTime())).toString()); baseParam.setStartTime(DateUtil.beginOfDay(DateUtil.parse(deviceInfoParam.getSearchBeginTime())).toString());
baseParam.setEndTime(DateUtil.endOfDay(DateUtil.parse(deviceInfoParam.getSearchEndTime())).toString());
limitTargetList = targetDService.getLinesHarmTarget(baseParam);
integrityList = lineIntegrityClient.getIntegrityByLineIds(lineIds, deviceInfoParam.getSearchBeginTime(), deviceInfoParam.getSearchEndTime()).getData(); integrityList = lineIntegrityClient.getIntegrityByLineIds(lineIds, deviceInfoParam.getSearchBeginTime(), deviceInfoParam.getSearchEndTime()).getData();
} }
//终端在线率 //终端在线率
@@ -576,7 +578,7 @@ public class RStatLimitServiceImpl implements RStatLimitService {
} }
private void onLineAndIntegrity(List<String> lineIds, List<RStatIntegrityD> onIntegrityByIds, List<String> devIds, List<RStatOnlineRateVO> onlineRateByDevIds, List<RStatLimitTargetVO> limitTargetList, GridDiagramVO.LineData lineData) { private void onLineAndIntegrity(List<String> lineIds, List<RStatIntegrityD> onIntegrityByIds, List<String> devIds, List<RStatOnlineRateVO> onlineRateByDevIds, List<String> limitTargetList, GridDiagramVO.LineData lineData) {
//监测完整率 //监测完整率
List<RStatIntegrityD> integrityDS = onIntegrityByIds.stream().filter(x -> lineIds.contains(x.getLineIndex())).collect(Collectors.toList()); List<RStatIntegrityD> integrityDS = onIntegrityByIds.stream().filter(x -> lineIds.contains(x.getLineIndex())).collect(Collectors.toList());
if (CollUtil.isNotEmpty(integrityDS)) { if (CollUtil.isNotEmpty(integrityDS)) {
@@ -596,9 +598,9 @@ public class RStatLimitServiceImpl implements RStatLimitService {
lineData.setOnLineRate(0.0f); lineData.setOnLineRate(0.0f);
} }
//监测点超标占比 //监测点超标占比
List<RStatLimitTargetVO> limitTarget = limitTargetList.stream().filter(x -> lineIds.contains(x.getLineId())).collect(Collectors.toList()); List<String> limitTarget = limitTargetList.stream().filter(x -> lineIds.contains(x)).collect(Collectors.toList());
if (CollUtil.isNotEmpty(limitTarget)) { if (CollUtil.isNotEmpty(limitTarget)) {
long count = limitTarget.stream().filter(o -> o.getAllOvertime() > 0 || o.getFlickerAllTime() > 0).count(); long count = limitTarget.size();
lineData.setOutOfStandardRate(NumberUtil.round(count * 100.0 / lineIds.size(), 2).floatValue()); lineData.setOutOfStandardRate(NumberUtil.round(count * 100.0 / lineIds.size(), 2).floatValue());
} else { } else {
lineData.setOutOfStandardRate(0.0f); lineData.setOutOfStandardRate(0.0f);