diff --git a/jsowell-pile/src/main/java/com/jsowell/pile/service/programlogic/AbstractProgramLogic.java b/jsowell-pile/src/main/java/com/jsowell/pile/service/programlogic/AbstractProgramLogic.java index 9a6bfccfb..356e3046b 100644 --- a/jsowell-pile/src/main/java/com/jsowell/pile/service/programlogic/AbstractProgramLogic.java +++ b/jsowell-pile/src/main/java/com/jsowell/pile/service/programlogic/AbstractProgramLogic.java @@ -303,14 +303,12 @@ public abstract class AbstractProgramLogic implements InitializingBean { orderDetail.setSharpAmount(new BigDecimal(data.getSharpAmount())); } // 计算该时段电费 = 电费单价 x 用电量 - BigDecimal sharpElectricityAmount = orderDetail.getSharpElectricityPrice() - .multiply(sharpUsedElectricity) - .setScale(2, RoundingMode.DOWN); + BigDecimal electricityPrice = orderDetail.getSharpElectricityPrice(); // 该时段电费单价 + BigDecimal sharpElectricityAmount = electricityPrice.multiply(sharpUsedElectricity).setScale(2, RoundingMode.DOWN); totalElectricityAmount = totalElectricityAmount.add(sharpElectricityAmount); // 计算该时段服务费 - BigDecimal sharpServiceAmount = orderDetail.getSharpServicePrice() - .multiply(sharpUsedElectricity) - .setScale(2, RoundingMode.DOWN); + BigDecimal servicePrice = orderDetail.getSharpServicePrice(); // 该时段服务费单价 + BigDecimal sharpServiceAmount = servicePrice.multiply(sharpUsedElectricity).setScale(2, RoundingMode.DOWN); totalServiceAmount = totalServiceAmount.add(sharpServiceAmount); } @@ -327,14 +325,12 @@ public abstract class AbstractProgramLogic implements InitializingBean { orderDetail.setPeakAmount(new BigDecimal(data.getPeakAmount())); } // 计算该时段电费 = 电费单价 x 用电量 - BigDecimal peakElectricityAmount = orderDetail.getPeakElectricityPrice() - .multiply(peakUsedElectricity) - .setScale(2, RoundingMode.DOWN); + BigDecimal electricityPrice = orderDetail.getPeakElectricityPrice(); // 该时段电费单价 + BigDecimal peakElectricityAmount = electricityPrice.multiply(peakUsedElectricity).setScale(2, RoundingMode.DOWN); totalElectricityAmount = totalElectricityAmount.add(peakElectricityAmount); // 计算该时段服务费 - BigDecimal peakServiceAmount = orderDetail.getPeakServicePrice() - .multiply(peakUsedElectricity) - .setScale(2, RoundingMode.DOWN); + BigDecimal servicePrice = orderDetail.getPeakServicePrice(); // 该时段服务费单价 + BigDecimal peakServiceAmount = servicePrice.multiply(peakUsedElectricity).setScale(2, RoundingMode.DOWN); totalServiceAmount = totalServiceAmount.add(peakServiceAmount); } @@ -351,14 +347,12 @@ public abstract class AbstractProgramLogic implements InitializingBean { orderDetail.setFlatAmount(new BigDecimal(data.getFlatAmount())); } // 计算该时段电费 = 电费单价 x 用电量 - BigDecimal flatElectricityAmount = orderDetail.getFlatElectricityPrice() - .multiply(flatUsedElectricity) - .setScale(2, RoundingMode.DOWN); + BigDecimal electricityPrice = orderDetail.getFlatElectricityPrice(); // 该时段电费单价 + BigDecimal flatElectricityAmount = electricityPrice.multiply(flatUsedElectricity).setScale(2, RoundingMode.DOWN); totalElectricityAmount = totalElectricityAmount.add(flatElectricityAmount); // 计算该时段服务费 - BigDecimal flatServiceAmount = orderDetail.getFlatServicePrice() - .multiply(flatUsedElectricity) - .setScale(2, RoundingMode.DOWN); + BigDecimal servicePrice = orderDetail.getFlatServicePrice(); // 该时段服务费单价 + BigDecimal flatServiceAmount = servicePrice.multiply(flatUsedElectricity).setScale(2, RoundingMode.DOWN); totalServiceAmount = totalServiceAmount.add(flatServiceAmount); } @@ -375,14 +369,12 @@ public abstract class AbstractProgramLogic implements InitializingBean { orderDetail.setValleyAmount(new BigDecimal(data.getValleyAmount())); } // 计算该时段电费 = 电费单价 x 用电量 - BigDecimal valleyElectricityAmount = orderDetail.getValleyElectricityPrice() - .multiply(valleyUsedElectricity) - .setScale(2, RoundingMode.DOWN); + BigDecimal electricityPrice = orderDetail.getValleyElectricityPrice(); // 该时段电费单价 + BigDecimal valleyElectricityAmount = electricityPrice.multiply(valleyUsedElectricity).setScale(2, RoundingMode.DOWN); totalElectricityAmount = totalElectricityAmount.add(valleyElectricityAmount); // 计算该时段服务费 - BigDecimal valleyServiceAmount = orderDetail.getValleyServicePrice() - .multiply(valleyUsedElectricity) - .setScale(2, RoundingMode.DOWN); + BigDecimal servicePrice = orderDetail.getValleyServicePrice(); + BigDecimal valleyServiceAmount = servicePrice.multiply(valleyUsedElectricity).setScale(2, RoundingMode.DOWN); totalServiceAmount = totalServiceAmount.add(valleyServiceAmount); } @@ -396,16 +388,10 @@ public abstract class AbstractProgramLogic implements InitializingBean { // 服务费总金额 orderDetail.setTotalServiceAmount(totalServiceAmount); // 尖峰平谷用电量汇总 - BigDecimal sumUsedElectricity = sharpUsedElectricity.add(peakUsedElectricity) - .add(flatUsedElectricity).add(valleyUsedElectricity); + BigDecimal sumUsedElectricity = sharpUsedElectricity.add(peakUsedElectricity).add(flatUsedElectricity).add(valleyUsedElectricity); // data中的总用电量 BigDecimal totalElectricity = new BigDecimal(StringUtils.isBlank(data.getTotalElectricity()) ? Constants.ZERO : data.getTotalElectricity()); - // if (sumUsedElectricity.compareTo(totalElectricity) != 0) { - // // 汇总数据和data中数据不相等,取汇总的数据 - // totalElectricity = sumUsedElectricity; - // } - // totalElectricity = sumUsedElectricity与totalElectricity, 取最大的值 - orderDetail.setTotalUsedElectricity(totalElectricity.max(sumUsedElectricity)); + orderDetail.setTotalUsedElectricity(totalElectricity.max(sumUsedElectricity)); // sumUsedElectricity与totalElectricity对比, 取最大的值 // 订单总金额 orderDetail.setTotalOrderAmount(orderAmount); } catch (Exception e) {