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

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

@@ -504,7 +504,7 @@ public class SocketContrastResponseService {
scheduler.shutdown(); scheduler.shutdown();
scheduler = null; scheduler = null;
}, 15, TimeUnit.SECONDS); }, 20, TimeUnit.SECONDS);
} }
} }
} }
@@ -523,9 +523,11 @@ public class SocketContrastResponseService {
case RE_OPERATE: case RE_OPERATE:
WebServiceManager.sendMsg(param.getUserPageId(), JSON.toJSONString(socketDataMsg)); WebServiceManager.sendMsg(param.getUserPageId(), JSON.toJSONString(socketDataMsg));
CnSocketUtil.contrastSendquit(param.getUserPageId(), SourceOperateCodeEnum.QUIT_INIT_02, false); CnSocketUtil.contrastSendquit(param.getUserPageId(), SourceOperateCodeEnum.QUIT_INIT_02, false);
CnSocketUtil.contrastSendquit(param.getUserPageId(), SourceOperateCodeEnum.QUIT_INIT_02, true);
break; break;
case NO_INIT_DEV: case NO_INIT_DEV:
CnSocketUtil.contrastSendquit(param.getUserPageId(), SourceOperateCodeEnum.QUIT_INIT_02, false); CnSocketUtil.contrastSendquit(param.getUserPageId(), SourceOperateCodeEnum.QUIT_INIT_02, false);
CnSocketUtil.contrastSendquit(param.getUserPageId(), SourceOperateCodeEnum.QUIT_INIT_02, true);
break; break;
default: default:
WebServiceManager.sendUnknownErrorMessage(param.getUserPageId()); WebServiceManager.sendUnknownErrorMessage(param.getUserPageId());
@@ -613,18 +615,18 @@ public class SocketContrastResponseService {
break; break;
case DEV_ERROR: case DEV_ERROR:
WebServiceManager.sendMsg(param.getUserPageId(), MsgUtil.msgToWebData(socketDataMsg, FormalTestManager.devNameMapComm, 0)); WebServiceManager.sendMsg(param.getUserPageId(), MsgUtil.msgToWebData(socketDataMsg, FormalTestManager.devNameMapComm, 0));
CnSocketUtil.contrastSendquit(param.getUserPageId(), SourceOperateCodeEnum.QUIT_INIT_02, false); CnSocketUtil.contrastSendquit(param.getUserPageId(), SourceOperateCodeEnum.QUIT_INIT_02, true);
break; break;
case DEV_TARGET: case DEV_TARGET:
WebServiceManager.sendMsg(param.getUserPageId(), MsgUtil.msgToWebData(socketDataMsg, FormalTestManager.devNameMapComm, 1)); WebServiceManager.sendMsg(param.getUserPageId(), MsgUtil.msgToWebData(socketDataMsg, FormalTestManager.devNameMapComm, 1));
CnSocketUtil.contrastSendquit(param.getUserPageId(), SourceOperateCodeEnum.QUIT_INIT_02, false); CnSocketUtil.contrastSendquit(param.getUserPageId(), SourceOperateCodeEnum.QUIT_INIT_02, true);
break; break;
case RE_OPERATE: case RE_OPERATE:
WebServiceManager.sendMsg(param.getUserPageId(), JSON.toJSONString(socketDataMsg)); WebServiceManager.sendMsg(param.getUserPageId(), JSON.toJSONString(socketDataMsg));
CnSocketUtil.contrastSendquit(param.getUserPageId(), SourceOperateCodeEnum.QUIT_INIT_02, false); CnSocketUtil.contrastSendquit(param.getUserPageId(), SourceOperateCodeEnum.QUIT_INIT_02, true);
break; break;
case NO_INIT_DEV: case NO_INIT_DEV:
CnSocketUtil.contrastSendquit(param.getUserPageId(), SourceOperateCodeEnum.QUIT_INIT_02, false); CnSocketUtil.contrastSendquit(param.getUserPageId(), SourceOperateCodeEnum.QUIT_INIT_02, true);
break; break;
default: default:
WebServiceManager.sendUnknownErrorMessage(param.getUserPageId()); WebServiceManager.sendUnknownErrorMessage(param.getUserPageId());
@@ -782,18 +784,18 @@ public class SocketContrastResponseService {
break; break;
case DEV_ERROR: case DEV_ERROR:
WebServiceManager.sendMsg(param.getUserPageId(), MsgUtil.msgToWebData(socketDataMsg, FormalTestManager.devNameMapComm, 0)); WebServiceManager.sendMsg(param.getUserPageId(), MsgUtil.msgToWebData(socketDataMsg, FormalTestManager.devNameMapComm, 0));
CnSocketUtil.contrastSendquit(param.getUserPageId(), SourceOperateCodeEnum.QUIT_INIT_02, false); CnSocketUtil.contrastSendquit(param.getUserPageId(), SourceOperateCodeEnum.QUIT_INIT_02, true);
break; break;
case DEV_TARGET: case DEV_TARGET:
WebServiceManager.sendMsg(param.getUserPageId(), MsgUtil.msgToWebData(socketDataMsg, FormalTestManager.devNameMapComm, 1)); WebServiceManager.sendMsg(param.getUserPageId(), MsgUtil.msgToWebData(socketDataMsg, FormalTestManager.devNameMapComm, 1));
CnSocketUtil.contrastSendquit(param.getUserPageId(), SourceOperateCodeEnum.QUIT_INIT_02, false); CnSocketUtil.contrastSendquit(param.getUserPageId(), SourceOperateCodeEnum.QUIT_INIT_02, true);
break; break;
case RE_OPERATE: case RE_OPERATE:
WebServiceManager.sendMsg(param.getUserPageId(), JSON.toJSONString(socketDataMsg)); WebServiceManager.sendMsg(param.getUserPageId(), JSON.toJSONString(socketDataMsg));
CnSocketUtil.contrastSendquit(param.getUserPageId(), SourceOperateCodeEnum.QUIT_INIT_02, false); CnSocketUtil.contrastSendquit(param.getUserPageId(), SourceOperateCodeEnum.QUIT_INIT_02, true);
break; break;
case NO_INIT_DEV: case NO_INIT_DEV:
CnSocketUtil.contrastSendquit(param.getUserPageId(), SourceOperateCodeEnum.QUIT_INIT_02, false); CnSocketUtil.contrastSendquit(param.getUserPageId(), SourceOperateCodeEnum.QUIT_INIT_02, true);
break; break;
default: default:
WebServiceManager.sendUnknownErrorMessage(param.getUserPageId()); WebServiceManager.sendUnknownErrorMessage(param.getUserPageId());
@@ -907,7 +909,7 @@ public class SocketContrastResponseService {
break; break;
case RE_OPERATE: case RE_OPERATE:
WebServiceManager.sendMsg(param.getUserPageId(), JSON.toJSONString(socketDataMsg)); WebServiceManager.sendMsg(param.getUserPageId(), JSON.toJSONString(socketDataMsg));
CnSocketUtil.contrastSendquit(param.getUserPageId(), SourceOperateCodeEnum.QUIT_INIT_02, false); CnSocketUtil.contrastSendquit(param.getUserPageId(), SourceOperateCodeEnum.QUIT_INIT_02, true);
break; break;
default: default:
WebServiceManager.sendUnknownErrorMessage(param.getUserPageId()); WebServiceManager.sendUnknownErrorMessage(param.getUserPageId());
@@ -1136,7 +1138,7 @@ public class SocketContrastResponseService {
break; break;
case RE_OPERATE: case RE_OPERATE:
WebServiceManager.sendMsg(param.getUserPageId(), JSON.toJSONString(socketDataMsg)); WebServiceManager.sendMsg(param.getUserPageId(), JSON.toJSONString(socketDataMsg));
CnSocketUtil.contrastSendquit(param.getUserPageId(), SourceOperateCodeEnum.QUIT_INIT_02, false); CnSocketUtil.contrastSendquit(param.getUserPageId(), SourceOperateCodeEnum.QUIT_INIT_02, true);
break; break;
default: default:
WebServiceManager.sendUnknownErrorMessage(param.getUserPageId()); WebServiceManager.sendUnknownErrorMessage(param.getUserPageId());
@@ -1339,14 +1341,14 @@ public class SocketContrastResponseService {
scheduler.shutdown(); scheduler.shutdown();
scheduler = null; scheduler = null;
}, 15, TimeUnit.SECONDS); }, 20, TimeUnit.SECONDS);
} }
} }
} }
break; break;
case RECORD_WAVE_FAILED: case RECORD_WAVE_FAILED:
WebServiceManager.sendMsg(param.getUserPageId(), JSON.toJSONString(socketDataMsg)); WebServiceManager.sendMsg(param.getUserPageId(), JSON.toJSONString(socketDataMsg));
CnSocketUtil.contrastSendquit(param.getUserPageId(), SourceOperateCodeEnum.QUIT_INIT_03, false); CnSocketUtil.contrastSendquit(param.getUserPageId(), SourceOperateCodeEnum.QUIT_INIT_03, true);
break; break;
} }
} }
@@ -1701,7 +1703,7 @@ public class SocketContrastResponseService {
// 错误信息 // 错误信息
allTestItem.removeAll(descList); allTestItem.removeAll(descList);
String appendMsg = allTestItem.stream().map(obj -> { String appendMsg = allTestItem.stream().map(obj -> {
String s = obj.split(DetectionCodeEnum.REAL_PREFIX.getCode())[1]; String s = obj.replace(DetectionCodeEnum.REAL_PREFIX.getCode(), "");
DetectionCodeEnum anEnum = DetectionCodeEnum.getDetectionCodeByCode(s); DetectionCodeEnum anEnum = DetectionCodeEnum.getDetectionCodeByCode(s);
return anEnum.getMessage(); return anEnum.getMessage();
}).reduce((a, b) -> a + "" + b).get(); }).reduce((a, b) -> a + "" + b).get();

View File

@@ -1603,13 +1603,13 @@ public class DetectionServiceImpl {
switch (anEnum) { switch (anEnum) {
case FREQ: case FREQ:
// if (ObjectUtil.isNull(waveNum)) { if (ObjectUtil.isNull(waveNum)) {
// devDataList.stream().forEach(devData -> devData.getSqlData().stream().filter(sqlData -> sqlData.getDesc().equals(DetectionCodeEnum.FREQ.getCode())).findFirst().ifPresent(sqlData -> { devDataList.stream().forEach(devData -> devData.getSqlData().stream().filter(sqlData -> sqlData.getDesc().equals(DetectionCodeEnum.FREQ.getCode())).findFirst().ifPresent(sqlData -> {
// DevData.SqlDataDTO.ListDTO listDTO = sqlData.getList(); DevData.SqlDataDTO.ListDTO listDTO = sqlData.getList();
// listDTO.setT(55.0); listDTO.setT(55.0);
// sqlData.setList(listDTO); sqlData.setList(listDTO);
// })); }));
// } }
resultMap.put(PowerIndexEnum.FREQ.getKey(), isQualified(devDataList, standardDevDataList, devIdMapComm, pqErrSysDtls, true, fHz, DetectionCodeEnum.FREQ.getCode(), dataRule, num, code, oneConfig.getScale(), waveNum)); resultMap.put(PowerIndexEnum.FREQ.getKey(), isQualified(devDataList, standardDevDataList, devIdMapComm, pqErrSysDtls, true, fHz, DetectionCodeEnum.FREQ.getCode(), dataRule, num, code, oneConfig.getScale(), waveNum));
break; break;
case VRMS: case VRMS:

View File

@@ -509,6 +509,7 @@ public class PqDevServiceImpl extends ServiceImpl<PqDevMapper, PqDev> implements
} }
@Override @Override
@Transactional
public void updateResult(String devId, String userId) { public void updateResult(String devId, String userId) {
PqDev dev = this.getById(devId); PqDev dev = this.getById(devId);
Integer checkState = pqMonitorService.getDevCheckState(devId); Integer checkState = pqMonitorService.getDevCheckState(devId);

View File

@@ -134,6 +134,7 @@ public class PqMonitorServiceImpl extends ServiceImpl<PqMonitorMapper, PqMonitor
} }
@Override @Override
@Transactional
public boolean updateMonitorResult(String monitorId, List<String> adTypes, DataSourceEnum dataSourceEnum, Integer num, Integer waveNum, String code) { public boolean updateMonitorResult(String monitorId, List<String> adTypes, DataSourceEnum dataSourceEnum, Integer num, Integer waveNum, String code) {
String[] split = monitorId.split(CnSocketUtil.SPLIT_TAG); String[] split = monitorId.split(CnSocketUtil.SPLIT_TAG);
QueryWrapper<PqMonitor> wrapper = new QueryWrapper<>(); QueryWrapper<PqMonitor> wrapper = new QueryWrapper<>();
@@ -152,6 +153,9 @@ public class PqMonitorServiceImpl extends ServiceImpl<PqMonitorMapper, PqMonitor
break; break;
case WAVE_DATA: case WAVE_DATA:
Map<Integer, Integer> waveNumResultMap = detectionDataDealService.getWaveNumResultMap(monitorId, adTypes, num, code); Map<Integer, Integer> waveNumResultMap = detectionDataDealService.getWaveNumResultMap(monitorId, adTypes, num, code);
if(CollUtil.isEmpty(waveNumResultMap)){
return true;
}
waveNumResultMap.forEach((key, value) -> { waveNumResultMap.forEach((key, value) -> {
if (CheckResultEnum.ACCORD.getValue().equals(value)) { if (CheckResultEnum.ACCORD.getValue().equals(value)) {
newWaveNum.set(key); newWaveNum.set(key);

View File

@@ -1815,29 +1815,30 @@ public class ResultServiceImpl implements IResultService {
List<ContrastNonHarmonicResult> waveNoHarmonicResults = contrastNonHarmonicService.listAllResultData(code, num, null, true, monitorId, null); List<ContrastNonHarmonicResult> waveNoHarmonicResults = contrastNonHarmonicService.listAllResultData(code, num, null, true, monitorId, null);
List<ContrastHarmonicResult> waveHarmonicResults = contrastHarmonicService.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())))); ContrastTestItemVO contrastTestItemVO = new ContrastTestItemVO();
checkItemResultMap.putAll(waveHarmonicResults.stream().collect(Collectors.groupingBy(ContrastHarmonicResult::getAdType, Collectors.mapping(ContrastHarmonicResult::getResultFlag, Collectors.toList())))); contrastTestItemVO.setId(DataSourceEnum.WAVE_DATA.getValue());
contrastTestItemVO.setCode(DataSourceEnum.WAVE_DATA.getValue());
contrastTestItemVO.setScriptName(DataSourceEnum.WAVE_DATA.getMsg());
ContrastTestItemVO contrastTestItemVO = new ContrastTestItemVO(); List<ContrastTestItemVO> setSubItems = new ArrayList<>();
contrastTestItemVO.setId(DataSourceEnum.WAVE_DATA.getValue()); checkItemResultMap.forEach((adType, resultList) -> {
contrastTestItemVO.setCode(DataSourceEnum.WAVE_DATA.getValue()); ContrastTestItemVO subContrastTestItemVO = new ContrastTestItemVO();
contrastTestItemVO.setScriptName(DataSourceEnum.WAVE_DATA.getMsg()); DictTree childDictTree = dictTreeService.getById(adType);
DictTree fatherDictTree = dictTreeService.getById(childDictTree.getPid());
List<ContrastTestItemVO> setSubItems = new ArrayList<>(); subContrastTestItemVO.setId(fatherDictTree.getId());
checkItemResultMap.forEach((adType, resultList) -> { subContrastTestItemVO.setCode(fatherDictTree.getCode());
ContrastTestItemVO subContrastTestItemVO = new ContrastTestItemVO(); subContrastTestItemVO.setScriptName(fatherDictTree.getName());
DictTree childDictTree = dictTreeService.getById(adType); subContrastTestItemVO.setResultFlag(StorageUtil.getInteger(resultList));
DictTree fatherDictTree = dictTreeService.getById(childDictTree.getPid()); setSubItems.add(subContrastTestItemVO);
subContrastTestItemVO.setId(fatherDictTree.getId()); });
subContrastTestItemVO.setCode(fatherDictTree.getCode()); contrastTestItemVO.setResultFlag(StorageUtil.getInteger(checkItemResultMap.values().stream().flatMap(List::stream).distinct().collect(Collectors.toList())));
subContrastTestItemVO.setScriptName(fatherDictTree.getName()); contrastTestItemVO.setSubItems(setSubItems);
subContrastTestItemVO.setResultFlag(StorageUtil.getInteger(resultList)); result.add(contrastTestItemVO);
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; return result;
} }
@@ -2243,6 +2244,17 @@ public class ResultServiceImpl implements IResultService {
dataRule = DictDataEnum.SECTION_VALUE; 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)); List<AdPair> adPairList = adPairService.listByDevIds(Arrays.asList(deviceId));
Map<Integer, List<AdPair>> numAdPairsMap = adPairList.stream().collect(Collectors.groupingBy(AdPair::getNum, Collectors.toList())); Map<Integer, List<AdPair>> numAdPairsMap = adPairList.stream().collect(Collectors.groupingBy(AdPair::getNum, Collectors.toList()));
numAdPairsMap.forEach((num, pairList) -> { numAdPairsMap.forEach((num, pairList) -> {
@@ -2274,7 +2286,7 @@ public class ResultServiceImpl implements IResultService {
parsId.forEach((devMonitorId, stdDevMonitorId) -> { parsId.forEach((devMonitorId, stdDevMonitorId) -> {
String[] split = devMonitorId.split(CnSocketUtil.SPLIT_TAG); 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); 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); listDTO.setT(StrUtil.isNotBlank(x.getTValue()) ? Double.valueOf(x.getTValue()) : null);
sqlDataDTO.setType(x.getDataType()); sqlDataDTO.setType(x.getDataType());
sqlDataDTO.setDesc(testItemMap.inverse().get(x.getAdType()).replace(DetectionCodeEnum.REAL_PREFIX.getCode(), "")); sqlDataDTO.setDesc(testItemMap.inverse().get(x.getAdType()).replace(DetectionCodeEnum.REAL_PREFIX.getCode(), ""));
sqlDataDTO.setList(listDTO);
sqlData.add(sqlDataDTO); sqlData.add(sqlDataDTO);
}); });
devData.setSqlData(sqlData);
}); });
info.add(devData);
}); });
} }
if (CollUtil.isNotEmpty(harm)) { 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.setA(StrUtil.isNotBlank(x.getAValue0()) ? Double.valueOf(x.getAValue0()) : null);
listDTO.setB(StrUtil.isNotBlank(x.getBValue0()) ? Double.valueOf(x.getBValue0()) : null); listDTO.setB(StrUtil.isNotBlank(x.getBValue0()) ? Double.valueOf(x.getBValue0()) : null);
listDTO.setC(StrUtil.isNotBlank(x.getCValue0()) ? Double.valueOf(x.getAValue0()) : 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)) { if (DetectionCodeEnum.PV2_50.getCode().equals(desc) || DetectionCodeEnum.PSV_1_49.getCode().equals(desc)) {
sqlDataDTO.setDesc(DetectionCodeEnum.PU1.getCode()); sqlDataDTO.setDesc(DetectionCodeEnum.PU1.getCode());
} else { } else {
sqlDataDTO.setDesc(DetectionCodeEnum.U1.getCode()); 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.setSqlDataHarm(sqlDataHarm);
devData.setSqlData(sqlData); devData.setSqlData(sqlData);
}); });
info.add(devData);
}); });
} }
return info; return info;