diff --git a/inspect-main/inspect-main-task/src/main/java/com/inspect/analysis/utils/ResultAnalysisUtils.java b/inspect-main/inspect-main-task/src/main/java/com/inspect/analysis/utils/ResultAnalysisUtils.java index 11bb180..81db404 100644 --- a/inspect-main/inspect-main-task/src/main/java/com/inspect/analysis/utils/ResultAnalysisUtils.java +++ b/inspect-main/inspect-main-task/src/main/java/com/inspect/analysis/utils/ResultAnalysisUtils.java @@ -254,8 +254,8 @@ public class ResultAnalysisUtils { defaultDesc = "未检测到刀闸"; } } else if (algType.equals("correction")) { - log.info("parseAlg algType correction"); - if("2001".equals(resultAnalysis.getResCode())) { + log.info("parseAlg algType correction resCode: {}", resultAnalysis.getResCode()); + if("2000".equals(resultAnalysis.getResCode()) || "2001".equals(resultAnalysis.getResCode())) { ObjectMapper mapper = new ObjectMapper(); List> list; try { @@ -268,10 +268,28 @@ public class ResultAnalysisUtils { } if(list.size() == 2 && list.get(0).size() == 2 && list.get(1).size() == 2) { - resultAnalysis.setPointStatus("0"); - resultAnalysis.setResultType("0"); - resultAnalysis.setResStatus("3"); - defaultDesc = "请进行纠偏"; + final double EPSILON = 1e-8; + double value0 = list.get(0).get(0); + double value1 = list.get(0).get(1); + double value2 = list.get(1).get(0); + double value3 = list.get(1).get(1); + if (Math.abs(value0) < EPSILON && + Math.abs(value1) < EPSILON && + Math.abs(value2) < EPSILON && + Math.abs(value3) < EPSILON) { + log.info("correction no need value0: {}, value1: {}, value2: {}, value3: {}", value0, value1, value2, value3); + resultAnalysis.setPointStatus("1"); + resultAnalysis.setResultType("1"); + resultAnalysis.setResStatus("2"); + defaultDesc = messageUtils.get("正常"); + resultAnalysis.setResDesc(defaultDesc); + } else { + log.info("correction need value0: {}, value1: {}, value2: {}, value3: {}", value0, value1, value2, value3); + resultAnalysis.setPointStatus("0"); + resultAnalysis.setResultType("0"); + resultAnalysis.setResStatus("3"); + defaultDesc = "请进行纠偏"; + } } else { log.info("parseAlg algType correction value abnormal"); resultAnalysis.setPointStatus("0"); @@ -280,10 +298,10 @@ public class ResultAnalysisUtils { defaultDesc = "纠偏结果异常"; } } else { - resultAnalysis.setPointStatus("1"); - resultAnalysis.setResultType("1"); - resultAnalysis.setResStatus("2"); - defaultDesc = messageUtils.get("正常"); + resultAnalysis.setPointStatus("0"); + resultAnalysis.setResultType("0"); + resultAnalysis.setResStatus("0"); + defaultDesc = messageUtils.get("未知异常"); resultAnalysis.setResDesc(defaultDesc); } } else {