icd校验

This commit is contained in:
caozehui
2025-04-14 13:21:25 +08:00
parent 56dd19b32e
commit 4a2fb595d0
10 changed files with 256 additions and 183 deletions

View File

@@ -7,11 +7,13 @@ import cn.hutool.core.util.StrUtil;
import com.alibaba.fastjson.JSON; import com.alibaba.fastjson.JSON;
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
import com.njcn.gather.detection.pojo.dto.DevXiNumData; import com.njcn.gather.detection.pojo.dto.DevXiNumData;
import com.njcn.gather.detection.pojo.enums.DetectionCodeEnum;
import com.njcn.gather.detection.pojo.enums.SourceOperateCodeEnum; import com.njcn.gather.detection.pojo.enums.SourceOperateCodeEnum;
import com.njcn.gather.detection.pojo.enums.SourceResponseCodeEnum; import com.njcn.gather.detection.pojo.enums.SourceResponseCodeEnum;
import com.njcn.gather.detection.pojo.param.DevPhaseSequenceParam; import com.njcn.gather.detection.pojo.param.DevPhaseSequenceParam;
import com.njcn.gather.detection.pojo.param.PreDetectionParam; import com.njcn.gather.detection.pojo.param.PreDetectionParam;
import com.njcn.gather.detection.pojo.po.DevData; import com.njcn.gather.detection.pojo.po.DevData;
import com.njcn.gather.detection.pojo.po.IcdCheckData;
import com.njcn.gather.detection.pojo.po.SourceCompareDev; import com.njcn.gather.detection.pojo.po.SourceCompareDev;
import com.njcn.gather.detection.pojo.vo.*; import com.njcn.gather.detection.pojo.vo.*;
import com.njcn.gather.detection.service.impl.DetectionServiceImpl; import com.njcn.gather.detection.service.impl.DetectionServiceImpl;
@@ -70,6 +72,9 @@ public class SocketDevResponseService {
private DevPhaseSequenceParam devPhaseSequenceParam; private DevPhaseSequenceParam devPhaseSequenceParam;
private List<String> dataTypeList;
private List<String> icdTypeList;
private final List<String> nonHarmonicList = Stream.of(DicDataEnum.FREQ.getCode(), DicDataEnum.V.getCode(), DicDataEnum.I.getCode(), DicDataEnum.IMBV.getCode(), DicDataEnum.IMBA.getCode(), DicDataEnum.VOLTAGE.getCode(), DicDataEnum.F.getCode()).collect(Collectors.toList()); private final List<String> nonHarmonicList = Stream.of(DicDataEnum.FREQ.getCode(), DicDataEnum.V.getCode(), DicDataEnum.I.getCode(), DicDataEnum.IMBV.getCode(), DicDataEnum.IMBA.getCode(), DicDataEnum.VOLTAGE.getCode(), DicDataEnum.F.getCode()).collect(Collectors.toList());
private final List<String> harmonicList = Stream.of(DicDataEnum.HV.getCode(), DicDataEnum.HI.getCode(), DicDataEnum.HP.getCode(), DicDataEnum.HSV.getCode(), DicDataEnum.HSI.getCode()).collect(Collectors.toList()); private final List<String> harmonicList = Stream.of(DicDataEnum.HV.getCode(), DicDataEnum.HI.getCode(), DicDataEnum.HP.getCode(), DicDataEnum.HSV.getCode(), DicDataEnum.HSI.getCode()).collect(Collectors.toList());
@@ -108,6 +113,11 @@ public class SocketDevResponseService {
*/ */
Set<String> failComm = new HashSet<>(); Set<String> failComm = new HashSet<>();
/**
* 存放从装置收到的icd校验数据。key为icdTypevalue为IcdCheckData
*/
Map<String, IcdCheckData> icdCheckDataMap = new HashMap<>();
/** /**
* 保存成功的协议 * 保存成功的协议
*/ */
@@ -764,9 +774,59 @@ public class SocketDevResponseService {
System.out.println(successComm.size() + "=====" + FormalTestManager.monitorIdListComm.size()); System.out.println(successComm.size() + "=====" + FormalTestManager.monitorIdListComm.size());
if (successComm.size() == FormalTestManager.monitorIdListComm.size()) { if (successComm.size() == FormalTestManager.monitorIdListComm.size()) {
successComm.clear();
failComm.clear();
if (CollUtil.isEmpty(dataTypeList)) {
dataTypeList = pqScriptDtlsService.getScriptToIcdCheckInfo(param);
}
if (CollUtil.isEmpty(icdTypeList)) {
icdTypeList = FormalTestManager.devList.stream().map(PreDetection::getIcdType).distinct().collect(Collectors.toList());
}
socketMsg.setRequestId(SourceOperateCodeEnum.YJC_XYJY.getValue());
socketMsg.setOperateCode(SourceOperateCodeEnum.VERIFY_MAPPING$01.getValue());
Map<String, Object> map = new HashMap<>(2);
map.put("dataType", dataTypeList);
map.put("icdType", icdTypeList.get(0));
socketMsg.setData(JSON.toJSONString(map));
System.out.println("开始脚本与icd校验:++++++++++");
SocketManager.sendMsg(s, JSON.toJSONString(socketMsg));
}
completeJudgment(param);
} else if (socketDataMsg.getOperateCode().equals(SourceOperateCodeEnum.VERIFY_MAPPING$01.getValue())) {
String data = socketDataMsg.getData();
IcdCheckData icdCheckData = JSON.parseObject(data, IcdCheckData.class);
boolean isContinue = true;
for (int i = 0; i < icdCheckData.getResultData().size(); i++) {
IcdCheckData.ResultData item = icdCheckData.getResultData().get(i);
Integer errorType = getErrorType(item.getDesc(), item.getPhaseResult());
// 校验脚本与icd校验失败
if (errorType.equals(0)) {
isContinue = false;
Map<String, Object> map = new HashMap<>(2);
map.put("icdType", icdCheckData.getIcdType());
DetectionCodeEnum anEnum = DetectionCodeEnum.getDetectionCodeByCode(item.getDesc());
map.put("dataType", anEnum.getMessage());
WebSocketVO<String> webSocketVO = new WebSocketVO<>();
webSocketVO.setData(JSON.toJSONString(map));
webSocketVO.setRequestId(SourceOperateCodeEnum.YJC_XYJY.getValue());
webSocketVO.setOperateCode(SourceOperateCodeEnum.VERIFY_MAPPING$01.getValue());
webSocketVO.setCode(SourceResponseCodeEnum.SUCCESS.getCode());
WebServiceManager.sendMsg(param.getUserPageId(), JSON.toJSONString(webSocketVO));
CnSocketUtil.quitSend(param);
break;
}
}
icdCheckDataMap.put(icdCheckData.getIcdType(), icdCheckData);
if (isContinue) {
if (icdCheckDataMap.size() == icdTypeList.size()) {
SocketDataMsg temMsg = new SocketDataMsg(); SocketDataMsg temMsg = new SocketDataMsg();
temMsg.setCode(SourceResponseCodeEnum.DEV_COMM_ALL_SUCCESS.getCode()); temMsg.setCode(SourceResponseCodeEnum.DEV_COMM_ALL_SUCCESS.getCode());
temMsg.setOperateCode(SourceOperateCodeEnum.DEV_INIT_GATHER_03.getValue()); temMsg.setOperateCode(SourceOperateCodeEnum.VERIFY_MAPPING$01.getValue());
temMsg.setRequestId(SourceOperateCodeEnum.YJC_XYJY.getValue()); temMsg.setRequestId(SourceOperateCodeEnum.YJC_XYJY.getValue());
WebServiceManager.sendMsg(param.getUserPageId(), JSON.toJSONString(temMsg)); WebServiceManager.sendMsg(param.getUserPageId(), JSON.toJSONString(temMsg));
@@ -845,14 +905,18 @@ public class SocketDevResponseService {
} else { } else {
} }
successComm.clear(); } else {
failComm.clear(); // 发送下一个脚本与icd校验
Map<String, Object> map = new HashMap<>(2);
map.put("dataType", dataTypeList);
String icdType = icdTypeList.stream().filter(it -> !icdCheckDataMap.containsKey(it)).findFirst().get();
map.put("icdType", icdType);
socketMsg.setData(JSON.toJSONString(map));
System.out.println("开始脚本与icd校验:++++++++++");
SocketManager.sendMsg(s, JSON.toJSONString(socketMsg));
}
} }
completeJudgment(param);
} }
break; break;
case UNPROCESSED_BUSINESS: case UNPROCESSED_BUSINESS:
WebServiceManager.sendMsg(param.getUserPageId(), JSON.toJSONString(socketDataMsg)); WebServiceManager.sendMsg(param.getUserPageId(), JSON.toJSONString(socketDataMsg));
@@ -879,6 +943,34 @@ public class SocketDevResponseService {
} }
} }
/**
* 获取错误类型
*
* @param desc
* @param list
* @return
*/
private Integer getErrorType(String desc, DevData.SqlDataDTO.ListDTO list) {
if (ObjectUtil.isNotNull(list)) {
if (DetectionCodeEnum.MAG.getCode().equals(desc) || DetectionCodeEnum.DUR.getCode().equals(desc)) {
if (ObjectUtil.isNull(list.getA()) && ObjectUtil.isNull(list.getB()) && ObjectUtil.isNull(list.getC()) && ObjectUtil.isNull(list.getT())) {
return 0;
} else {
return 1;
}
} else if (DetectionCodeEnum.I_UNBAN.getCode().equals(desc) || DetectionCodeEnum.V_UNBAN.getCode().equals(desc)) {
if (ObjectUtil.isNotNull(list.getA()) && list.getA().equals(0.0) && ObjectUtil.isNotNull(list.getB()) && list.getB().equals(1.0) && ObjectUtil.isNotNull(list.getC()) && list.getC().equals(1.0) || ObjectUtil.isNotNull(list.getT()) && list.getT().equals(1.0)) {
return 1;
}
} else {
if (ObjectUtil.isNotNull(list.getA()) && list.getA().equals(1.0) && ObjectUtil.isNotNull(list.getB()) && list.getB().equals(1.0) && ObjectUtil.isNotNull(list.getC()) && list.getC().equals(1.0) || ObjectUtil.isNotNull(list.getT()) && list.getT().equals(1.0)) {
return 1; // 装置上送错误
}
}
}
return 0; // icd文件与脚本不匹配
}
/** /**
* 相序校验 * 相序校验
@@ -1775,7 +1867,7 @@ public class SocketDevResponseService {
* @param param * @param param
* @param socketDataMsg * @param socketDataMsg
*/ */
public void scriptToDeviceCheck(PreDetectionParam param,SocketDataMsg socketDataMsg) { public void scriptToDeviceCheck(PreDetectionParam param, SocketDataMsg socketDataMsg) {
String data = socketDataMsg.getData(); String data = socketDataMsg.getData();
DevData devData = JSON.parseObject(data, DevData.class); DevData devData = JSON.parseObject(data, DevData.class);
SourceResponseCodeEnum dictDataEnumByCode = SourceResponseCodeEnum.getDictDataEnumByCode(socketDataMsg.getCode()); SourceResponseCodeEnum dictDataEnumByCode = SourceResponseCodeEnum.getDictDataEnumByCode(socketDataMsg.getCode());

View File

@@ -38,6 +38,8 @@ public enum SourceOperateCodeEnum {
DATA_CHNFACTOR$01("DATA_CHNFACTOR$01","校验系数获取"), DATA_CHNFACTOR$01("DATA_CHNFACTOR$01","校验系数获取"),
DATA_CHNFACTOR$02("DATA_CHNFACTOR$02","校验系数下发"), DATA_CHNFACTOR$02("DATA_CHNFACTOR$02","校验系数下发"),
VERIFY_MAPPING$01("VERIFY_MAPPING$01","脚本与icd校验"),
/** /**
* 请求操作类型对应实体中 requestId * 请求操作类型对应实体中 requestId

View File

@@ -0,0 +1,29 @@
package com.njcn.gather.detection.pojo.po;
import lombok.Data;
import lombok.NoArgsConstructor;
import java.util.List;
/**
* @author caozehui
* @data 2025-04-10
*/
@NoArgsConstructor
@Data
public class IcdCheckData {
private String icdType;
private List<ResultData> resultData;
@NoArgsConstructor
@Data
public static class ResultData {
private String type;
private String desc;
private DevData.SqlDataDTO.ListDTO phaseResult;
}
}

View File

@@ -155,7 +155,7 @@ public class PqDevServiceImpl extends ServiceImpl<PqDevMapper, PqDev> implements
} }
switch (sceneEnum) { switch (sceneEnum) {
case PROVINCE_PLATFORM: case PROVINCE_PLATFORM:
if(!Pattern.matches(PatternRegex.PROVINCE_DEV_NAME_REGEX, pqDev.getName())){ if (!Pattern.matches(PatternRegex.PROVINCE_DEV_NAME_REGEX, pqDev.getName())) {
throw new BusinessException(DetectionResponseEnum.PROVINCE_DEV_NAME_FORMAT_ERROR); throw new BusinessException(DetectionResponseEnum.PROVINCE_DEV_NAME_FORMAT_ERROR);
} }
break; break;
@@ -414,7 +414,7 @@ public class PqDevServiceImpl extends ServiceImpl<PqDevMapper, PqDev> implements
@Override @Override
public PqDevVO getPqDevById(String id) { public PqDevVO getPqDevById(String id) {
PqDev pqDev = this.getById(id); PqDev pqDev = this.getById(id);
if(StrUtil.isNotBlank(pqDev.getCheckBy())){ if (StrUtil.isNotBlank(pqDev.getCheckBy())) {
pqDev.setCheckBy(userService.getById(pqDev.getCheckBy()).getName()); pqDev.setCheckBy(userService.getById(pqDev.getCheckBy()).getName());
} }
PqDevVO pqDevVO = new PqDevVO(); PqDevVO pqDevVO = new PqDevVO();
@@ -531,43 +531,31 @@ public class PqDevServiceImpl extends ServiceImpl<PqDevMapper, PqDev> implements
if (result.containsKey(pqDev.getId())) { if (result.containsKey(pqDev.getId())) {
Integer checkState; Integer checkState;
int i; int i;
LambdaUpdateWrapper<PqDev> wrapper = new LambdaUpdateWrapper<PqDev>()
.set(PqDev::getCheckResult, result.get(pqDev.getId()))
.set(PqDev::getCheckBy, userId)
.set(PqDev::getCheckTime, LocalDateTime.now())
.eq(PqDev::getId, pqDev.getId());
if (pqDev.getReCheckNum() >= config.getMaxTime()) { if (pqDev.getReCheckNum() >= config.getMaxTime()) {
// 装置报告生成 todo... // 装置报告生成 todo...
this.baseMapper.updateReportState(pqDev.getId()); //this.baseMapper.updateReportState(pqDev.getId());
wrapper.set(PqDev::getReportState, DevReportStateEnum.GENERATED.getValue());
// 装置归档 // 装置归档
checkState = CheckStateEnum.DOCUMENTED.getValue(); checkState = CheckStateEnum.DOCUMENTED.getValue();
i = pqDev.getReCheckNum(); i = pqDev.getReCheckNum();
} else { } else {
checkState = CheckStateEnum.CHECKED.getValue(); checkState = CheckStateEnum.CHECKED.getValue();
i = pqDev.getReCheckNum() + 1; i = pqDev.getReCheckNum() + 1;
wrapper.set(PqDev::getReportState, DevReportStateEnum.NOT_GENERATED.getValue());
} }
this.update(new LambdaUpdateWrapper<PqDev>() wrapper.set(PqDev::getReCheckNum, i)
.set(PqDev::getReCheckNum, i) .set(PqDev::getCheckState, checkState);
.set(PqDev::getCheckState, checkState) this.update(wrapper);
.set(PqDev::getCheckResult, result.get(pqDev.getId()))
.set(PqDev::getCheckBy, userId)
.set(PqDev::getCheckTime, LocalDateTime.now())
.set(PqDev::getReportState, DevReportStateEnum.NOT_GENERATED.getValue())
.eq(PqDev::getId, pqDev.getId()));
if (checkState.equals(CheckStateEnum.DOCUMENTED.getValue())) {
// 判断计划下所有设备是否都已归档,如果是则将计划改为已完成
// 查询该计划下所有设备的检测状态,是否有不为归档的
LambdaQueryWrapper<PqDev> queryWrapper = new LambdaQueryWrapper<>();
queryWrapper.eq(PqDev::getPlanId, pqDev.getPlanId())
.eq(PqDev::getState, DataStateEnum.ENABLE.getCode())
.ne(PqDev::getCheckState, CheckStateEnum.DOCUMENTED.getValue());
int count = this.count(queryWrapper);
if (count == 0) {
// 如果非归档状态的设备数量为0则更新计划已完成
this.baseMapper.finishPlan(pqDev.getPlanId());
}
}
LambdaQueryWrapper<PqDev> queryWrapper = new LambdaQueryWrapper<>(); LambdaQueryWrapper<PqDev> queryWrapper = new LambdaQueryWrapper<>();
queryWrapper.eq(PqDev::getPlanId, pqDev.getPlanId()) queryWrapper.eq(PqDev::getPlanId, pqDev.getPlanId())
.eq(PqDev::getState, DataStateEnum.ENABLE.getCode()); .eq(PqDev::getState, DataStateEnum.ENABLE.getCode());
List<PqDev> pqDevList = this.list(queryWrapper); List<PqDev> pqDevList = this.list(queryWrapper);
if (CollUtil.isNotEmpty(pqDevList)) { if (CollUtil.isNotEmpty(pqDevList)) {
Set<Integer> set = pqDevList.stream().map(PqDev::getCheckResult).collect(Collectors.toSet()); Set<Integer> set = pqDevList.stream().map(PqDev::getCheckResult).collect(Collectors.toSet());
@@ -579,15 +567,23 @@ public class PqDevServiceImpl extends ServiceImpl<PqDevMapper, PqDev> implements
this.baseMapper.updatePlanCheckResult(pqDev.getPlanId(), CheckResultEnum.ACCORD.getValue()); this.baseMapper.updatePlanCheckResult(pqDev.getPlanId(), CheckResultEnum.ACCORD.getValue());
} }
// set = pqDevList.stream().map(PqDev::getCheckState).collect(Collectors.toSet()); set = pqDevList.stream().map(PqDev::getCheckState).collect(Collectors.toSet());
// if (set.contains(CheckStateEnum.UNCHECKED.getValue())) { if (set.contains(CheckStateEnum.UNCHECKED.getValue())) {
// this.baseMapper.updatePlanTestState(pqDev.getPlanId(), CheckStateEnum.UNCHECKED.getValue()); this.baseMapper.updatePlanTestState(pqDev.getPlanId(), CheckStateEnum.CHECKING.getValue());
// } else { } else {
// this.baseMapper.updatePlanTestState(pqDev.getPlanId(), CheckStateEnum.CHECKED.getValue()); if (checkState.equals(CheckStateEnum.DOCUMENTED.getValue())) {
// } queryWrapper.ne(PqDev::getCheckState, CheckStateEnum.DOCUMENTED.getValue());
int count = this.count(queryWrapper);
if (count == 0) {
// 如果非归档状态的设备数量为0则更新计划已完成
this.baseMapper.finishPlan(pqDev.getPlanId());
}
} else {
this.baseMapper.updatePlanTestState(pqDev.getPlanId(), CheckStateEnum.CHECKING.getValue());
}
}
} }
} }
} }
} }
return true; return true;

View File

@@ -219,27 +219,5 @@ public class PqScriptController extends BaseController {
String checkData = pqScriptDtlsService.getScriptDtlsDesc(param); String checkData = pqScriptDtlsService.getScriptDtlsDesc(param);
return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, checkData, methodDescribe); return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, checkData, methodDescribe);
} }
@OperateInfo(info = LogEnum.BUSINESS_COMMON)
@PostMapping("/getCheckInfo1")
@ApiOperation("获取脚本与设备校验所需要的信息")
public HttpResult<DevPhaseSequenceParam> getIcdCheckInfo1(@RequestBody PreDetectionParam param) {
String methodDescribe = getMethodDescribe("getIcdCheckInfo1");
LogUtil.njcnDebug(log, "{},查询数据为:{}", methodDescribe);
DevPhaseSequenceParam result = pqScriptDtlsService.getScriptToDeviceCheckInfo(param);
return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, result, methodDescribe);
}
@OperateInfo(info = LogEnum.BUSINESS_COMMON)
@PostMapping("/getCheckInfo2")
@ApiOperation("获取脚本与icd校验所需要的信息")
public HttpResult<Map<String, Object>> getIcdCheckInfo2(@RequestBody PreDetectionParam param) {
String methodDescribe = getMethodDescribe("getIcdCheckInfo2");
LogUtil.njcnDebug(log, "{},查询数据为:{}", methodDescribe);
Map<String, Object> result = pqScriptDtlsService.getScriptToIcdCheckInfo(param);
return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, result, methodDescribe);
}
} }

View File

@@ -44,4 +44,12 @@ public interface IPqScriptCheckDataService extends IService<PqScriptCheckData> {
* @param indexList 脚本下标集合 * @param indexList 脚本下标集合
*/ */
List<PqScriptCheckData> listCheckData(String scriptId, List<Integer> indexList); List<PqScriptCheckData> listCheckData(String scriptId, List<Integer> indexList);
/**
* 根据脚本id删除数据
*
* @param ids
* @return
*/
boolean deleteByScriptIds(List<String> ids);
} }

View File

@@ -128,19 +128,12 @@ public interface IPqScriptDtlsService extends IService<PqScriptDtls> {
String getScriptDtlsDesc(ScriptParam.Desc param); String getScriptDtlsDesc(ScriptParam.Desc param);
/** /**
* 获取脚本与设备校验所需要的信息 * 获取脚本与icd校验所需要的信息
* *
* @param param * @param param
* @return * @return
*/ */
DevPhaseSequenceParam getScriptToDeviceCheckInfo(PreDetectionParam param); List<String> getScriptToIcdCheckInfo(PreDetectionParam param);
/**
* 获取脚本与icd校验时所需要的信息
*
* @return
*/
Map<String, Object> getScriptToIcdCheckInfo(PreDetectionParam param);
/** /**
* 根据脚本id获取脚本详情数据 * 根据脚本id获取脚本详情数据
* @param scriptId 脚本id * @param scriptId 脚本id

View File

@@ -134,5 +134,8 @@ public class PqScriptCheckDataServiceImpl extends ServiceImpl<PqScriptCheckDataM
return this.list(queryWrapper); return this.list(queryWrapper);
} }
@Override
public boolean deleteByScriptIds(List<String> ids) {
return this.remove(new LambdaQueryWrapper<PqScriptCheckData>().in(PqScriptCheckData::getScriptId, ids));
}
} }

View File

@@ -691,8 +691,7 @@ public class PqScriptDtlsServiceImpl extends ServiceImpl<PqScriptDtlsMapper, PqS
} }
@Override @Override
public DevPhaseSequenceParam getScriptToDeviceCheckInfo(PreDetectionParam param) { public List<String> getScriptToIcdCheckInfo(PreDetectionParam param) {
Map<String, Object> map = new HashMap<>();
PqScriptIssueParam issueParam = new PqScriptIssueParam(); PqScriptIssueParam issueParam = new PqScriptIssueParam();
// issueParam.setPlanId(param.getPlanId()); // issueParam.setPlanId(param.getPlanId());
@@ -701,44 +700,13 @@ public class PqScriptDtlsServiceImpl extends ServiceImpl<PqScriptDtlsMapper, PqS
issueParam.setScriptId(param.getScriptId()); issueParam.setScriptId(param.getScriptId());
issueParam.setIsPhaseSequence(SourceOperateCodeEnum.FORMAL_TEST.getValue()); issueParam.setIsPhaseSequence(SourceOperateCodeEnum.FORMAL_TEST.getValue());
List<SourceIssue> sourceIssues = this.listSourceIssue(issueParam); List<SourceIssue> sourceIssues = this.listSourceIssue(issueParam);
sourceIssues = sourceIssues.stream().filter(x -> !DicDataEnum.F.getCode().equals(x.getType()) && !DicDataEnum.VOLTAGE.getCode().equals(x.getType()) && !DicDataEnum.HP.getCode().equals(x.getType())).collect(Collectors.toList());
DevPhaseSequenceParam phaseSequenceParam = new DevPhaseSequenceParam();
List<String> dataTypeList = new ArrayList<>(); List<String> dataTypeList = new ArrayList<>();
sourceIssues.forEach(x -> { sourceIssues.forEach(x -> {
dataTypeList.addAll(x.getDevValueTypeList()); dataTypeList.addAll(x.getDevValueTypeList());
}); });
phaseSequenceParam.setIgnoreCount(0);
phaseSequenceParam.setReadCount(1);
phaseSequenceParam.setDataType(dataTypeList);
return phaseSequenceParam; return dataTypeList;
}
@Override
public Map<String, Object> getScriptToIcdCheckInfo(PreDetectionParam param) {
Map<String, Object> map = new HashMap<>();
PqScriptIssueParam issueParam = new PqScriptIssueParam();
// issueParam.setPlanId(param.getPlanId());
issueParam.setSourceId(param.getSourceId());
issueParam.setDevIds(param.getDevIds());
issueParam.setScriptId(param.getScriptId());
issueParam.setIsPhaseSequence(SourceOperateCodeEnum.FORMAL_TEST.getValue());
List<SourceIssue> sourceIssues = this.listSourceIssue(issueParam);
sourceIssues = sourceIssues.stream().filter(x -> !DicDataEnum.F.getCode().equals(x.getType()) && !DicDataEnum.VOLTAGE.getCode().equals(x.getType()) && !DicDataEnum.HP.getCode().equals(x.getType())).collect(Collectors.toList());
map.put("scriptList", sourceIssues);
// List<PqDev> devList = pqDevService.listByIds(param.getDevIds());
// // 是否存在多个设备类型?
// List<String> devTypeList = devList.stream().map(PqDev::getDevType).distinct().collect(Collectors.toList());
// if (devTypeList.size() == 1) {
// DevType devType = devTypeService.getById(devTypeList.get(0));
// PqIcdPath icd = pqIcdPathService.getIcdByDevType(devType.getId());
// map.put("icdName", icd.getName());
// }
return map;
} }
@Override @Override

View File

@@ -13,6 +13,7 @@ import com.njcn.gather.pojo.enums.DetectionResponseEnum;
import com.njcn.gather.script.mapper.PqScriptMapper; import com.njcn.gather.script.mapper.PqScriptMapper;
import com.njcn.gather.script.pojo.param.PqScriptParam; import com.njcn.gather.script.pojo.param.PqScriptParam;
import com.njcn.gather.script.pojo.po.PqScript; import com.njcn.gather.script.pojo.po.PqScript;
import com.njcn.gather.script.service.IPqScriptCheckDataService;
import com.njcn.gather.script.service.IPqScriptDtlsService; import com.njcn.gather.script.service.IPqScriptDtlsService;
import com.njcn.gather.script.service.IPqScriptService; import com.njcn.gather.script.service.IPqScriptService;
import com.njcn.web.factory.PageFactory; import com.njcn.web.factory.PageFactory;
@@ -38,6 +39,7 @@ import java.util.stream.Collectors;
public class PqScriptServiceImpl extends ServiceImpl<PqScriptMapper, PqScript> implements IPqScriptService { public class PqScriptServiceImpl extends ServiceImpl<PqScriptMapper, PqScript> implements IPqScriptService {
private final IPqScriptDtlsService pqScriptDtlsService; private final IPqScriptDtlsService pqScriptDtlsService;
private final IPqScriptCheckDataService pqScriptCheckDataService;
@Override @Override
public Page<PqScript> listPqScript(PqScriptParam.QueryParam param) { public Page<PqScript> listPqScript(PqScriptParam.QueryParam param) {
@@ -88,6 +90,8 @@ public class PqScriptServiceImpl extends ServiceImpl<PqScriptMapper, PqScript> i
} }
//删除对应的脚本详情 //删除对应的脚本详情
pqScriptDtlsService.deletePqScriptDtlsByScriptId(ids); pqScriptDtlsService.deletePqScriptDtlsByScriptId(ids);
//删除对应的checkdata
pqScriptCheckDataService.deleteByScriptIds(ids);
LambdaUpdateWrapper<PqScript> updateWrapper = new LambdaUpdateWrapper<>(); LambdaUpdateWrapper<PqScript> updateWrapper = new LambdaUpdateWrapper<>();
updateWrapper.set(PqScript::getState, DataStateEnum.DELETED.getCode()) updateWrapper.set(PqScript::getState, DataStateEnum.DELETED.getCode())
.in(PqScript::getId, ids); .in(PqScript::getId, ids);