Browse Source

fix: 所有红外算法温度值都只保留一位小数

master
yinhuaiwei 3 weeks ago
parent
commit
cc4a9f358b
1 changed files with 26 additions and 21 deletions
  1. +26
    -21
      inspect-main/inspect-main-task/src/main/java/com/inspect/analysis/utils/ResultAnalysisUtils.java

+ 26
- 21
inspect-main/inspect-main-task/src/main/java/com/inspect/analysis/utils/ResultAnalysisUtils.java View File

@ -496,30 +496,35 @@ public class ResultAnalysisUtils {
* @return
*/
public String addUnit2Value(String resValue, String algType, String unit) {
if (StringUtils.isNotEmpty(resValue) && StringUtils.isNotEmpty(unit) && AlgConstants.READABLE_ALG_LIST.contains(algType)) {
log.info("addUnit2Value resValue: {}, algType: {}, unit: {}", resValue, algType, unit);
String[] valueArr = resValue.split(",");
String values = IntStream.range(0, valueArr.length)
.mapToObj(i -> {
String val = valueArr[i];
if (!NumberUtils.isCreatable(val)) {
return val;
}
if (StringUtils.isEmpty(resValue) || !AlgConstants.READABLE_ALG_LIST.contains(algType)) {
return resValue;
}
log.info("addUnit2Value resValue: {}, algType: {}, unit: {}", resValue, algType, unit);
String[] valueArr = resValue.split(",");
final boolean shouldAddUnit = StringUtils.isNotEmpty(unit);
String result = IntStream.range(0, valueArr.length)
.mapToObj(i -> {
String val = valueArr[i].trim();
if (!NumberUtils.isCreatable(val)) {
return val;
}
if (AlgConstants.ALG_INFRARED_LIST.contains(algType)) {
return BigDecimalUtil.toOneDecimal(val, 1) + unit;
}
if (AlgConstants.ALG_INFRARED_LIST.contains(algType)) {
String formatted = BigDecimalUtil.toOneDecimal(val, 1);
return shouldAddUnit ? formatted + unit : formatted;
}
// 表计算法避雷器只有第一个值带单位
if (AlgConstants.METER.equals(algType)) {
return i == 0 ? val + unit : val;
// 表计算法避雷器只有第一个值带单位
if (AlgConstants.METER.equals(algType)) {
if (i == 0 && shouldAddUnit) {
return val + unit;
}
return val;
}
return val + unit;
})
.collect(Collectors.joining(","));
return values;
}
return resValue;
return shouldAddUnit ? val + unit : val;
})
.collect(Collectors.joining(","));
return result;
}
}

Loading…
Cancel
Save