1.解决不可同时测试电压,电流问题
This commit is contained in:
@@ -115,45 +115,20 @@ public class DetectionServiceImpl {
|
||||
case I_ABSOLUTELY:
|
||||
return isQualified(dev, devIdMapComm, errDtlsCheckData, I, sourceIssue, dataRule, code);
|
||||
/**
|
||||
* 谐波电压
|
||||
* 谐波
|
||||
*/
|
||||
case HV:
|
||||
AdHarmonicResult harmV = isHarmQualified(dev, devIdMapComm, errDtlsCheckData, U, sourceIssue, dataRule, 2);
|
||||
if (ObjectUtil.isNotNull(harmV)) {
|
||||
detectionDataDealService.acceptAdResult(Arrays.asList(harmV), code);
|
||||
return harmV.getResultFlag();
|
||||
}
|
||||
return 4;
|
||||
/**
|
||||
* 谐波电流
|
||||
*/
|
||||
case HI:
|
||||
AdHarmonicResult harmV = isHarmQualified(dev, devIdMapComm, errDtlsCheckData, U, sourceIssue, dataRule, 2);
|
||||
AdHarmonicResult harmI = isHarmQualified(dev, devIdMapComm, errDtlsCheckData, I, sourceIssue, dataRule, 2);
|
||||
if (ObjectUtil.isNotNull(harmI)) {
|
||||
detectionDataDealService.acceptAdResult(Arrays.asList(harmI), code);
|
||||
return harmI.getResultFlag();
|
||||
}
|
||||
return 4;
|
||||
return resultFlag(harmV,harmI,code);
|
||||
/**
|
||||
* 间谐波电压
|
||||
* 间谐波
|
||||
*/
|
||||
case HSV:
|
||||
AdHarmonicResult harmInV = isHarmQualified(dev, devIdMapComm, errDtlsCheckData, U, sourceIssue, dataRule, 1);
|
||||
if (ObjectUtil.isNotNull(harmInV)) {
|
||||
detectionDataDealService.acceptAdResult(Arrays.asList(harmInV), code);
|
||||
return harmInV.getResultFlag();
|
||||
}
|
||||
return 4;
|
||||
/**
|
||||
* 间谐波电流
|
||||
*/
|
||||
case HSI:
|
||||
AdHarmonicResult harmInI = isHarmQualified(dev, devIdMapComm, errDtlsCheckData, I, sourceIssue, dataRule, 1);
|
||||
if (ObjectUtil.isNotNull(harmInI)) {
|
||||
detectionDataDealService.acceptAdResult(Arrays.asList(harmInI), code);
|
||||
return harmInI.getResultFlag();
|
||||
}
|
||||
return 4;
|
||||
return resultFlag(harmInV,harmInI,code);
|
||||
/**
|
||||
* 三相电压不平衡度
|
||||
*/
|
||||
@@ -204,7 +179,20 @@ public class DetectionServiceImpl {
|
||||
return isUnknownQualified(dev, devIdMapComm, errDtlsCheckData, sourceIssue, dataRule, code);
|
||||
}
|
||||
}
|
||||
|
||||
public Integer resultFlag(AdHarmonicResult v,AdHarmonicResult i,String code){
|
||||
List<AdHarmonicResult> info=new ArrayList<>();
|
||||
if (ObjectUtil.isNotNull(v)) {
|
||||
info.add(v);
|
||||
}
|
||||
if (ObjectUtil.isNotNull(i)) {
|
||||
info.add(i);
|
||||
}
|
||||
if(CollUtil.isNotEmpty(info)){
|
||||
detectionDataDealService.acceptAdResult(info, code);
|
||||
return getInteger(info.stream().map(x->x.getResultFlag()).distinct().collect(Collectors.toList()));
|
||||
}
|
||||
return 4;
|
||||
}
|
||||
public Integer isUnknownQualified(List<DevData> dev,
|
||||
Map<String, String> devIdMapComm,
|
||||
List<ErrDtlsCheckDataVO> errDtlsCheckData,
|
||||
@@ -479,7 +467,6 @@ public class DetectionServiceImpl {
|
||||
if (I.equals(type)) {
|
||||
fData = sourceIssue.getFIn();
|
||||
fundCode = DetectionCodeEnum.I1.getCode();
|
||||
;
|
||||
if (num == 1) {
|
||||
harmCode = DetectionCodeEnum.SI_1_49.getCode();
|
||||
} else {
|
||||
@@ -502,11 +489,13 @@ public class DetectionServiceImpl {
|
||||
Integer isQualified = 4;
|
||||
String valueTypeCode = "";
|
||||
if (CollUtil.isNotEmpty(errDtlsCheckData)) {
|
||||
harmonicResult.setAdType(errDtlsCheckData.get(0).getValueType());
|
||||
isQualified = errDtlsCheckData.get(0).getIsQualified();
|
||||
valueTypeCode = errDtlsCheckData.get(0).getValueTypeCode();
|
||||
if (CollUtil.isNotEmpty(errDtlsCheckData.get(0).getErrSysDtls())) {
|
||||
pqErrSysDtls = errDtlsCheckData.get(0).getErrSysDtls();
|
||||
String finalHarmCode = harmCode;
|
||||
List<ErrDtlsCheckDataVO> adDtlsCheckData = errDtlsCheckData.stream().filter(x -> finalHarmCode.equals(x.getValueTypeCode())).collect(Collectors.toList());
|
||||
harmonicResult.setAdType(adDtlsCheckData.get(0).getValueType());
|
||||
isQualified = adDtlsCheckData.get(0).getIsQualified();
|
||||
valueTypeCode = adDtlsCheckData.get(0).getValueTypeCode();
|
||||
if (CollUtil.isNotEmpty(adDtlsCheckData.get(0).getErrSysDtls())) {
|
||||
pqErrSysDtls = adDtlsCheckData.get(0).getErrSysDtls();
|
||||
}
|
||||
}
|
||||
List<DetectionData> integerBooleanA = harmRangeComparison(isQualified, valueTypeCode, pqErrSysDtls, type, TYPE_A, sourceIssue, dataRule, devMap.get(TYPE_A), fData, num);
|
||||
|
||||
@@ -1392,37 +1392,37 @@ public class PqReportServiceImpl extends ServiceImpl<PqReportMapper, PqReport> i
|
||||
*/
|
||||
private Map<String, List<RawResultDataVO>> getRadiusMap(String devNum, String key, DevReportParam devReportParam, Set<Integer> indexSet, boolean isHarm) {
|
||||
Map<String, List<RawResultDataVO>> raiusMap = new LinkedHashMap<>();
|
||||
ResultParam param = new ResultParam();
|
||||
param.setScriptId(devReportParam.getScriptId());
|
||||
param.setDevId(devReportParam.getDevId());
|
||||
param.setDevNum(devNum);
|
||||
param.setCode(devReportParam.getPlanCode());
|
||||
String[] split = key.split("_");
|
||||
param.setScriptType(split[1]);
|
||||
for (Integer index : indexSet) {
|
||||
param.setIndex(index);
|
||||
ResultVO resultVO = resultService.resultDataForReport(param);
|
||||
Map<String, RawResultDataVO> resultData = resultVO.getResultData();
|
||||
if (CollectionUtil.isNotEmpty(resultData)) {
|
||||
if (DicDataEnum.V.getCode().equals(split[0]) || DicDataEnum.I.getCode().equals(split[0])) {
|
||||
// 排除电压相角、电压偏差、电流相角
|
||||
resultData.remove("电压相角");
|
||||
resultData.remove("电压偏差");
|
||||
resultData.remove("电流相角");
|
||||
}
|
||||
resultData.values().stream().findFirst().ifPresent(obj -> {
|
||||
String radius = obj.getRadius();
|
||||
String unit = obj.getUnit();
|
||||
if (StrUtil.isNotBlank(radius)) {
|
||||
if (isHarm) {
|
||||
raiusMap.put(index + "_" + radius.split("~")[1] + unit, resultData.values().stream().collect(Collectors.toList()));
|
||||
} else {
|
||||
raiusMap.put(radius.split("~")[1] + unit, resultData.values().stream().collect(Collectors.toList()));
|
||||
}
|
||||
}
|
||||
});
|
||||
}
|
||||
}
|
||||
// ResultParam param = new ResultParam();
|
||||
// param.setScriptId(devReportParam.getScriptId());
|
||||
// param.setDevId(devReportParam.getDevId());
|
||||
// param.setDevNum(devNum);
|
||||
// param.setCode(devReportParam.getPlanCode());
|
||||
// String[] split = key.split("_");
|
||||
// param.setScriptType(split[1]);
|
||||
// for (Integer index : indexSet) {
|
||||
// param.setIndex(index);
|
||||
// ResultVO resultVO = resultService.resultDataForReport(param);
|
||||
// Map<String, List<RawResultDataVO>> resultData = resultVO.getResultData();
|
||||
// if (CollectionUtil.isNotEmpty(resultData)) {
|
||||
// if (DicDataEnum.V.getCode().equals(split[0]) || DicDataEnum.I.getCode().equals(split[0])) {
|
||||
// // 排除电压相角、电压偏差、电流相角
|
||||
// resultData.remove("电压相角");
|
||||
// resultData.remove("电压偏差");
|
||||
// resultData.remove("电流相角");
|
||||
// }
|
||||
// resultData.values().stream().findFirst().ifPresent(obj -> {
|
||||
// String radius = obj.getRadius();
|
||||
// String unit = obj.getUnit();
|
||||
// if (StrUtil.isNotBlank(radius)) {
|
||||
// if (isHarm) {
|
||||
// raiusMap.put(index + "_" + radius.split("~")[1] + unit, resultData.values().stream().collect(Collectors.toList()));
|
||||
// } else {
|
||||
// raiusMap.put(radius.split("~")[1] + unit, resultData.values().stream().collect(Collectors.toList()));
|
||||
// }
|
||||
// }
|
||||
// });
|
||||
// }
|
||||
// }
|
||||
return raiusMap;
|
||||
}
|
||||
|
||||
|
||||
@@ -18,7 +18,7 @@ public class ResultVO {
|
||||
/**
|
||||
* 结果数据
|
||||
*/
|
||||
private Map<String, RawResultDataVO> resultData;
|
||||
private Map<String, List<RawResultDataVO>> resultData;
|
||||
|
||||
|
||||
/**
|
||||
|
||||
Reference in New Issue
Block a user