修改检测计划态,录波校验调整
This commit is contained in:
File diff suppressed because it is too large
Load Diff
@@ -52,7 +52,7 @@ public enum SourceOperateCodeEnum {
|
|||||||
YJC_MXYZXJY("yjc_mxyzxjy", "模型一致性校验"),
|
YJC_MXYZXJY("yjc_mxyzxjy", "模型一致性校验"),
|
||||||
FORMAL_REAL("formal_real","正式检测"),
|
FORMAL_REAL("formal_real","正式检测"),
|
||||||
RECORD_WAVE_STEP1("record_wave_step1","启动录波_step1"),
|
RECORD_WAVE_STEP1("record_wave_step1","启动录波_step1"),
|
||||||
RECORD_WAVE_STEP2("record_wave_step2","启动录波_step2"),
|
// RECORD_WAVE_STEP2("record_wave_step2","启动录波_step2"),
|
||||||
// SIMULATE_REAL("simulate_real","模拟检测"),
|
// SIMULATE_REAL("simulate_real","模拟检测"),
|
||||||
Coefficient_Check("Coefficient_Check","系数校验"),
|
Coefficient_Check("Coefficient_Check","系数校验"),
|
||||||
QUITE("quit","关闭设备通讯初始化"),
|
QUITE("quit","关闭设备通讯初始化"),
|
||||||
|
|||||||
@@ -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:
|
||||||
@@ -1726,6 +1726,9 @@ public class DetectionServiceImpl {
|
|||||||
if (CollUtil.isNotEmpty(devDataList) && CollUtil.isNotEmpty(standardDevDataList) && CollUtil.isNotEmpty(errSysDtls)) {
|
if (CollUtil.isNotEmpty(devDataList) && CollUtil.isNotEmpty(standardDevDataList) && CollUtil.isNotEmpty(errSysDtls)) {
|
||||||
|
|
||||||
Map<String, List<List<Double>>> map = devListMap(devDataList, standardDevDataList, desc, dataRule);
|
Map<String, List<List<Double>>> map = devListMap(devDataList, standardDevDataList, desc, dataRule);
|
||||||
|
if(ObjectUtil.isNull(map)){
|
||||||
|
return 4;
|
||||||
|
}
|
||||||
ContrastNonHarmonicResult result = new ContrastNonHarmonicResult();
|
ContrastNonHarmonicResult result = new ContrastNonHarmonicResult();
|
||||||
result.setWaveNum(waveNum);
|
result.setWaveNum(waveNum);
|
||||||
|
|
||||||
@@ -1903,6 +1906,10 @@ public class DetectionServiceImpl {
|
|||||||
List<DevData.SqlDataDTO.ListDTO> standardDevList = standardDevSqlData.stream().filter(j -> finalDesc.equals(j.getDesc()))
|
List<DevData.SqlDataDTO.ListDTO> standardDevList = standardDevSqlData.stream().filter(j -> finalDesc.equals(j.getDesc()))
|
||||||
.map(DevData.SqlDataDTO::getList).collect(Collectors.toList());
|
.map(DevData.SqlDataDTO::getList).collect(Collectors.toList());
|
||||||
|
|
||||||
|
if(CollUtil.isEmpty(devList) || CollUtil.isEmpty(standardDevList)){
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
|
||||||
aDev.addAll(devList.stream().filter(x -> ObjectUtil.isNotNull(x.getA()))
|
aDev.addAll(devList.stream().filter(x -> ObjectUtil.isNotNull(x.getA()))
|
||||||
.map(x -> x.getA().doubleValue())
|
.map(x -> x.getA().doubleValue())
|
||||||
.collect(Collectors.toList()));
|
.collect(Collectors.toList()));
|
||||||
|
|||||||
@@ -385,6 +385,15 @@ public class PreDetectionServiceImpl implements PreDetectionService {
|
|||||||
String jsonString = JSON.toJSONString(map);
|
String jsonString = JSON.toJSONString(map);
|
||||||
SocketMsg<String> socketMsg = new SocketMsg<>();
|
SocketMsg<String> socketMsg = new SocketMsg<>();
|
||||||
socketMsg.setRequestId(SourceOperateCodeEnum.YJC_SBTXJY.getValue());
|
socketMsg.setRequestId(SourceOperateCodeEnum.YJC_SBTXJY.getValue());
|
||||||
|
// AdPlan currentTestPlan = FormalTestManager.currentTestPlan;
|
||||||
|
// String[] datasource = currentTestPlan.getDatasourceId().split(",");
|
||||||
|
// if (Arrays.stream(datasource).anyMatch(x -> x.equals(DataSourceEnum.REAL_DATA.getValue()))) {
|
||||||
|
// socketMsg.setOperateCode(SourceOperateCodeEnum.DEV_INIT_GATHER_02.getValue());
|
||||||
|
// } else if (Arrays.stream(datasource).anyMatch(x -> x.equals(DataSourceEnum.MINUTE_STATISTICS_AVG.getValue()) || x.equals(DataSourceEnum.MINUTE_STATISTICS_MAX.getValue()) || x.equals(DataSourceEnum.MINUTE_STATISTICS_MIN.getValue()) || x.equals(DataSourceEnum.MINUTE_STATISTICS_CP95.getValue()))) {
|
||||||
|
//
|
||||||
|
// } else if (Arrays.stream(datasource).anyMatch(x -> x.equals(DataSourceEnum.WAVE_DATA.getValue()))) {
|
||||||
|
// socketMsg.setOperateCode(SourceOperateCodeEnum.DEV_INIT_GATHER_03.getValue());
|
||||||
|
// }
|
||||||
socketMsg.setOperateCode(SourceOperateCodeEnum.DEV_INIT_GATHER_02.getValue());
|
socketMsg.setOperateCode(SourceOperateCodeEnum.DEV_INIT_GATHER_02.getValue());
|
||||||
socketMsg.setData(jsonString);
|
socketMsg.setData(jsonString);
|
||||||
PreDetectionParam preDetectionParam = new PreDetectionParam();
|
PreDetectionParam preDetectionParam = new PreDetectionParam();
|
||||||
|
|||||||
@@ -58,7 +58,7 @@ public class CnSocketUtil {
|
|||||||
* 比对式-退出检测
|
* 比对式-退出检测
|
||||||
*/
|
*/
|
||||||
public static void contrastSendquit(String loginName, SourceOperateCodeEnum operateCode, boolean isRemoveSocket) {
|
public static void contrastSendquit(String loginName, SourceOperateCodeEnum operateCode, boolean isRemoveSocket) {
|
||||||
System.out.println("比对式-发送关闭备通讯模块指令。。。。。。。。");
|
System.out.println("比对式-发送" + operateCode.getMsg() + "指令。。。。。。。。");
|
||||||
SocketMsg<String> socketMsg = new SocketMsg<>();
|
SocketMsg<String> socketMsg = new SocketMsg<>();
|
||||||
socketMsg.setRequestId(SourceOperateCodeEnum.QUITE.getValue());
|
socketMsg.setRequestId(SourceOperateCodeEnum.QUITE.getValue());
|
||||||
socketMsg.setOperateCode(operateCode.getValue());
|
socketMsg.setOperateCode(operateCode.getValue());
|
||||||
|
|||||||
@@ -16,6 +16,8 @@ import java.util.HashMap;
|
|||||||
import java.util.List;
|
import java.util.List;
|
||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
import java.util.concurrent.ConcurrentHashMap;
|
import java.util.concurrent.ConcurrentHashMap;
|
||||||
|
import java.util.concurrent.ScheduledExecutorService;
|
||||||
|
import java.util.concurrent.ScheduledFuture;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @Author: cdf
|
* @Author: cdf
|
||||||
@@ -154,4 +156,14 @@ public class FormalTestManager {
|
|||||||
*/
|
*/
|
||||||
public static List<DevLineTestResult> preNumTestResultList = new ArrayList<>();
|
public static List<DevLineTestResult> preNumTestResultList = new ArrayList<>();
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 定时器
|
||||||
|
*/
|
||||||
|
public static ScheduledExecutorService scheduler;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 定时器任务
|
||||||
|
*/
|
||||||
|
public static ScheduledFuture<?> scheduledFuture;
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -193,7 +193,7 @@ public class HeartbeatHandler extends SimpleChannelInboundHandler<String> {
|
|||||||
} else if (CnSocketUtil.SOURCE_TAG.equals(handlerType)) {
|
} else if (CnSocketUtil.SOURCE_TAG.equals(handlerType)) {
|
||||||
CnSocketUtil.quitSendSource(param);
|
CnSocketUtil.quitSendSource(param);
|
||||||
} else {
|
} else {
|
||||||
if (FormalTestManager.currentStep == SourceOperateCodeEnum.RECORD_WAVE_STEP1 || FormalTestManager.currentStep == SourceOperateCodeEnum.RECORD_WAVE_STEP2) {
|
if (FormalTestManager.currentStep == SourceOperateCodeEnum.RECORD_WAVE_STEP1) {
|
||||||
CnSocketUtil.contrastSendquit(param.getUserPageId(), SourceOperateCodeEnum.QUIT_INIT_03, true);
|
CnSocketUtil.contrastSendquit(param.getUserPageId(), SourceOperateCodeEnum.QUIT_INIT_03, true);
|
||||||
} else {
|
} else {
|
||||||
CnSocketUtil.contrastSendquit(param.getUserPageId(), SourceOperateCodeEnum.QUIT_INIT_02, true);
|
CnSocketUtil.contrastSendquit(param.getUserPageId(), SourceOperateCodeEnum.QUIT_INIT_02, true);
|
||||||
|
|||||||
@@ -60,7 +60,7 @@ public class NettyContrastClientHandler extends SimpleChannelInboundHandler<Stri
|
|||||||
socketContrastResponseService.deal(param, msg);
|
socketContrastResponseService.deal(param, msg);
|
||||||
} catch (Exception e) {
|
} catch (Exception e) {
|
||||||
log.error("处理服务端消息异常", e);
|
log.error("处理服务端消息异常", e);
|
||||||
if (FormalTestManager.currentStep == SourceOperateCodeEnum.RECORD_WAVE_STEP1 || FormalTestManager.currentStep == SourceOperateCodeEnum.RECORD_WAVE_STEP2) {
|
if (FormalTestManager.currentStep == SourceOperateCodeEnum.RECORD_WAVE_STEP1) {
|
||||||
CnSocketUtil.contrastSendquit(param.getUserPageId(), SourceOperateCodeEnum.QUIT_INIT_03, true);
|
CnSocketUtil.contrastSendquit(param.getUserPageId(), SourceOperateCodeEnum.QUIT_INIT_03, true);
|
||||||
} else {
|
} else {
|
||||||
CnSocketUtil.contrastSendquit(param.getUserPageId(), SourceOperateCodeEnum.QUIT_INIT_02, true);
|
CnSocketUtil.contrastSendquit(param.getUserPageId(), SourceOperateCodeEnum.QUIT_INIT_02, true);
|
||||||
|
|||||||
@@ -372,17 +372,18 @@ public class WebSocketHandler extends SimpleChannelInboundHandler<TextWebSocketF
|
|||||||
// 使用该用户的检测参数关闭Socket连接
|
// 使用该用户的检测参数关闭Socket连接
|
||||||
log.info("使用用户检测参数关闭Socket连接,userId: {}", userId);
|
log.info("使用用户检测参数关闭Socket连接,userId: {}", userId);
|
||||||
if (FormalTestManager.patternEnum.equals(PatternEnum.CONTRAST)) {
|
if (FormalTestManager.patternEnum.equals(PatternEnum.CONTRAST)) {
|
||||||
if (!FormalTestManager.isRemoveSocket) {
|
if (FormalTestManager.isRemoveSocket) {
|
||||||
if (FormalTestManager.currentStep == SourceOperateCodeEnum.RECORD_WAVE_STEP1 || FormalTestManager.currentStep == SourceOperateCodeEnum.RECORD_WAVE_STEP2) {
|
boolean channelActive = SocketManager.isChannelActive(preDetectionParam.getUserPageId() + CnSocketUtil.CONTRAST_DEV_TAG);
|
||||||
CnSocketUtil.contrastSendquit(preDetectionParam.getUserPageId(), SourceOperateCodeEnum.QUIT_INIT_03, true);
|
if (channelActive) {
|
||||||
} else if (FormalTestManager.currentStep != SourceOperateCodeEnum.QUITE) {
|
|
||||||
CnSocketUtil.contrastSendquit(preDetectionParam.getUserPageId(), SourceOperateCodeEnum.QUIT_INIT_02, true);
|
|
||||||
} else {
|
|
||||||
SocketManager.removeUser(preDetectionParam.getUserPageId() + CnSocketUtil.CONTRAST_DEV_TAG);
|
SocketManager.removeUser(preDetectionParam.getUserPageId() + CnSocketUtil.CONTRAST_DEV_TAG);
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
boolean channelActive = SocketManager.isChannelActive(preDetectionParam.getUserPageId() + CnSocketUtil.CONTRAST_DEV_TAG);
|
if (FormalTestManager.currentStep == SourceOperateCodeEnum.RECORD_WAVE_STEP1) {
|
||||||
if (channelActive) {
|
CnSocketUtil.contrastSendquit(preDetectionParam.getUserPageId(), SourceOperateCodeEnum.QUIT_INIT_03, true);
|
||||||
|
} else if (FormalTestManager.currentStep != SourceOperateCodeEnum.QUITE) {
|
||||||
|
CnSocketUtil.contrastSendquit(preDetectionParam.getUserPageId(), SourceOperateCodeEnum.QUIT_INIT_02, false);
|
||||||
|
CnSocketUtil.contrastSendquit(preDetectionParam.getUserPageId(), SourceOperateCodeEnum.QUIT_INIT_03, true);
|
||||||
|
} else {
|
||||||
SocketManager.removeUser(preDetectionParam.getUserPageId() + CnSocketUtil.CONTRAST_DEV_TAG);
|
SocketManager.removeUser(preDetectionParam.getUserPageId() + CnSocketUtil.CONTRAST_DEV_TAG);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -13,6 +13,7 @@ import cn.hutool.core.util.StrUtil;
|
|||||||
import com.baomidou.mybatisplus.core.conditions.Wrapper;
|
import com.baomidou.mybatisplus.core.conditions.Wrapper;
|
||||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||||
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
|
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
|
||||||
|
import com.baomidou.mybatisplus.extension.conditions.update.LambdaUpdateChainWrapper;
|
||||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||||
import com.github.yulichang.wrapper.MPJLambdaWrapper;
|
import com.github.yulichang.wrapper.MPJLambdaWrapper;
|
||||||
@@ -44,6 +45,7 @@ import com.njcn.gather.system.dictionary.service.IDictDataService;
|
|||||||
import com.njcn.gather.system.dictionary.service.IDictTypeService;
|
import com.njcn.gather.system.dictionary.service.IDictTypeService;
|
||||||
import com.njcn.gather.type.pojo.po.DevType;
|
import com.njcn.gather.type.pojo.po.DevType;
|
||||||
import com.njcn.gather.type.service.IDevTypeService;
|
import com.njcn.gather.type.service.IDevTypeService;
|
||||||
|
import com.njcn.gather.user.user.pojo.po.SysUser;
|
||||||
import com.njcn.gather.user.user.service.ISysUserService;
|
import com.njcn.gather.user.user.service.ISysUserService;
|
||||||
import com.njcn.web.factory.PageFactory;
|
import com.njcn.web.factory.PageFactory;
|
||||||
import com.njcn.web.utils.ExcelUtil;
|
import com.njcn.web.utils.ExcelUtil;
|
||||||
@@ -353,7 +355,10 @@ public class PqDevServiceImpl extends ServiceImpl<PqDevMapper, PqDev> implements
|
|||||||
pqDevVO.setDevKey(EncryptionUtil.decoderString(1, pqDevVO.getDevKey()));
|
pqDevVO.setDevKey(EncryptionUtil.decoderString(1, pqDevVO.getDevKey()));
|
||||||
}
|
}
|
||||||
if (StrUtil.isNotBlank(pqDevVO.getCheckBy())) {
|
if (StrUtil.isNotBlank(pqDevVO.getCheckBy())) {
|
||||||
pqDevVO.setCheckBy(userService.getById(pqDevVO.getCheckBy()).getName());
|
SysUser user = userService.getById(pqDevVO.getCheckBy());
|
||||||
|
if (ObjectUtil.isNotNull(user)) {
|
||||||
|
pqDevVO.setCheckBy(user.getName());
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
DevType devType = devTypeService.getById(pqDevVO.getDevType());
|
DevType devType = devTypeService.getById(pqDevVO.getDevType());
|
||||||
@@ -515,11 +520,18 @@ public class PqDevServiceImpl extends ServiceImpl<PqDevMapper, PqDev> implements
|
|||||||
Integer checkState = pqMonitorService.getDevCheckState(devId);
|
Integer checkState = pqMonitorService.getDevCheckState(devId);
|
||||||
Integer checkResult = pqMonitorService.getDevCheckResult(devId);
|
Integer checkResult = pqMonitorService.getDevCheckResult(devId);
|
||||||
|
|
||||||
pqDevSubService.lambdaUpdate()
|
SysUser user = userService.getById(userId);
|
||||||
|
|
||||||
|
LambdaUpdateChainWrapper<PqDevSub> w = pqDevSubService.lambdaUpdate()
|
||||||
.set(PqDevSub::getCheckState, checkState)
|
.set(PqDevSub::getCheckState, checkState)
|
||||||
.set(PqDevSub::getCheckResult, checkResult)
|
.set(PqDevSub::getCheckResult, checkResult)
|
||||||
.set(StrUtil.isNotBlank(userId), PqDevSub::getCheckBy, userId)
|
.set(PqDevSub::getCheckTime, LocalDateTime.now())
|
||||||
.eq(PqDevSub::getDevId, devId).update();
|
.eq(PqDevSub::getDevId, devId);
|
||||||
|
|
||||||
|
if(ObjectUtil.isNotNull(user)){
|
||||||
|
w.set(PqDevSub::getCheckBy, user.getName());
|
||||||
|
}
|
||||||
|
w.update();
|
||||||
|
|
||||||
PqDevParam.QueryParam param = new PqDevParam.QueryParam();
|
PqDevParam.QueryParam param = new PqDevParam.QueryParam();
|
||||||
String planId = dev.getPlanId();
|
String planId = dev.getPlanId();
|
||||||
@@ -539,6 +551,10 @@ public class PqDevServiceImpl extends ServiceImpl<PqDevMapper, PqDev> implements
|
|||||||
set = pqDevVOList.stream().map(PqDevVO::getCheckState).collect(Collectors.toSet());
|
set = pqDevVOList.stream().map(PqDevVO::getCheckState).collect(Collectors.toSet());
|
||||||
if (set.contains(CheckStateEnum.UNCHECKED.getValue())) {
|
if (set.contains(CheckStateEnum.UNCHECKED.getValue())) {
|
||||||
this.baseMapper.updatePlanTestState(planId, CheckStateEnum.CHECKING.getValue());
|
this.baseMapper.updatePlanTestState(planId, CheckStateEnum.CHECKING.getValue());
|
||||||
|
} else if (set.contains(CheckStateEnum.CHECKING.getValue())) {
|
||||||
|
this.baseMapper.updatePlanTestState(planId, CheckStateEnum.CHECKING.getValue());
|
||||||
|
} else {
|
||||||
|
this.baseMapper.updatePlanTestState(planId, CheckStateEnum.CHECKED.getValue());
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -602,16 +602,24 @@ public class AdPlanServiceImpl extends ServiceImpl<AdPlanMapper, AdPlan> impleme
|
|||||||
}
|
}
|
||||||
DictData dictData = dictDataService.getById(patternId);
|
DictData dictData = dictDataService.getById(patternId);
|
||||||
if (PatternEnum.CONTRAST.getValue().equals(dictData.getCode())) {
|
if (PatternEnum.CONTRAST.getValue().equals(dictData.getCode())) {
|
||||||
String[] split = adPlan.getTestItem().split(StrUtil.COMMA);
|
String datasourceId = adPlan.getDatasourceId();
|
||||||
List<DictTree> dictTreeList = dictTreeService.list(new QueryWrapper<DictTree>().in("id", split).eq("state", DataStateEnum.DELETED.getCode()));
|
if (datasourceId.contains(DataSourceEnum.REAL_DATA.getValue())
|
||||||
|
|| datasourceId.contains(DataSourceEnum.MINUTE_STATISTICS_CP95.getValue())
|
||||||
|
|| datasourceId.contains(DataSourceEnum.MINUTE_STATISTICS_AVG.getValue())
|
||||||
|
|| datasourceId.contains(DataSourceEnum.MINUTE_STATISTICS_MAX.getValue())
|
||||||
|
|| datasourceId.contains(DataSourceEnum.MINUTE_STATISTICS_MIN.getValue())) {
|
||||||
|
String[] split = adPlan.getTestItem().split(StrUtil.COMMA);
|
||||||
|
List<DictTree> dictTreeList = dictTreeService.list(new QueryWrapper<DictTree>().in("id", split).eq("state", DataStateEnum.DELETED.getCode()));
|
||||||
|
|
||||||
for (DictTree dictTree : dictTreeList) {
|
for (DictTree dictTree : dictTreeList) {
|
||||||
Map<String, String> map = new HashMap<>();
|
Map<String, String> map = new HashMap<>();
|
||||||
map.put("id", dictTree.getId());
|
map.put("id", dictTree.getId());
|
||||||
map.put("code", dictTree.getCode());
|
map.put("code", dictTree.getCode());
|
||||||
map.put("scriptName", dictTree.getName());
|
map.put("scriptName", dictTree.getName());
|
||||||
result.add(map);
|
result.add(map);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if (StrUtil.isBlank(scriptType)) {
|
if (StrUtil.isBlank(scriptType)) {
|
||||||
if (adPlan.getDatasourceId().contains(DataSourceEnum.WAVE_DATA.getValue())) {
|
if (adPlan.getDatasourceId().contains(DataSourceEnum.WAVE_DATA.getValue())) {
|
||||||
Map<String, String> map = new HashMap<>();
|
Map<String, String> map = new HashMap<>();
|
||||||
|
|||||||
@@ -29,7 +29,6 @@ import com.njcn.gather.detection.pojo.vo.DetectionData;
|
|||||||
import com.njcn.gather.detection.service.IAdPariService;
|
import com.njcn.gather.detection.service.IAdPariService;
|
||||||
import com.njcn.gather.detection.service.impl.DetectionServiceImpl;
|
import com.njcn.gather.detection.service.impl.DetectionServiceImpl;
|
||||||
import com.njcn.gather.detection.util.socket.CnSocketUtil;
|
import com.njcn.gather.detection.util.socket.CnSocketUtil;
|
||||||
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;
|
||||||
@@ -96,6 +95,8 @@ import java.util.function.Function;
|
|||||||
import java.util.stream.Collectors;
|
import java.util.stream.Collectors;
|
||||||
import java.util.stream.Stream;
|
import java.util.stream.Stream;
|
||||||
|
|
||||||
|
import static com.njcn.gather.detection.util.socket.FormalTestManager.waveNum;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @author caozehui
|
* @author caozehui
|
||||||
* @data 2024-12-30
|
* @data 2024-12-30
|
||||||
@@ -1708,38 +1709,84 @@ public class ResultServiceImpl implements IResultService {
|
|||||||
}
|
}
|
||||||
AdPlan finalPlan = plan;
|
AdPlan finalPlan = plan;
|
||||||
// 实时数据结果
|
// 实时数据结果
|
||||||
List<ContrastNonHarmonicResult> nonHarmonicResults = contrastNonHarmonicService.listAllResultData(String.valueOf(finalPlan.getCode()), null, null, false, monitorId, null);
|
List<ContrastNonHarmonicResult> realNonHarmonicResults = contrastNonHarmonicService.listAllResultData(String.valueOf(finalPlan.getCode()), null, null, false, monitorId, null);
|
||||||
Map<Integer, List<ContrastNonHarmonicResult>> numMap = nonHarmonicResults.stream()
|
Map<Integer, List<ContrastNonHarmonicResult>> numNonHarmonicMap = realNonHarmonicResults.stream()
|
||||||
.sorted(Comparator.comparing(ContrastNonHarmonicResult::getNum))
|
.sorted(Comparator.comparing(ContrastNonHarmonicResult::getNum))
|
||||||
.collect(Collectors.groupingBy(ContrastNonHarmonicResult::getNum, LinkedHashMap::new, Collectors.toList()));
|
.collect(Collectors.groupingBy(ContrastNonHarmonicResult::getNum, LinkedHashMap::new, Collectors.toList()));
|
||||||
|
|
||||||
|
List<ContrastHarmonicResult> realHarmonicResults = contrastHarmonicService.listAllResultData(String.valueOf(finalPlan.getCode()), null, null, false, monitorId, null);
|
||||||
|
Map<Integer, List<ContrastHarmonicResult>> numHarmonicMap = realHarmonicResults.stream()
|
||||||
|
.sorted(Comparator.comparing(ContrastHarmonicResult::getNum))
|
||||||
|
.collect(Collectors.groupingBy(ContrastHarmonicResult::getNum, LinkedHashMap::new, Collectors.toList()));
|
||||||
|
|
||||||
numMap.forEach((num, resultList) -> {
|
Map<Integer, List<Integer>> numResutMap = new TreeMap<>();
|
||||||
|
numNonHarmonicMap.forEach((num, resultList) -> {
|
||||||
|
numResutMap.put(num, resultList.stream().map(ContrastNonHarmonicResult::getResultFlag).distinct().collect(Collectors.toList()));
|
||||||
|
});
|
||||||
|
numHarmonicMap.forEach((num, resultList) -> {
|
||||||
|
List<Integer> list = numResutMap.getOrDefault(num, new ArrayList<>());
|
||||||
|
list.addAll(resultList.stream().map(ContrastHarmonicResult::getResultFlag).distinct().collect(Collectors.toList()));
|
||||||
|
numResutMap.put(num, list);
|
||||||
|
});
|
||||||
|
|
||||||
|
numResutMap.forEach((num, resultList) -> {
|
||||||
List<DataSourceResultVO> dataSourceResultVOList = new ArrayList<>();
|
List<DataSourceResultVO> dataSourceResultVOList = new ArrayList<>();
|
||||||
|
|
||||||
DataSourceResultVO realDataSourceResultVO = new DataSourceResultVO();
|
DataSourceResultVO realDataSourceResultVO = new DataSourceResultVO();
|
||||||
realDataSourceResultVO.setDataSourceCode(DataSourceEnum.REAL_DATA.getValue());
|
realDataSourceResultVO.setDataSourceCode(DataSourceEnum.REAL_DATA.getValue());
|
||||||
realDataSourceResultVO.setDataSourceName(DataSourceEnum.REAL_DATA.getMsg());
|
realDataSourceResultVO.setDataSourceName(DataSourceEnum.REAL_DATA.getMsg());
|
||||||
List<Integer> resultFlagList = resultList.stream().map(ContrastNonHarmonicResult::getResultFlag).distinct().collect(Collectors.toList());
|
realDataSourceResultVO.setCheckResult(StorageUtil.getInteger(resultList));
|
||||||
realDataSourceResultVO.setCheckResult(StorageUtil.getInteger(resultFlagList));
|
|
||||||
dataSourceResultVOList.add(realDataSourceResultVO);
|
dataSourceResultVOList.add(realDataSourceResultVO);
|
||||||
|
|
||||||
// 录波数据结果
|
result.put(num, dataSourceResultVOList);
|
||||||
List<ContrastNonHarmonicResult> waveNonHarmonicResults = contrastNonHarmonicService.listAllResultData(String.valueOf(finalPlan.getCode()), num, null, true, monitorId, null);
|
});
|
||||||
Map<Integer, List<ContrastNonHarmonicResult>> waveNumMap = waveNonHarmonicResults.stream()
|
|
||||||
|
Map<Integer, Map<Integer, List<Integer>>> waveNumMap = new TreeMap<>();
|
||||||
|
|
||||||
|
// 录波数据结果
|
||||||
|
List<ContrastNonHarmonicResult> waveNonHarmonicResults = contrastNonHarmonicService.listAllResultData(String.valueOf(finalPlan.getCode()), null, null, true, monitorId, null);
|
||||||
|
Map<Integer, List<ContrastNonHarmonicResult>> waveNumNonHarmonicMap = waveNonHarmonicResults.stream()
|
||||||
|
.sorted(Comparator.comparing(ContrastNonHarmonicResult::getNum))
|
||||||
|
.collect(Collectors.groupingBy(ContrastNonHarmonicResult::getNum, LinkedHashMap::new, Collectors.toList()));
|
||||||
|
List<ContrastHarmonicResult> waveHarmonicResults = contrastHarmonicService.listAllResultData(String.valueOf(finalPlan.getCode()), null, null, true, monitorId, null);
|
||||||
|
Map<Integer, List<ContrastHarmonicResult>> waveNumHarmonicMap = waveHarmonicResults.stream()
|
||||||
|
.sorted(Comparator.comparing(ContrastHarmonicResult::getNum))
|
||||||
|
.collect(Collectors.groupingBy(ContrastHarmonicResult::getNum, LinkedHashMap::new, Collectors.toList()));
|
||||||
|
|
||||||
|
waveNumNonHarmonicMap.forEach((num, resultList) -> {
|
||||||
|
LinkedHashMap<Integer, List<ContrastNonHarmonicResult>> collect = resultList.stream()
|
||||||
.sorted(Comparator.comparing(ContrastNonHarmonicResult::getWaveNum))
|
.sorted(Comparator.comparing(ContrastNonHarmonicResult::getWaveNum))
|
||||||
.collect(Collectors.groupingBy(ContrastNonHarmonicResult::getWaveNum, LinkedHashMap::new, Collectors.toList()));
|
.collect(Collectors.groupingBy(ContrastNonHarmonicResult::getWaveNum, LinkedHashMap::new, Collectors.toList()));
|
||||||
|
|
||||||
waveNumMap.forEach((waveNum, resultList1) -> {
|
Map<Integer, List<Integer>> map = new TreeMap<>();
|
||||||
|
collect.forEach((waveNum, resultList1) -> {
|
||||||
|
map.put(waveNum, resultList1.stream().map(ContrastNonHarmonicResult::getResultFlag).distinct().collect(Collectors.toList()));
|
||||||
|
});
|
||||||
|
waveNumMap.put(num, map);
|
||||||
|
});
|
||||||
|
|
||||||
|
waveNumHarmonicMap.forEach((num, resultList) -> {
|
||||||
|
Map<Integer, List<Integer>> map = waveNumMap.getOrDefault(num, new TreeMap<>());
|
||||||
|
|
||||||
|
LinkedHashMap<Integer, List<ContrastHarmonicResult>> collect = resultList.stream().sorted(Comparator.comparing(ContrastHarmonicResult::getWaveNum))
|
||||||
|
.collect(Collectors.groupingBy(ContrastHarmonicResult::getWaveNum, LinkedHashMap::new, Collectors.toList()));
|
||||||
|
collect.forEach((waveNum, resultList1) -> {
|
||||||
|
List<Integer> list = map.getOrDefault(waveNum, new ArrayList<>());
|
||||||
|
list.addAll(resultList1.stream().map(ContrastHarmonicResult::getResultFlag).distinct().collect(Collectors.toList()));
|
||||||
|
map.put(waveNum, list);
|
||||||
|
});
|
||||||
|
waveNumMap.put(num, map);
|
||||||
|
});
|
||||||
|
|
||||||
|
waveNumMap.forEach((num, map) -> {
|
||||||
|
List<DataSourceResultVO> orDefault = result.getOrDefault(num, new ArrayList<>());
|
||||||
|
map.forEach((waveNum, resultList) -> {
|
||||||
DataSourceResultVO waveDataSourceResultVO = new DataSourceResultVO();
|
DataSourceResultVO waveDataSourceResultVO = new DataSourceResultVO();
|
||||||
waveDataSourceResultVO.setDataSourceCode(DataSourceEnum.WAVE_DATA.getValue() + CnSocketUtil.SPLIT_TAG + waveNum);
|
waveDataSourceResultVO.setDataSourceCode(DataSourceEnum.WAVE_DATA.getValue() + CnSocketUtil.SPLIT_TAG + waveNum);
|
||||||
waveDataSourceResultVO.setDataSourceName(DataSourceEnum.WAVE_DATA.getMsg() + StrUtil.SPACE + waveNum);
|
waveDataSourceResultVO.setDataSourceName(DataSourceEnum.WAVE_DATA.getMsg() + StrUtil.SPACE + waveNum);
|
||||||
List<Integer> tempResultFlagList = resultList1.stream().map(ContrastNonHarmonicResult::getResultFlag).distinct().collect(Collectors.toList());
|
waveDataSourceResultVO.setCheckResult(StorageUtil.getInteger(resultList));
|
||||||
waveDataSourceResultVO.setCheckResult(StorageUtil.getInteger(tempResultFlagList));
|
orDefault.add(waveDataSourceResultVO);
|
||||||
dataSourceResultVOList.add(waveDataSourceResultVO);
|
|
||||||
});
|
});
|
||||||
|
result.put(num, orDefault);
|
||||||
result.put(num, dataSourceResultVOList);
|
|
||||||
});
|
});
|
||||||
|
|
||||||
return result;
|
return result;
|
||||||
|
|||||||
@@ -166,9 +166,12 @@ public class DetectionDataServiceImpl extends ReplenishMybatisServiceImpl<Detect
|
|||||||
DynamicTableNameHandler.setTableName("ad_non_harmonic_result_" + code);
|
DynamicTableNameHandler.setTableName("ad_non_harmonic_result_" + code);
|
||||||
LambdaQueryWrapper<ContrastNonHarmonicResult> wrapper1 = new LambdaQueryWrapper<ContrastNonHarmonicResult>()
|
LambdaQueryWrapper<ContrastNonHarmonicResult> wrapper1 = new LambdaQueryWrapper<ContrastNonHarmonicResult>()
|
||||||
.in(CollUtil.isNotEmpty(adType), ContrastNonHarmonicResult::getAdType, adType);
|
.in(CollUtil.isNotEmpty(adType), ContrastNonHarmonicResult::getAdType, adType);
|
||||||
for (String id : ids) {
|
wrapper1.and(w -> {
|
||||||
wrapper1.like(ContrastNonHarmonicResult::getDevMonitorId, id);
|
for (String id : ids) {
|
||||||
}
|
w.or().like(ContrastNonHarmonicResult::getDevMonitorId, id);
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
List<ContrastNonHarmonicResult> nonHarmonicResultList = contrastNonHarmonicService.list(wrapper1);
|
List<ContrastNonHarmonicResult> nonHarmonicResultList = contrastNonHarmonicService.list(wrapper1);
|
||||||
Map<String, List<ContrastNonHarmonicResult>> chnMap1 = nonHarmonicResultList.stream().collect(Collectors.groupingBy(x -> x.getDevMonitorId().split("_")[1], Collectors.toList()));
|
Map<String, List<ContrastNonHarmonicResult>> chnMap1 = nonHarmonicResultList.stream().collect(Collectors.groupingBy(x -> x.getDevMonitorId().split("_")[1], Collectors.toList()));
|
||||||
chnMap1.forEach((chn, vList) -> {
|
chnMap1.forEach((chn, vList) -> {
|
||||||
@@ -181,9 +184,12 @@ public class DetectionDataServiceImpl extends ReplenishMybatisServiceImpl<Detect
|
|||||||
DynamicTableNameHandler.setTableName("ad_harmonic_result_" + code);
|
DynamicTableNameHandler.setTableName("ad_harmonic_result_" + code);
|
||||||
LambdaQueryWrapper<ContrastHarmonicResult> wrapper2 = new LambdaQueryWrapper<ContrastHarmonicResult>()
|
LambdaQueryWrapper<ContrastHarmonicResult> wrapper2 = new LambdaQueryWrapper<ContrastHarmonicResult>()
|
||||||
.in(CollUtil.isNotEmpty(adType), ContrastHarmonicResult::getAdType, adType);
|
.in(CollUtil.isNotEmpty(adType), ContrastHarmonicResult::getAdType, adType);
|
||||||
for (String id : ids) {
|
wrapper2.and(w -> {
|
||||||
wrapper2.like(ContrastHarmonicResult::getDevMonitorId, id);
|
for (String id : ids) {
|
||||||
}
|
w.like(ContrastHarmonicResult::getDevMonitorId, id);
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
List<ContrastHarmonicResult> harmonicResultList = contrastHarmonicService.list(wrapper2);
|
List<ContrastHarmonicResult> harmonicResultList = contrastHarmonicService.list(wrapper2);
|
||||||
Map<String, List<ContrastHarmonicResult>> chnMap2 = harmonicResultList.stream().collect(Collectors.groupingBy(x -> x.getDevMonitorId().split("_")[1], Collectors.toList()));
|
Map<String, List<ContrastHarmonicResult>> chnMap2 = harmonicResultList.stream().collect(Collectors.groupingBy(x -> x.getDevMonitorId().split("_")[1], Collectors.toList()));
|
||||||
chnMap2.forEach((chn, vList) -> {
|
chnMap2.forEach((chn, vList) -> {
|
||||||
|
|||||||
Reference in New Issue
Block a user