From ba18a1310dcd8c311dfed8203858d86919838513 Mon Sep 17 00:00:00 2001 From: wr <1754607820@qq.com> Date: Tue, 21 Jan 2025 15:18:03 +0800 Subject: [PATCH] =?UTF-8?q?=E8=A7=A3=E5=86=B3=E7=9B=B8=E8=A7=92=E5=8E=9F?= =?UTF-8?q?=E5=A7=8B=E5=80=BC=E6=98=AF=E5=B9=85=E5=80=BC=E7=9A=84=E9=97=AE?= =?UTF-8?q?=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../service/impl/DetectionServiceImpl.java | 60 ++++++++++--------- .../err/pojo/vo/ErrDtlsCheckDataVO.java | 13 +++- .../service/impl/PqErrSysDtlsServiceImpl.java | 1 + 3 files changed, 43 insertions(+), 31 deletions(-) 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