|
|
|
@ -76,15 +76,15 @@ public class ResultAnalysis extends BaseEntity { |
|
|
|
} |
|
|
|
|
|
|
|
public boolean checkCode(String code, String desc) { |
|
|
|
if(AnalyseConstants.ANALYSE_OK.equals(code)) { |
|
|
|
if (AnalyseConstants.ANALYSE_OK.equals(code)) { |
|
|
|
return true; |
|
|
|
} |
|
|
|
|
|
|
|
if(AnalyseConstants.ANALYSE_FAIL_NO_FILE.equals(code) |
|
|
|
if (AnalyseConstants.ANALYSE_FAIL_NO_FILE.equals(code) |
|
|
|
|| AnalyseConstants.ANALYSE_FAIL_FILE_EXCEPT.equals(code) |
|
|
|
|| AnalyseConstants.ANALYSE_FAIL_FILE_INCOMPATIBLE.equals(code)) { |
|
|
|
setDescription(desc); |
|
|
|
} else if(AnalyseConstants.ANALYSE_FAIL_ALG_EXCEPT.equals(code)) { |
|
|
|
} else if (AnalyseConstants.ANALYSE_FAIL_ALG_EXCEPT.equals(code)) { |
|
|
|
setDescription("算法内部异常"); |
|
|
|
} else { |
|
|
|
setDescription("未知错误"); |
|
|
|
@ -102,7 +102,7 @@ public class ResultAnalysis extends BaseEntity { |
|
|
|
ResultAnalysis resultAnalysis = new ResultAnalysis(); |
|
|
|
resultAnalysis.setBusinessId(businessId); |
|
|
|
resultAnalysis.setResultContent("{\"requestId\": \"123\", \"resultList\": [{\"objectId\": \"" + deviceId + "\", \"results\": [{\"type\": \"infrared\", \"value\": \"0\", \"code\": \"2000\", \"resImageUrl\": \"\", \"pos\": [], \"conf\": 0.8, \"desc\": \"\"}]}]}"); |
|
|
|
if(StringUtils.isNotEmpty(deviceId)) { |
|
|
|
if (StringUtils.isNotEmpty(deviceId)) { |
|
|
|
resultAnalysis.setObjectId(deviceId); |
|
|
|
} |
|
|
|
|
|
|
|
@ -114,193 +114,303 @@ public class ResultAnalysis extends BaseEntity { |
|
|
|
return resultAnalysis; |
|
|
|
} |
|
|
|
|
|
|
|
// public void parseAlg(String algType, AlgValue algValue, String value, String defaultDesc) { |
|
|
|
// if(value == null) { |
|
|
|
// value = ""; |
|
|
|
// } |
|
|
|
// |
|
|
|
// value = algValue.formatValue(value); |
|
|
|
// if("1".equals(this.filter)) { |
|
|
|
// algType = ""; |
|
|
|
// } |
|
|
|
// |
|
|
|
// byte var6 = -1; |
|
|
|
// switch(value.hashCode()) { |
|
|
|
// case 0: |
|
|
|
// if(value.isEmpty()) { |
|
|
|
// var6 = 0; |
|
|
|
// } |
|
|
|
// break; |
|
|
|
// case 1444: |
|
|
|
// if(value.equals("-1")) { |
|
|
|
// var6 = 1; |
|
|
|
// } |
|
|
|
// } |
|
|
|
// |
|
|
|
// switch(var6) { |
|
|
|
// case 0: |
|
|
|
// case 1: |
|
|
|
// this.setPointStatus("0"); |
|
|
|
// this.setResultType("2"); |
|
|
|
// this.setResStatus("0"); |
|
|
|
// if("meter".equals(algType)) { |
|
|
|
// defaultDesc = "与样本有差异"; |
|
|
|
// } else { |
|
|
|
// defaultDesc = "算法内部异常"; |
|
|
|
// } |
|
|
|
// |
|
|
|
// this.setDescription(defaultDesc); |
|
|
|
// this.setCreateTime(new Date()); |
|
|
|
// return; |
|
|
|
// default: |
|
|
|
// var6 = -1; |
|
|
|
// switch(algType.hashCode()) { |
|
|
|
// case -951532658: |
|
|
|
// if(algType.equals("qrcode")) { |
|
|
|
// var6 = 2; |
|
|
|
// } |
|
|
|
// break; |
|
|
|
// case -889473228: |
|
|
|
// if(algType.equals("switch")) { |
|
|
|
// var6 = 1; |
|
|
|
// } |
|
|
|
// break; |
|
|
|
// case 102970646: |
|
|
|
// if(algType.equals("light")) { |
|
|
|
// var6 = 3; |
|
|
|
// } |
|
|
|
// break; |
|
|
|
// case 103787401: |
|
|
|
// if(algType.equals("meter")) { |
|
|
|
// var6 = 4; |
|
|
|
// } |
|
|
|
// break; |
|
|
|
// case 109627663: |
|
|
|
// if(algType.equals("sound")) { |
|
|
|
// var6 = 6; |
|
|
|
// } |
|
|
|
// break; |
|
|
|
// case 181105857: |
|
|
|
// if(algType.equals("infrared")) { |
|
|
|
// var6 = 5; |
|
|
|
// } |
|
|
|
// break; |
|
|
|
// case 575780445: |
|
|
|
// if(algType.equals("isolator")) { |
|
|
|
// var6 = 0; |
|
|
|
// } |
|
|
|
// } |
|
|
|
// |
|
|
|
// byte var8; |
|
|
|
// label83: |
|
|
|
// switch(var6) { |
|
|
|
// case 0: |
|
|
|
// var8 = -1; |
|
|
|
// switch(value.hashCode()) { |
|
|
|
// case 51: |
|
|
|
// if(value.equals("3")) { |
|
|
|
// var8 = 0; |
|
|
|
// } |
|
|
|
// break; |
|
|
|
// case 52: |
|
|
|
// if(value.equals("4")) { |
|
|
|
// var8 = 1; |
|
|
|
// } |
|
|
|
// } |
|
|
|
// |
|
|
|
// switch(var8) { |
|
|
|
// case 0: |
|
|
|
// case 1: |
|
|
|
// this.setPointStatus("1"); |
|
|
|
// this.setResultType("1"); |
|
|
|
// this.setResStatus("0"); |
|
|
|
// break label83; |
|
|
|
// default: |
|
|
|
// this.setPointStatus("0"); |
|
|
|
// this.setResultType("2"); |
|
|
|
// this.setResStatus("0"); |
|
|
|
// break label83; |
|
|
|
// } |
|
|
|
// case 1: |
|
|
|
// case 2: |
|
|
|
// case 3: |
|
|
|
// this.setResStatus("1"); |
|
|
|
// this.setPointStatus("1"); |
|
|
|
// this.setResultType("1"); |
|
|
|
// break; |
|
|
|
// case 4: |
|
|
|
// if(!algValue.isAlarm(value)) { |
|
|
|
// this.setResStatus("0"); |
|
|
|
// this.setPointStatus("1"); |
|
|
|
// this.setResultType("1"); |
|
|
|
// defaultDesc = "正常"; |
|
|
|
// } else { |
|
|
|
// this.setResStatus("0"); |
|
|
|
// this.setPointStatus("0"); |
|
|
|
// this.setResultType("0"); |
|
|
|
// defaultDesc = "表计超限"; |
|
|
|
// } |
|
|
|
// break; |
|
|
|
// case 5: |
|
|
|
// if(algValue.isAlarm(value)) { |
|
|
|
// this.setResStatus("1"); |
|
|
|
// this.setPointStatus("1"); |
|
|
|
// this.setResultType("1"); |
|
|
|
// defaultDesc = "正常"; |
|
|
|
// } else { |
|
|
|
// this.setResStatus("0"); |
|
|
|
// this.setPointStatus("2"); |
|
|
|
// this.setResultType("0"); |
|
|
|
// defaultDesc = "温度告警"; |
|
|
|
// } |
|
|
|
// break; |
|
|
|
// case 6: |
|
|
|
// if(value.equals("1")) { |
|
|
|
// this.setResStatus("1"); |
|
|
|
// this.setPointStatus("1"); |
|
|
|
// this.setResultType("1"); |
|
|
|
// defaultDesc = "正常"; |
|
|
|
// } else { |
|
|
|
// this.setResStatus("0"); |
|
|
|
// this.setPointStatus("0"); |
|
|
|
// this.setResultType("0"); |
|
|
|
// defaultDesc = "异常"; |
|
|
|
// } |
|
|
|
// break; |
|
|
|
// default: |
|
|
|
// var8 = -1; |
|
|
|
// switch(value.hashCode()) { |
|
|
|
// case 48: |
|
|
|
// if(value.equals("0")) { |
|
|
|
// var8 = 0; |
|
|
|
// } |
|
|
|
// break; |
|
|
|
// case 49: |
|
|
|
// if(value.equals("1")) { |
|
|
|
// var8 = 1; |
|
|
|
// } |
|
|
|
// } |
|
|
|
// |
|
|
|
// switch(var8) { |
|
|
|
// case 0: |
|
|
|
// this.setPointStatus("1"); |
|
|
|
// this.setResultType("1"); |
|
|
|
// this.setResStatus("2"); |
|
|
|
// defaultDesc = "正常"; |
|
|
|
// this.setResDesc(defaultDesc); |
|
|
|
// this.setSuggestion("系统审核"); |
|
|
|
// break; |
|
|
|
// case 1: |
|
|
|
// this.setPointStatus("0"); |
|
|
|
// this.setResultType("0"); |
|
|
|
// this.setResStatus("0"); |
|
|
|
// } |
|
|
|
// } |
|
|
|
// |
|
|
|
// this.setDescription(defaultDesc); |
|
|
|
// this.setCreateTime(new Date()); |
|
|
|
// } |
|
|
|
// } |
|
|
|
|
|
|
|
public void parseAlg(String algType, AlgValue algValue, String value, String defaultDesc) { |
|
|
|
if(value == null) { |
|
|
|
log.warn("parseAlg algType: {}, algValue: {}, value: {}, defaultDesc: {}", algType, algValue, value, defaultDesc); |
|
|
|
if (value == null) { |
|
|
|
value = ""; |
|
|
|
} |
|
|
|
|
|
|
|
value = algValue.formatValue(value); |
|
|
|
if("1".equals(this.filter)) { |
|
|
|
if ("1".equals(this.filter)) { |
|
|
|
algType = ""; |
|
|
|
} |
|
|
|
|
|
|
|
byte var6 = -1; |
|
|
|
switch(value.hashCode()) { |
|
|
|
case 0: |
|
|
|
if(value.isEmpty()) { |
|
|
|
var6 = 0; |
|
|
|
} |
|
|
|
break; |
|
|
|
case 1444: |
|
|
|
if(value.equals("-1")) { |
|
|
|
var6 = 1; |
|
|
|
} |
|
|
|
if(StringUtils.isNull(algType)) { |
|
|
|
log.warn("parseAlg algType is null!"); |
|
|
|
return; |
|
|
|
} |
|
|
|
|
|
|
|
switch(var6) { |
|
|
|
case 0: |
|
|
|
case 1: |
|
|
|
if (value.isEmpty() || value.equals("-1")) { |
|
|
|
this.setPointStatus("0"); |
|
|
|
this.setResultType("2"); |
|
|
|
this.setResStatus("0"); |
|
|
|
if ("meter".equals(algType)) { |
|
|
|
defaultDesc = "与样本有差异"; |
|
|
|
} else { |
|
|
|
defaultDesc = "算法内部异常"; |
|
|
|
} |
|
|
|
|
|
|
|
this.setDescription(defaultDesc); |
|
|
|
this.setCreateTime(new Date()); |
|
|
|
return; |
|
|
|
} |
|
|
|
|
|
|
|
if (algType.equals("qrcode")) { |
|
|
|
this.setResStatus("1"); |
|
|
|
this.setPointStatus("1"); |
|
|
|
this.setResultType("1"); |
|
|
|
} else if (algType.equals("switch")) { |
|
|
|
this.setResStatus("1"); |
|
|
|
this.setPointStatus("1"); |
|
|
|
this.setResultType("1"); |
|
|
|
} else if (algType.equals("light")) { |
|
|
|
this.setResStatus("1"); |
|
|
|
this.setPointStatus("1"); |
|
|
|
this.setResultType("1"); |
|
|
|
} else if (algType.equals("meter")) { |
|
|
|
if (!algValue.isAlarm(value)) { |
|
|
|
this.setResStatus("0"); |
|
|
|
this.setPointStatus("1"); |
|
|
|
this.setResultType("1"); |
|
|
|
defaultDesc = "正常"; |
|
|
|
} else { |
|
|
|
this.setResStatus("0"); |
|
|
|
this.setPointStatus("0"); |
|
|
|
this.setResultType("0"); |
|
|
|
defaultDesc = "表计超限"; |
|
|
|
} |
|
|
|
} else if (algType.equals("sound")) { |
|
|
|
if (value.equals("1")) { |
|
|
|
this.setResStatus("1"); |
|
|
|
this.setPointStatus("1"); |
|
|
|
this.setResultType("1"); |
|
|
|
defaultDesc = "正常"; |
|
|
|
} else { |
|
|
|
this.setResStatus("0"); |
|
|
|
this.setPointStatus("0"); |
|
|
|
this.setResultType("0"); |
|
|
|
defaultDesc = "异常"; |
|
|
|
} |
|
|
|
} else if (algType.equals("infrared")) { |
|
|
|
if (algValue.isAlarm(value)) { |
|
|
|
this.setResStatus("1"); |
|
|
|
this.setPointStatus("1"); |
|
|
|
this.setResultType("1"); |
|
|
|
defaultDesc = "正常"; |
|
|
|
} else { |
|
|
|
this.setResStatus("0"); |
|
|
|
this.setPointStatus("2"); |
|
|
|
this.setResultType("0"); |
|
|
|
defaultDesc = "温度告警"; |
|
|
|
} |
|
|
|
} else if (algType.equals("isolator")) { |
|
|
|
if (value.equals("3")) { |
|
|
|
this.setPointStatus("1"); |
|
|
|
this.setResultType("1"); |
|
|
|
this.setResStatus("0"); |
|
|
|
} else if (value.equals("4")) { |
|
|
|
this.setPointStatus("1"); |
|
|
|
this.setResultType("1"); |
|
|
|
this.setResStatus("0"); |
|
|
|
} else { |
|
|
|
this.setPointStatus("0"); |
|
|
|
this.setResultType("2"); |
|
|
|
this.setResStatus("0"); |
|
|
|
if("meter".equals(algType)) { |
|
|
|
defaultDesc = "与样本有差异"; |
|
|
|
} else { |
|
|
|
defaultDesc = "算法内部异常"; |
|
|
|
} |
|
|
|
|
|
|
|
this.setDescription(defaultDesc); |
|
|
|
this.setCreateTime(new Date()); |
|
|
|
return; |
|
|
|
default: |
|
|
|
var6 = -1; |
|
|
|
switch(algType.hashCode()) { |
|
|
|
case -951532658: |
|
|
|
if(algType.equals("qrcode")) { |
|
|
|
var6 = 2; |
|
|
|
} |
|
|
|
break; |
|
|
|
case -889473228: |
|
|
|
if(algType.equals("switch")) { |
|
|
|
var6 = 1; |
|
|
|
} |
|
|
|
break; |
|
|
|
case 102970646: |
|
|
|
if(algType.equals("light")) { |
|
|
|
var6 = 3; |
|
|
|
} |
|
|
|
break; |
|
|
|
case 103787401: |
|
|
|
if(algType.equals("meter")) { |
|
|
|
var6 = 4; |
|
|
|
} |
|
|
|
break; |
|
|
|
case 109627663: |
|
|
|
if(algType.equals("sound")) { |
|
|
|
var6 = 6; |
|
|
|
} |
|
|
|
break; |
|
|
|
case 181105857: |
|
|
|
if(algType.equals("infrared")) { |
|
|
|
var6 = 5; |
|
|
|
} |
|
|
|
break; |
|
|
|
case 575780445: |
|
|
|
if(algType.equals("isolator")) { |
|
|
|
var6 = 0; |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
byte var8; |
|
|
|
label83: |
|
|
|
switch(var6) { |
|
|
|
case 0: |
|
|
|
var8 = -1; |
|
|
|
switch(value.hashCode()) { |
|
|
|
case 51: |
|
|
|
if(value.equals("3")) { |
|
|
|
var8 = 0; |
|
|
|
} |
|
|
|
break; |
|
|
|
case 52: |
|
|
|
if(value.equals("4")) { |
|
|
|
var8 = 1; |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
switch(var8) { |
|
|
|
case 0: |
|
|
|
case 1: |
|
|
|
this.setPointStatus("1"); |
|
|
|
this.setResultType("1"); |
|
|
|
this.setResStatus("0"); |
|
|
|
break label83; |
|
|
|
default: |
|
|
|
this.setPointStatus("0"); |
|
|
|
this.setResultType("2"); |
|
|
|
this.setResStatus("0"); |
|
|
|
break label83; |
|
|
|
} |
|
|
|
case 1: |
|
|
|
case 2: |
|
|
|
case 3: |
|
|
|
this.setResStatus("1"); |
|
|
|
this.setPointStatus("1"); |
|
|
|
this.setResultType("1"); |
|
|
|
break; |
|
|
|
case 4: |
|
|
|
if(!algValue.isAlarm(value)) { |
|
|
|
this.setResStatus("0"); |
|
|
|
this.setPointStatus("1"); |
|
|
|
this.setResultType("1"); |
|
|
|
defaultDesc = "正常"; |
|
|
|
} else { |
|
|
|
this.setResStatus("0"); |
|
|
|
this.setPointStatus("0"); |
|
|
|
this.setResultType("0"); |
|
|
|
defaultDesc = "表计超限"; |
|
|
|
} |
|
|
|
break; |
|
|
|
case 5: |
|
|
|
if(algValue.isAlarm(value)) { |
|
|
|
this.setResStatus("1"); |
|
|
|
this.setPointStatus("1"); |
|
|
|
this.setResultType("1"); |
|
|
|
defaultDesc = "正常"; |
|
|
|
} else { |
|
|
|
this.setResStatus("0"); |
|
|
|
this.setPointStatus("2"); |
|
|
|
this.setResultType("0"); |
|
|
|
defaultDesc = "温度告警"; |
|
|
|
} |
|
|
|
break; |
|
|
|
case 6: |
|
|
|
if(value.equals("1")) { |
|
|
|
this.setResStatus("1"); |
|
|
|
this.setPointStatus("1"); |
|
|
|
this.setResultType("1"); |
|
|
|
defaultDesc = "正常"; |
|
|
|
} else { |
|
|
|
this.setResStatus("0"); |
|
|
|
this.setPointStatus("0"); |
|
|
|
this.setResultType("0"); |
|
|
|
defaultDesc = "异常"; |
|
|
|
} |
|
|
|
break; |
|
|
|
default: |
|
|
|
var8 = -1; |
|
|
|
switch(value.hashCode()) { |
|
|
|
case 48: |
|
|
|
if(value.equals("0")) { |
|
|
|
var8 = 0; |
|
|
|
} |
|
|
|
break; |
|
|
|
case 49: |
|
|
|
if(value.equals("1")) { |
|
|
|
var8 = 1; |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
switch(var8) { |
|
|
|
case 0: |
|
|
|
this.setPointStatus("1"); |
|
|
|
this.setResultType("1"); |
|
|
|
this.setResStatus("2"); |
|
|
|
defaultDesc = "正常"; |
|
|
|
this.setResDesc(defaultDesc); |
|
|
|
this.setSuggestion("系统审核"); |
|
|
|
break; |
|
|
|
case 1: |
|
|
|
this.setPointStatus("0"); |
|
|
|
this.setResultType("0"); |
|
|
|
this.setResStatus("0"); |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
this.setDescription(defaultDesc); |
|
|
|
this.setCreateTime(new Date()); |
|
|
|
} |
|
|
|
} else { |
|
|
|
if (value.equals("0")) { |
|
|
|
this.setPointStatus("1"); |
|
|
|
this.setResultType("1"); |
|
|
|
this.setResStatus("2"); |
|
|
|
defaultDesc = "正常"; |
|
|
|
this.setResDesc(defaultDesc); |
|
|
|
this.setSuggestion("系统审核"); |
|
|
|
} else if (value.equals("1")) { |
|
|
|
this.setPointStatus("0"); |
|
|
|
this.setResultType("0"); |
|
|
|
this.setResStatus("0"); |
|
|
|
} |
|
|
|
} |
|
|
|
this.setDescription(defaultDesc); |
|
|
|
this.setCreateTime(new Date()); |
|
|
|
} |
|
|
|
|
|
|
|
@Override |
|
|
|
|