diff --git a/detection/src/main/java/com/njcn/gather/detection/service/impl/DetectionServiceImpl.java b/detection/src/main/java/com/njcn/gather/detection/service/impl/DetectionServiceImpl.java index ffe45eed..64807059 100644 --- a/detection/src/main/java/com/njcn/gather/detection/service/impl/DetectionServiceImpl.java +++ b/detection/src/main/java/com/njcn/gather/detection/service/impl/DetectionServiceImpl.java @@ -211,6 +211,7 @@ public class DetectionServiceImpl { result.setMonitorId(devID + "_" + split[1]); result.setScriptId(sourceIssue.getScriptId()); result.setSort(sourceIssue.getIndex()); + result.setDataType("avg"); List pqErrSysDtls = new ArrayList<>(); if (CollUtil.isNotEmpty(errDtlsCheckData)) { List dtlsCheckData = errDtlsCheckData.stream().filter(x -> x.getValueTypeCode().equals(s.split("\\$")[1])).collect(Collectors.toList()); @@ -220,35 +221,38 @@ public class DetectionServiceImpl { pqErrSysDtls = dtlsCheckData.get(0).getErrSysDtls(); } } + if (map.containsKey(TYPE_T)) { + List checkDataT = dtlsCheckData.stream().filter(x -> TYPE_T.equals(x.getPhase())).collect(Collectors.toList()); + if(CollUtil.isNotEmpty(checkDataT)){ + DetectionData t = rangeComparisonList(map.get(TYPE_T), pqErrSysDtls, fData, checkDataT.get(0).getValue(), dataRule); + result.setTValue(JSON.toJSONString(t)); + result.setResultFlag(t.getIsData()); + } + } else { + List resultFlag = new ArrayList<>(); + //取出源所对应的相别信息 + List checkDataA = dtlsCheckData.stream().filter(x -> TYPE_A.equals(x.getPhase())).collect(Collectors.toList()); + if(CollUtil.isNotEmpty(checkDataA)){ + DetectionData a = rangeComparisonList(map.get(TYPE_A), pqErrSysDtls, fData, checkDataA.get(0).getValue(), dataRule); + resultFlag.add(a); + result.setAValue(JSON.toJSONString(a)); + } + List checkDataB = dtlsCheckData.stream().filter(x -> TYPE_B.equals(x.getPhase())).collect(Collectors.toList()); + if(CollUtil.isNotEmpty(checkDataB)){ + DetectionData b = rangeComparisonList(map.get(TYPE_B), pqErrSysDtls, fData, checkDataB.get(0).getValue(), dataRule); + resultFlag.add(b); + result.setBValue(JSON.toJSONString(b)); + } + List checkDataC = dtlsCheckData.stream().filter(x -> TYPE_C.equals(x.getPhase())).collect(Collectors.toList()); + if(CollUtil.isNotEmpty(checkDataC)){ + DetectionData c = rangeComparisonList(map.get(TYPE_C), pqErrSysDtls, fData, checkDataC.get(0).getValue(), dataRule); + resultFlag.add(c); + result.setCValue(JSON.toJSONString(c)); + } + result.setResultFlag(setResultFlag(resultFlag)); + } + info.add(result); } - result.setDataType("avg"); - if (map.containsKey(TYPE_T)) { - DetectionData t = rangeComparisonList(map.get(TYPE_T), pqErrSysDtls, fData, fData, dataRule); - result.setTValue(JSON.toJSONString(t)); - result.setResultFlag(t.getIsData()); - } else { - //取出源所对应的相别信息 - List channelTypeAList = sourceIssue.getChannelList().stream() - .filter(x -> (type + "a").equals(x.getChannelType())) - .collect(Collectors.toList()); - DetectionData a = rangeComparisonList(map.get(TYPE_A), pqErrSysDtls, fData, channelTypeAList.get(0).getFAmp(), dataRule); - result.setAValue(JSON.toJSONString(a)); - - List channelTypeBList = sourceIssue.getChannelList().stream() - .filter(x -> (type + "b").equals(x.getChannelType())) - .collect(Collectors.toList()); - DetectionData b = rangeComparisonList(map.get(TYPE_B), pqErrSysDtls, fData, channelTypeBList.get(0).getFAmp(), dataRule); - result.setBValue(JSON.toJSONString(b)); - - List channelTypeCList = sourceIssue.getChannelList().stream() - .filter(x -> (type + "c").equals(x.getChannelType())) - .collect(Collectors.toList()); - DetectionData c = rangeComparisonList(map.get(TYPE_C), pqErrSysDtls, fData, channelTypeCList.get(0).getFAmp(), dataRule); - result.setCValue(JSON.toJSONString(c)); - - result.setResultFlag(setResultFlag(Arrays.asList(a, b, c))); - } - info.add(result); } if (CollUtil.isNotEmpty(info)) { detectionDataDealService.acceptAdNonResult(info, code); diff --git a/detection/src/main/java/com/njcn/gather/err/pojo/vo/ErrDtlsCheckDataVO.java b/detection/src/main/java/com/njcn/gather/err/pojo/vo/ErrDtlsCheckDataVO.java index d46967f8..1e67940a 100644 --- a/detection/src/main/java/com/njcn/gather/err/pojo/vo/ErrDtlsCheckDataVO.java +++ b/detection/src/main/java/com/njcn/gather/err/pojo/vo/ErrDtlsCheckDataVO.java @@ -18,11 +18,13 @@ public class ErrDtlsCheckDataVO implements Serializable { */ private String checkDataId; - + /** + * 检测指标类型,与数据字典关联(例如电压有效值、谐波电压含有率等) + */ private String valueType; /** - * + *检测指标类型code */ private String valueTypeCode; @@ -32,7 +34,12 @@ public class ErrDtlsCheckDataVO implements Serializable { private Double value; /** - * + * 相别,字典表 + */ + private String phase; + + /** + * 误差体系 */ private List errSysDtls; diff --git a/detection/src/main/java/com/njcn/gather/err/service/impl/PqErrSysDtlsServiceImpl.java b/detection/src/main/java/com/njcn/gather/err/service/impl/PqErrSysDtlsServiceImpl.java index 6d6fa515..cd465007 100644 --- a/detection/src/main/java/com/njcn/gather/err/service/impl/PqErrSysDtlsServiceImpl.java +++ b/detection/src/main/java/com/njcn/gather/err/service/impl/PqErrSysDtlsServiceImpl.java @@ -116,6 +116,7 @@ public class PqErrSysDtlsServiceImpl extends ServiceImpl