重新计算接口调整、监测点结果更新逻辑调整

This commit is contained in:
caozehui
2025-09-19 09:22:02 +08:00
parent 947ee4f771
commit 04299007d0
5 changed files with 70 additions and 45 deletions

View File

@@ -1815,29 +1815,30 @@ public class ResultServiceImpl implements IResultService {
List<ContrastNonHarmonicResult> waveNoHarmonicResults = contrastNonHarmonicService.listAllResultData(code, num, null, true, monitorId, null);
List<ContrastHarmonicResult> waveHarmonicResults = contrastHarmonicService.listAllResultData(code, num, null, true, monitorId, null);
if (CollUtil.isNotEmpty(waveNoHarmonicResults) && CollUtil.isNotEmpty(waveHarmonicResults)) {
checkItemResultMap.putAll(waveNoHarmonicResults.stream().collect(Collectors.groupingBy(ContrastNonHarmonicResult::getAdType, Collectors.mapping(ContrastNonHarmonicResult::getResultFlag, Collectors.toList()))));
checkItemResultMap.putAll(waveHarmonicResults.stream().collect(Collectors.groupingBy(ContrastHarmonicResult::getAdType, Collectors.mapping(ContrastHarmonicResult::getResultFlag, Collectors.toList()))));
checkItemResultMap.putAll(waveNoHarmonicResults.stream().collect(Collectors.groupingBy(ContrastNonHarmonicResult::getAdType, Collectors.mapping(ContrastNonHarmonicResult::getResultFlag, Collectors.toList()))));
checkItemResultMap.putAll(waveHarmonicResults.stream().collect(Collectors.groupingBy(ContrastHarmonicResult::getAdType, Collectors.mapping(ContrastHarmonicResult::getResultFlag, Collectors.toList()))));
ContrastTestItemVO contrastTestItemVO = new ContrastTestItemVO();
contrastTestItemVO.setId(DataSourceEnum.WAVE_DATA.getValue());
contrastTestItemVO.setCode(DataSourceEnum.WAVE_DATA.getValue());
contrastTestItemVO.setScriptName(DataSourceEnum.WAVE_DATA.getMsg());
ContrastTestItemVO contrastTestItemVO = new ContrastTestItemVO();
contrastTestItemVO.setId(DataSourceEnum.WAVE_DATA.getValue());
contrastTestItemVO.setCode(DataSourceEnum.WAVE_DATA.getValue());
contrastTestItemVO.setScriptName(DataSourceEnum.WAVE_DATA.getMsg());
List<ContrastTestItemVO> setSubItems = new ArrayList<>();
checkItemResultMap.forEach((adType, resultList) -> {
ContrastTestItemVO subContrastTestItemVO = new ContrastTestItemVO();
DictTree childDictTree = dictTreeService.getById(adType);
DictTree fatherDictTree = dictTreeService.getById(childDictTree.getPid());
subContrastTestItemVO.setId(fatherDictTree.getId());
subContrastTestItemVO.setCode(fatherDictTree.getCode());
subContrastTestItemVO.setScriptName(fatherDictTree.getName());
subContrastTestItemVO.setResultFlag(StorageUtil.getInteger(resultList));
setSubItems.add(subContrastTestItemVO);
});
contrastTestItemVO.setResultFlag(StorageUtil.getInteger(checkItemResultMap.values().stream().flatMap(List::stream).distinct().collect(Collectors.toList())));
contrastTestItemVO.setSubItems(setSubItems);
result.add(contrastTestItemVO);
List<ContrastTestItemVO> setSubItems = new ArrayList<>();
checkItemResultMap.forEach((adType, resultList) -> {
ContrastTestItemVO subContrastTestItemVO = new ContrastTestItemVO();
DictTree childDictTree = dictTreeService.getById(adType);
DictTree fatherDictTree = dictTreeService.getById(childDictTree.getPid());
subContrastTestItemVO.setId(fatherDictTree.getId());
subContrastTestItemVO.setCode(fatherDictTree.getCode());
subContrastTestItemVO.setScriptName(fatherDictTree.getName());
subContrastTestItemVO.setResultFlag(StorageUtil.getInteger(resultList));
setSubItems.add(subContrastTestItemVO);
});
contrastTestItemVO.setResultFlag(StorageUtil.getInteger(checkItemResultMap.values().stream().flatMap(List::stream).distinct().collect(Collectors.toList())));
contrastTestItemVO.setSubItems(setSubItems);
result.add(contrastTestItemVO);
}
return result;
}
@@ -2243,6 +2244,17 @@ public class ResultServiceImpl implements IResultService {
dataRule = DictDataEnum.SECTION_VALUE;
}
pqMonitorService.lambdaUpdate().set(PqMonitor::getRecordedResult, null)
.set(PqMonitor::getRealtimeNum, null)
.set(PqMonitor::getRecordedResult, null)
.set(PqMonitor::getRecordedNum, null)
.set(PqMonitor::getStatisticsResult, null)
.set(PqMonitor::getStatisticsNum, null)
.set(PqMonitor::getResultType, null)
.set(PqMonitor::getQualifiedNum, 0)
.eq(PqMonitor::getDevId, deviceId)
.eq(PqMonitor::getCheckFlag, 1)
.update();
List<AdPair> adPairList = adPairService.listByDevIds(Arrays.asList(deviceId));
Map<Integer, List<AdPair>> numAdPairsMap = adPairList.stream().collect(Collectors.groupingBy(AdPair::getNum, Collectors.toList()));
numAdPairsMap.forEach((num, pairList) -> {
@@ -2274,7 +2286,7 @@ public class ResultServiceImpl implements IResultService {
parsId.forEach((devMonitorId, stdDevMonitorId) -> {
String[] split = devMonitorId.split(CnSocketUtil.SPLIT_TAG);
pqMonitorService.updateMonitorResult(devMonitorId, null, DataSourceEnum.REAL_DATA, FormalTestManager.numMap.get(devMonitorId), null, oldCode);
pqMonitorService.updateMonitorResult(devMonitorId, null, DataSourceEnum.REAL_DATA, num, null, oldCode);
pqDevService.updateResult(split[0], null);
});
@@ -2406,9 +2418,12 @@ public class ResultServiceImpl implements IResultService {
listDTO.setT(StrUtil.isNotBlank(x.getTValue()) ? Double.valueOf(x.getTValue()) : null);
sqlDataDTO.setType(x.getDataType());
sqlDataDTO.setDesc(testItemMap.inverse().get(x.getAdType()).replace(DetectionCodeEnum.REAL_PREFIX.getCode(), ""));
sqlDataDTO.setList(listDTO);
sqlData.add(sqlDataDTO);
});
devData.setSqlData(sqlData);
});
info.add(devData);
});
}
if (CollUtil.isNotEmpty(harm)) {
@@ -2454,19 +2469,22 @@ public class ResultServiceImpl implements IResultService {
listDTO.setA(StrUtil.isNotBlank(x.getAValue0()) ? Double.valueOf(x.getAValue0()) : null);
listDTO.setB(StrUtil.isNotBlank(x.getBValue0()) ? Double.valueOf(x.getBValue0()) : null);
listDTO.setC(StrUtil.isNotBlank(x.getCValue0()) ? Double.valueOf(x.getAValue0()) : null);
sqlDataDTO.setList(listDTO);
if (DetectionCodeEnum.PV2_50.getCode().equals(desc) || DetectionCodeEnum.PSV_1_49.getCode().equals(desc)) {
sqlDataDTO.setDesc(DetectionCodeEnum.PU1.getCode());
} else {
sqlDataDTO.setDesc(DetectionCodeEnum.U1.getCode());
}
sqlData.add(sqlDataDTO);
if (!sqlData.stream().anyMatch(s -> s.getDesc().equals(sqlDataDTO.getDesc()))) {
sqlData.add(sqlDataDTO);
}
}
});
devData.setSqlDataHarm(sqlDataHarm);
devData.setSqlData(sqlData);
});
info.add(devData);
});
}
return info;