重新计算接口

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; package com.njcn.gather.detection.service.impl;
import cn.hutool.core.collection.CollUtil; 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.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.njcn.gather.detection.mapper.AdPairMapper; import com.njcn.gather.detection.mapper.AdPairMapper;
import com.njcn.gather.detection.pojo.po.AdPair; import com.njcn.gather.detection.pojo.po.AdPair;
@@ -9,6 +9,7 @@ import com.njcn.gather.detection.service.IAdPariService;
import lombok.RequiredArgsConstructor; import lombok.RequiredArgsConstructor;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import java.util.Collections;
import java.util.List; import java.util.List;
/** /**
@@ -33,8 +34,12 @@ public class AdPairServiceImpl extends ServiceImpl<AdPairMapper, AdPair> impleme
@Override @Override
public List<AdPair> listByDevIds(List<String> devIds) { public List<AdPair> listByDevIds(List<String> devIds) {
LambdaQueryChainWrapper<AdPair> wrapper = this.lambdaQuery(); if (CollUtil.isNotEmpty(devIds)) {
devIds.forEach(devId -> wrapper.likeRight(AdPair::getDevMonitorId, devId)); QueryWrapper<AdPair> wrapper = new QueryWrapper<>();
return this.list(wrapper); 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) { 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:
case PVRMS: 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.CommonEnum;
import com.njcn.gather.device.pojo.enums.PatternEnum; import com.njcn.gather.device.pojo.enums.PatternEnum;
import com.njcn.gather.device.pojo.po.PqDev; 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.IPqDevService;
import com.njcn.gather.device.service.IPqStandardDevService;
import com.njcn.gather.err.service.IPqErrSysService; import com.njcn.gather.err.service.IPqErrSysService;
import com.njcn.gather.monitor.pojo.po.PqMonitor; import com.njcn.gather.monitor.pojo.po.PqMonitor;
import com.njcn.gather.monitor.service.IPqMonitorService; import com.njcn.gather.monitor.service.IPqMonitorService;
@@ -122,6 +124,7 @@ public class ResultServiceImpl implements IResultService {
private final IAdPariService adPairService; private final IAdPariService adPairService;
private final IPqMonitorService pqMonitorService; private final IPqMonitorService pqMonitorService;
private final IPqErrSysService pqErrSysService; private final IPqErrSysService pqErrSysService;
private final IPqStandardDevService standardDevService;
/** /**
* 谐波类code取树形字典表中的code * 谐波类code取树形字典表中的code
@@ -2252,9 +2255,9 @@ public class ResultServiceImpl implements IResultService {
AdPair adPair = pairList1.get(0); AdPair adPair = pairList1.get(0);
String[] split2 = adPair.getStdDevMonitorId().split(CnSocketUtil.SPLIT_TAG); String[] split2 = adPair.getStdDevMonitorId().split(CnSocketUtil.SPLIT_TAG);
PqDev stdDev = pqDevService.getById(split2[1]); PqStandardDev standardDev = standardDevService.getById(split2[0]);
parsIp.put(dev.getIp() + split1[1], stdDev.getIp() + split2[1]); parsIp.put(dev.getIp() + CnSocketUtil.SPLIT_TAG + split1[1], standardDev.getIp() + CnSocketUtil.SPLIT_TAG + split2[1]);
parsId.put(dev.getId() + split1[1], stdDev.getId() + split2[1]); parsId.put(dev.getId() + CnSocketUtil.SPLIT_TAG + split1[1], standardDev.getId() + CnSocketUtil.SPLIT_TAG + split2[1]);
numMap.put(devMonitorId, num); numMap.put(devMonitorId, num);
numMap.put(adPair.getStdDevMonitorId(), 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); detectionServiceImpl.processing(devData, standardDevData, parsIp, devIdMapComm, testItemMap.keySet().stream().collect(Collectors.toList()), errorSysId, dataRule, numMap, code, null);
parsId.forEach((devMonitorId, stdDevMonitorId) -> { 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, 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); AdPlanTestConfig adPlanTestConfig = adPlanTestConfigService.getByPlanId(planId);
for (int i = 1; i <= adPlanTestConfig.getWaveRecord(); i++) { for (int i = 1; i <= adPlanTestConfig.getWaveRecord(); i++) {
devNonHarmonicRawDataList = contrastNonHarmonicService.listAllRawData(oldCode, num, i, true, 0, deviceId, null); 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); devHarmonicRawDataList = contrastHarmonicService.listAllRawData(oldCode, num, i, true, 0, deviceId, null);
stdDevHarmonicRawDataList = contrastHarmonicService.listAllRawData(oldCode, num, i, true, 1, 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);
devData = contrastToList(devNonHarmonicRawDataList, devHarmonicRawDataList, testItemMap); standardDevData = contrastToList(stdDevNonHarmonicRawDataList, stdDevHarmonicRawDataList, testItemMap);
standardDevData = contrastToList(stdDevNonHarmonicRawDataList, stdDevHarmonicRawDataList, testItemMap); detectionServiceImpl.processing(devData, standardDevData, parsIp, devIdMapComm, testItemMap.keySet().stream().collect(Collectors.toList()), errorSysId, dataRule, numMap, oldCode, i);
detectionServiceImpl.processing(devData, standardDevData, parsIp, devIdMapComm, testItemMap.keySet().stream().collect(Collectors.toList()), errorSysId, dataRule, numMap, oldCode, i);
} else {
waveFlag = false;
break;
}
} }
if (waveFlag) { 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.WAVE_DATA, num, adPlanTestConfig.getWaveRecord(), oldCode);
String id = FormalTestManager.devIdMapComm.get(split[0]); pqDevService.updateResult(split[0], null);
pqMonitorService.updateMonitorResult(devMonitorId, null, DataSourceEnum.WAVE_DATA, num, adPlanTestConfig.getWaveRecord(), oldCode); });
pqDevService.updateResult(id, null);
});
}
}); });
} }

View File

@@ -47,10 +47,10 @@ mybatis-plus:
socket: socket:
source: source:
ip: 192.168.1.124 ip: 127.0.0.1
port: 62000 port: 62000
device: device:
ip: 192.168.1.124 ip: 127.0.0.1
port: 61000 port: 61000
# source: # source:
# ip: 192.168.1.121 # ip: 192.168.1.121

View File

@@ -109,8 +109,15 @@ public class DetectionDataServiceImpl extends ReplenishMybatisServiceImpl<Detect
} }
if (nonHarmonicResultList.get(0) instanceof ContrastNonHarmonicResult) { if (nonHarmonicResultList.get(0) instanceof ContrastNonHarmonicResult) {
List<ContrastNonHarmonicResult> contrastNonHarmonicResultList = BeanUtil.copyToList(nonHarmonicResultList, ContrastNonHarmonicResult.class); List<ContrastNonHarmonicResult> contrastNonHarmonicResultList = BeanUtil.copyToList(nonHarmonicResultList, ContrastNonHarmonicResult.class);
List<String> monitorIds = contrastNonHarmonicResultList.stream().map(ContrastNonHarmonicResult::getDevMonitorId).distinct().collect(Collectors.toList());
if (CollUtil.isNotEmpty(monitorIds)) {
contrastNonHarmonicService.remove(new LambdaQueryWrapper<ContrastNonHarmonicResult>().in(ContrastNonHarmonicResult::getDevMonitorId, monitorIds)
.eq(ContrastNonHarmonicResult::getNum, contrastNonHarmonicResultList.get(0).getNum())
.eq(ContrastNonHarmonicResult::getDataType, contrastNonHarmonicResultList.get(0).getDataType())
.eq(ObjectUtil.isNotNull(contrastNonHarmonicResultList.get(0).getWaveNum()), ContrastNonHarmonicResult::getWaveNum, contrastNonHarmonicResultList.get(0).getWaveNum())
.isNull(ObjectUtil.isNull(contrastNonHarmonicResultList.get(0).getWaveNum()), ContrastNonHarmonicResult::getWaveNum));
}
contrastNonHarmonicService.saveBatch(contrastNonHarmonicResultList); contrastNonHarmonicService.saveBatch(contrastNonHarmonicResultList);
} }
DynamicTableNameHandler.remove(); DynamicTableNameHandler.remove();
} }
@@ -136,6 +143,14 @@ public class DetectionDataServiceImpl extends ReplenishMybatisServiceImpl<Detect
if (harmonicResultList.get(0) instanceof ContrastHarmonicResult) { if (harmonicResultList.get(0) instanceof ContrastHarmonicResult) {
List<ContrastHarmonicResult> contrastHarmonicResultList = BeanUtil.copyToList(harmonicResultList, ContrastHarmonicResult.class); List<ContrastHarmonicResult> contrastHarmonicResultList = BeanUtil.copyToList(harmonicResultList, ContrastHarmonicResult.class);
List<String> monitorIds = contrastHarmonicResultList.stream().map(ContrastHarmonicResult::getDevMonitorId).distinct().collect(Collectors.toList());
if (CollUtil.isNotEmpty(monitorIds)) {
contrastHarmonicService.remove(new LambdaQueryWrapper<ContrastHarmonicResult>().in(ContrastHarmonicResult::getDevMonitorId, monitorIds)
.eq(ContrastHarmonicResult::getNum, contrastHarmonicResultList.get(0).getNum())
.eq(ContrastHarmonicResult::getDataType, contrastHarmonicResultList.get(0).getDataType())
.eq(ObjectUtil.isNotNull(contrastHarmonicResultList.get(0).getWaveNum()), ContrastHarmonicResult::getWaveNum, contrastHarmonicResultList.get(0).getWaveNum())
.isNull(ObjectUtil.isNull(contrastHarmonicResultList.get(0).getWaveNum()), ContrastHarmonicResult::getWaveNum));
}
contrastHarmonicService.saveBatch(contrastHarmonicResultList); contrastHarmonicService.saveBatch(contrastHarmonicResultList);
} }
DynamicTableNameHandler.remove(); DynamicTableNameHandler.remove();