diff --git a/jsowell-pile/src/main/java/com/jsowell/pile/service/impl/OrderBasicInfoServiceImpl.java b/jsowell-pile/src/main/java/com/jsowell/pile/service/impl/OrderBasicInfoServiceImpl.java index a7c1d520a..278249b4c 100644 --- a/jsowell-pile/src/main/java/com/jsowell/pile/service/impl/OrderBasicInfoServiceImpl.java +++ b/jsowell-pile/src/main/java/com/jsowell/pile/service/impl/OrderBasicInfoServiceImpl.java @@ -727,43 +727,47 @@ public class OrderBasicInfoServiceImpl implements IOrderBasicInfoService { // 计算数据 private List calculateData(List list) { for (OrderDetail orderDetail : list) { - // 总电费金额 - BigDecimal totalElectricityAmount = BigDecimal.ZERO; + try { + // 总电费金额 + BigDecimal totalElectricityAmount = BigDecimal.ZERO; - // 尖时段用电量 - BigDecimal sharpUsedElectricity = orderDetail.getSharpUsedElectricity(); - if (sharpUsedElectricity != null) { - // 计算该时段电费 - BigDecimal multiply = orderDetail.getSharpElectricityPrice().multiply(sharpUsedElectricity).setScale(2,BigDecimal.ROUND_DOWN); - totalElectricityAmount = totalElectricityAmount.add(multiply); + // 尖时段用电量 + BigDecimal sharpUsedElectricity = orderDetail.getSharpUsedElectricity(); + if (sharpUsedElectricity != null) { + // 计算该时段电费 + BigDecimal multiply = orderDetail.getSharpElectricityPrice().multiply(sharpUsedElectricity).setScale(2,BigDecimal.ROUND_DOWN); + totalElectricityAmount = totalElectricityAmount.add(multiply); + } + + // 峰时段用电量 + BigDecimal peakUsedElectricity = orderDetail.getPeakUsedElectricity(); + if (peakUsedElectricity != null) { + // 计算该时段电费 + BigDecimal multiply = orderDetail.getPeakElectricityPrice().multiply(peakUsedElectricity).setScale(2,BigDecimal.ROUND_DOWN); + totalElectricityAmount = totalElectricityAmount.add(multiply); + } + + // 平时段用电量 + BigDecimal flatUsedElectricity = orderDetail.getFlatUsedElectricity(); + if (flatUsedElectricity != null) { + // 计算该时段电费 + BigDecimal multiply = orderDetail.getFlatElectricityPrice().multiply(flatUsedElectricity).setScale(2,BigDecimal.ROUND_DOWN); + totalElectricityAmount = totalElectricityAmount.add(multiply); + } + + // 谷时段用电量 + BigDecimal valleyUsedElectricity = orderDetail.getValleyUsedElectricity(); + if (valleyUsedElectricity != null) { + // 计算该时段电费 + BigDecimal multiply = orderDetail.getValleyElectricityPrice().multiply(valleyUsedElectricity).setScale(2,BigDecimal.ROUND_DOWN); + totalElectricityAmount = totalElectricityAmount.add(multiply); + } + + orderDetail.setTotalElectricityAmount(totalElectricityAmount); + orderDetail.setTotalServiceAmount(orderDetail.getTotalOrderAmount().subtract(totalElectricityAmount)); + }catch (Exception e) { + logger.info("发生异常", e); } - - // 峰时段用电量 - BigDecimal peakUsedElectricity = orderDetail.getPeakUsedElectricity(); - if (peakUsedElectricity != null) { - // 计算该时段电费 - BigDecimal multiply = orderDetail.getPeakElectricityPrice().multiply(peakUsedElectricity).setScale(2,BigDecimal.ROUND_DOWN); - totalElectricityAmount = totalElectricityAmount.add(multiply); - } - - // 平时段用电量 - BigDecimal flatUsedElectricity = orderDetail.getFlatUsedElectricity(); - if (flatUsedElectricity != null) { - // 计算该时段电费 - BigDecimal multiply = orderDetail.getFlatElectricityPrice().multiply(flatUsedElectricity).setScale(2,BigDecimal.ROUND_DOWN); - totalElectricityAmount = totalElectricityAmount.add(multiply); - } - - // 谷时段用电量 - BigDecimal valleyUsedElectricity = orderDetail.getValleyUsedElectricity(); - if (valleyUsedElectricity != null) { - // 计算该时段电费 - BigDecimal multiply = orderDetail.getValleyElectricityPrice().multiply(valleyUsedElectricity).setScale(2,BigDecimal.ROUND_DOWN); - totalElectricityAmount = totalElectricityAmount.add(multiply); - } - - orderDetail.setTotalElectricityAmount(totalElectricityAmount); - orderDetail.setTotalServiceAmount(orderDetail.getTotalOrderAmount().subtract(totalElectricityAmount)); } return list; }