diff --git a/casic-metering-model/src/main/java/com/casic/missiles/strategy/impl/MultiCalibrationType.java b/casic-metering-model/src/main/java/com/casic/missiles/strategy/impl/MultiCalibrationType.java index 40bf06c..2fe6036 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/strategy/impl/MultiCalibrationType.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/strategy/impl/MultiCalibrationType.java @@ -5,6 +5,7 @@ import org.apache.commons.lang3.StringUtils; import java.math.BigDecimal; +import java.math.RoundingMode; /** * @author cz @@ -70,7 +71,7 @@ int digit = measureDataCalibrator.getResolutionDigit(); BigDecimal absoluteError = new BigDecimal(measureDataCalibrator.getAbsoluteError()).setScale(digit); String maximumError = measureDataCalibrator.getMaximumError().replaceAll("±", ""); - BigDecimal positiveNum = new BigDecimal(maximumError).setScale(digit); + BigDecimal positiveNum = new BigDecimal(maximumError).setScale(digit, RoundingMode.HALF_UP); BigDecimal negativeNum = positiveNum.negate(); int compareMax = absoluteError.compareTo(positiveNum); int compareMin = absoluteError.compareTo(negativeNum); diff --git a/casic-metering-model/src/main/java/com/casic/missiles/strategy/impl/MultiCalibrationType.java b/casic-metering-model/src/main/java/com/casic/missiles/strategy/impl/MultiCalibrationType.java index 40bf06c..2fe6036 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/strategy/impl/MultiCalibrationType.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/strategy/impl/MultiCalibrationType.java @@ -5,6 +5,7 @@ import org.apache.commons.lang3.StringUtils; import java.math.BigDecimal; +import java.math.RoundingMode; /** * @author cz @@ -70,7 +71,7 @@ int digit = measureDataCalibrator.getResolutionDigit(); BigDecimal absoluteError = new BigDecimal(measureDataCalibrator.getAbsoluteError()).setScale(digit); String maximumError = measureDataCalibrator.getMaximumError().replaceAll("±", ""); - BigDecimal positiveNum = new BigDecimal(maximumError).setScale(digit); + BigDecimal positiveNum = new BigDecimal(maximumError).setScale(digit, RoundingMode.HALF_UP); BigDecimal negativeNum = positiveNum.negate(); int compareMax = absoluteError.compareTo(positiveNum); int compareMin = absoluteError.compareTo(negativeNum); diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/eqpt/standard/impl/MultiCalibrationHandler.java b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/eqpt/standard/impl/MultiCalibrationHandler.java index 241b290..e211fa2 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/eqpt/standard/impl/MultiCalibrationHandler.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/eqpt/standard/impl/MultiCalibrationHandler.java @@ -176,8 +176,16 @@ } String itemCategoryName = measureItemInfo.getItemCategoryName(); if (!itemCategoryName.equals("交流电压表") && !itemCategoryName.equals("交流电流表") && !itemCategoryName.equals("直流电压表") && !itemCategoryName.equals("直流电流表") && !itemCategoryName.equals("75mV电流表")) { - if (StringUtils.isNotEmpty(safety.getUnit()) && !safety.getUnit().contains("/")) { - //单位 + if (StringUtils.isNotBlank(safety.getCapacity())) { + if ("U".equals(safety.getCapacity())) { + safety.setCapacity("\uD835\uDC48"); + } + if ("I".equals(safety.getCapacity())) { + safety.setCapacity("\uD835\uDC3C"); + } + if ("R".equals(safety.getCapacity())) { + safety.setCapacity("\uD835\uDC45"); + } safety.setUnit(safety.getCapacity() + "/" + safety.getUnit()); } } @@ -258,8 +266,16 @@ //最大允许误差 safety.setMaximumError("±" + safety.getMaximumError()); } - if (StringUtils.isNotEmpty(safety.getUnit()) && !safety.getUnit().contains("/")) { - // 量/单位 + if (StringUtils.isNotBlank(safety.getCapacity())) { + if ("U".equals(safety.getCapacity())) { + safety.setCapacity("\uD835\uDC48"); + } + if ("I".equals(safety.getCapacity())) { + safety.setCapacity("\uD835\uDC3C"); + } + if ("R".equals(safety.getCapacity())) { + safety.setCapacity("\uD835\uDC45"); + } safety.setUnit(safety.getCapacity() + "/" + safety.getUnit()); } safety.applyStrategyBasedOnDataType(measureItemInfo.getItemCategoryName());