重新计算接口

This commit is contained in:
caozehui
2025-09-17 13:41:32 +08:00
parent 213d940ff1
commit c3c46b5257
5 changed files with 51 additions and 36 deletions

View File

@@ -1,7 +1,7 @@
package com.njcn.gather.detection.service.impl;
import cn.hutool.core.collection.CollUtil;
import com.baomidou.mybatisplus.extension.conditions.query.LambdaQueryChainWrapper;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.njcn.gather.detection.mapper.AdPairMapper;
import com.njcn.gather.detection.pojo.po.AdPair;
@@ -9,6 +9,7 @@ import com.njcn.gather.detection.service.IAdPariService;
import lombok.RequiredArgsConstructor;
import org.springframework.stereotype.Service;
import java.util.Collections;
import java.util.List;
/**
@@ -33,8 +34,12 @@ public class AdPairServiceImpl extends ServiceImpl<AdPairMapper, AdPair> impleme
@Override
public List<AdPair> listByDevIds(List<String> devIds) {
LambdaQueryChainWrapper<AdPair> wrapper = this.lambdaQuery();
devIds.forEach(devId -> wrapper.likeRight(AdPair::getDevMonitorId, devId));
return this.list(wrapper);
if (CollUtil.isNotEmpty(devIds)) {
QueryWrapper<AdPair> wrapper = new QueryWrapper<>();
devIds.forEach(devId -> wrapper.likeRight("ad_pair.Dev_Monitor_Id", devId));
return this.list(wrapper);
} else {
return Collections.emptyList();
}
}
}

View File

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

View File

@@ -33,7 +33,9 @@ import com.njcn.gather.detection.util.socket.FormalTestManager;
import com.njcn.gather.device.pojo.enums.CommonEnum;
import com.njcn.gather.device.pojo.enums.PatternEnum;
import com.njcn.gather.device.pojo.po.PqDev;
import com.njcn.gather.device.pojo.po.PqStandardDev;
import com.njcn.gather.device.service.IPqDevService;
import com.njcn.gather.device.service.IPqStandardDevService;
import com.njcn.gather.err.service.IPqErrSysService;
import com.njcn.gather.monitor.pojo.po.PqMonitor;
import com.njcn.gather.monitor.service.IPqMonitorService;
@@ -122,6 +124,7 @@ public class ResultServiceImpl implements IResultService {
private final IAdPariService adPairService;
private final IPqMonitorService pqMonitorService;
private final IPqErrSysService pqErrSysService;
private final IPqStandardDevService standardDevService;
/**
* 谐波类code取树形字典表中的code
@@ -2252,9 +2255,9 @@ public class ResultServiceImpl implements IResultService {
AdPair adPair = pairList1.get(0);
String[] split2 = adPair.getStdDevMonitorId().split(CnSocketUtil.SPLIT_TAG);
PqDev stdDev = pqDevService.getById(split2[1]);
parsIp.put(dev.getIp() + split1[1], stdDev.getIp() + split2[1]);
parsId.put(dev.getId() + split1[1], stdDev.getId() + split2[1]);
PqStandardDev standardDev = standardDevService.getById(split2[0]);
parsIp.put(dev.getIp() + CnSocketUtil.SPLIT_TAG + split1[1], standardDev.getIp() + CnSocketUtil.SPLIT_TAG + split2[1]);
parsId.put(dev.getId() + CnSocketUtil.SPLIT_TAG + split1[1], standardDev.getId() + CnSocketUtil.SPLIT_TAG + split2[1]);
numMap.put(devMonitorId, num);
numMap.put(adPair.getStdDevMonitorId(), num);
});
@@ -2270,11 +2273,11 @@ public class ResultServiceImpl implements IResultService {
detectionServiceImpl.processing(devData, standardDevData, parsIp, devIdMapComm, testItemMap.keySet().stream().collect(Collectors.toList()), errorSysId, dataRule, numMap, code, null);
parsId.forEach((devMonitorId, stdDevMonitorId) -> {
String[] split = devMonitorId.split(CnSocketUtil.SPLIT_TAG);
pqMonitorService.updateMonitorResult(devMonitorId, null, DataSourceEnum.REAL_DATA, FormalTestManager.numMap.get(devMonitorId), null, oldCode);
pqDevService.updateResult(devMonitorId.split(CnSocketUtil.SPLIT_TAG)[0], null);
pqDevService.updateResult(split[0], null);
});
boolean waveFlag = true;
AdPlanTestConfig adPlanTestConfig = adPlanTestConfigService.getByPlanId(planId);
for (int i = 1; i <= adPlanTestConfig.getWaveRecord(); i++) {
devNonHarmonicRawDataList = contrastNonHarmonicService.listAllRawData(oldCode, num, i, true, 0, deviceId, null);
@@ -2282,24 +2285,16 @@ public class ResultServiceImpl implements IResultService {
devHarmonicRawDataList = contrastHarmonicService.listAllRawData(oldCode, num, i, true, 0, deviceId, null);
stdDevHarmonicRawDataList = contrastHarmonicService.listAllRawData(oldCode, num, i, true, 1, deviceId, null);
if (CollUtil.isNotEmpty(devNonHarmonicRawDataList) && CollUtil.isNotEmpty(stdDevNonHarmonicRawDataList) && CollUtil.isNotEmpty(devHarmonicRawDataList) && CollUtil.isNotEmpty(stdDevHarmonicRawDataList)) {
devData = contrastToList(devNonHarmonicRawDataList, devHarmonicRawDataList, testItemMap);
standardDevData = contrastToList(stdDevNonHarmonicRawDataList, stdDevHarmonicRawDataList, testItemMap);
detectionServiceImpl.processing(devData, standardDevData, parsIp, devIdMapComm, testItemMap.keySet().stream().collect(Collectors.toList()), errorSysId, dataRule, numMap, oldCode, i);
} else {
waveFlag = false;
break;
}
devData = contrastToList(devNonHarmonicRawDataList, devHarmonicRawDataList, testItemMap);
standardDevData = contrastToList(stdDevNonHarmonicRawDataList, stdDevHarmonicRawDataList, testItemMap);
detectionServiceImpl.processing(devData, standardDevData, parsIp, devIdMapComm, testItemMap.keySet().stream().collect(Collectors.toList()), errorSysId, dataRule, numMap, oldCode, i);
}
if (waveFlag) {
parsId.forEach((devMonitorId, stdDevMonitorId) -> {
String[] split = devMonitorId.split(CnSocketUtil.SPLIT_TAG);
String id = FormalTestManager.devIdMapComm.get(split[0]);
pqMonitorService.updateMonitorResult(devMonitorId, null, DataSourceEnum.WAVE_DATA, num, adPlanTestConfig.getWaveRecord(), oldCode);
pqDevService.updateResult(id, null);
});
}
parsId.forEach((devMonitorId, stdDevMonitorId) -> {
String[] split = devMonitorId.split(CnSocketUtil.SPLIT_TAG);
pqMonitorService.updateMonitorResult(devMonitorId, null, DataSourceEnum.WAVE_DATA, num, adPlanTestConfig.getWaveRecord(), oldCode);
pqDevService.updateResult(split[0], null);
});
});
}