|
|
|
@ -1,5 +1,7 @@ |
|
|
|
package com.inspect.analysis.utils; |
|
|
|
|
|
|
|
import com.fasterxml.jackson.core.type.TypeReference; |
|
|
|
import com.fasterxml.jackson.databind.ObjectMapper; |
|
|
|
import com.inspect.analysis.constant.AnalyseConstants; |
|
|
|
import com.inspect.analysis.domain.AlgValue; |
|
|
|
import com.inspect.analysis.domain.ResultAnalysis; |
|
|
|
@ -11,7 +13,9 @@ import org.slf4j.LoggerFactory; |
|
|
|
import org.springframework.beans.factory.annotation.Autowired; |
|
|
|
import org.springframework.stereotype.Component; |
|
|
|
|
|
|
|
import java.util.ArrayList; |
|
|
|
import java.util.Date; |
|
|
|
import java.util.List; |
|
|
|
|
|
|
|
@Slf4j |
|
|
|
@Component |
|
|
|
@ -112,7 +116,7 @@ public class ResultAnalysisUtils { |
|
|
|
resultAnalysis.setResultType("1"); |
|
|
|
} else if (algType.equals("meter") || algType.equals("gis_meter")) { |
|
|
|
log.info("------------------parseAlg : meter|gis_meter value: {}", value); |
|
|
|
if("open".equalsIgnoreCase(value) |
|
|
|
if ("open".equalsIgnoreCase(value) |
|
|
|
|| "closed".equalsIgnoreCase(value) || "Off".equalsIgnoreCase(value) || "On".equalsIgnoreCase(value)) { |
|
|
|
resultAnalysis.setResStatus("0"); |
|
|
|
resultAnalysis.setPointStatus("1"); |
|
|
|
@ -121,7 +125,7 @@ public class ResultAnalysisUtils { |
|
|
|
} else { |
|
|
|
if (!algValue.isAlarm(value)) { |
|
|
|
log.info("PARSE_ALG_METER_NO_ALARM value: {}, defaultDesc: {}", value, defaultDesc); |
|
|
|
if(StringUtils.isNotEmpty(defaultDesc) && defaultDesc.contains("失败")) { |
|
|
|
if (StringUtils.isNotEmpty(defaultDesc) && defaultDesc.contains("失败")) { |
|
|
|
resultAnalysis.setResStatus("0"); |
|
|
|
resultAnalysis.setPointStatus("0"); |
|
|
|
resultAnalysis.setResultType("2"); |
|
|
|
@ -135,7 +139,7 @@ public class ResultAnalysisUtils { |
|
|
|
} else { |
|
|
|
log.info("PARSE_ALG_METER_ALARM value: {}", value); |
|
|
|
String[] valueArr = value.split(StringUtils.COMMA); |
|
|
|
if(valueArr.length > 1) { |
|
|
|
if (valueArr.length > 1) { |
|
|
|
log.info("PARSE_ALG_METER_ALARM_VALUE_COMPOSITE value: {}", value); |
|
|
|
resultAnalysis.setResStatus("0"); |
|
|
|
resultAnalysis.setPointStatus("1"); |
|
|
|
@ -144,7 +148,7 @@ public class ResultAnalysisUtils { |
|
|
|
defaultDesc = messageUtils.get("正常"); |
|
|
|
} else { |
|
|
|
log.info("PARSE_ALG_METER_ALARM_VALUE_SINGLE value: {}", value); |
|
|
|
if(value.contains("分OFF") || value.contains("分") || value.contains("合")) { |
|
|
|
if (value.contains("分OFF") || value.contains("分") || value.contains("合")) { |
|
|
|
resultAnalysis.setResStatus("0"); |
|
|
|
resultAnalysis.setPointStatus("1"); |
|
|
|
// resultAnalysis.setResultType("0"); |
|
|
|
@ -249,6 +253,39 @@ public class ResultAnalysisUtils { |
|
|
|
resultAnalysis.setResStatus("0"); |
|
|
|
defaultDesc = "未检测到刀闸"; |
|
|
|
} |
|
|
|
} else if (algType.equals("correction")) { |
|
|
|
log.info("parseAlg algType correction"); |
|
|
|
if("2001".equals(resultAnalysis.getResCode())) { |
|
|
|
ObjectMapper mapper = new ObjectMapper(); |
|
|
|
List<List<Double>> list; |
|
|
|
try { |
|
|
|
list = mapper.readValue(value, new TypeReference<List<List<Double>>>() { |
|
|
|
}); |
|
|
|
log.info("parseAlg algType correction value: {}", list); |
|
|
|
} catch (Exception e) { |
|
|
|
log.info("parseAlg algType correction value exception"); |
|
|
|
list = new ArrayList<>(); |
|
|
|
} |
|
|
|
|
|
|
|
if(list.size() == 2 && list.get(0).size() == 2 && list.get(1).size() == 2) { |
|
|
|
resultAnalysis.setPointStatus("0"); |
|
|
|
resultAnalysis.setResultType("0"); |
|
|
|
resultAnalysis.setResStatus("3"); |
|
|
|
defaultDesc = "请进行纠偏"; |
|
|
|
} else { |
|
|
|
log.info("parseAlg algType correction value abnormal"); |
|
|
|
resultAnalysis.setPointStatus("0"); |
|
|
|
resultAnalysis.setResultType("0"); |
|
|
|
resultAnalysis.setResStatus("0"); |
|
|
|
defaultDesc = "纠偏结果异常"; |
|
|
|
} |
|
|
|
} else { |
|
|
|
resultAnalysis.setPointStatus("1"); |
|
|
|
resultAnalysis.setResultType("1"); |
|
|
|
resultAnalysis.setResStatus("2"); |
|
|
|
defaultDesc = messageUtils.get("正常"); |
|
|
|
resultAnalysis.setResDesc(defaultDesc); |
|
|
|
} |
|
|
|
} else { |
|
|
|
log.info("parseAlg algType: {}", algType); |
|
|
|
if (value.equals("0")) { |
|
|
|
|