diff --git a/jsowell-admin/src/main/java/com/jsowell/service/OrderService.java b/jsowell-admin/src/main/java/com/jsowell/service/OrderService.java index 01728c6e1..6f43f7a9d 100644 --- a/jsowell-admin/src/main/java/com/jsowell/service/OrderService.java +++ b/jsowell-admin/src/main/java/com/jsowell/service/OrderService.java @@ -803,7 +803,8 @@ public class OrderService { sharp.setPeriodType(BillingTimeEnum.SHARP.getLabel()); sharp.setElectricityPrice(orderDetail.getSharpElectricityPrice()); sharp.setServicePrice(orderDetail.getSharpServicePrice()); - sharp.setUsedElectricity(orderDetail.getSharpUsedElectricity()); + BigDecimal sharpUsedElectricity = orderDetail.getSharpUsedElectricity() == null ? BigDecimal.ZERO : orderDetail.getSharpUsedElectricity(); + sharp.setUsedElectricity(sharpUsedElectricity); sharp.setElectricityAmount(sharp.getElectricityPrice().multiply(sharp.getUsedElectricity()).setScale(2, BigDecimal.ROUND_DOWN)); sharp.setServiceAmount(sharp.getServicePrice().multiply(sharp.getUsedElectricity()).setScale(2, BigDecimal.ROUND_DOWN)); @@ -811,7 +812,8 @@ public class OrderService { peak.setPeriodType(BillingTimeEnum.PEAK.getLabel()); peak.setElectricityPrice(orderDetail.getPeakElectricityPrice()); peak.setServicePrice(orderDetail.getPeakServicePrice()); - peak.setUsedElectricity(orderDetail.getPeakUsedElectricity()); + BigDecimal peakUsedElectricity = orderDetail.getPeakUsedElectricity() == null ? BigDecimal.ZERO : orderDetail.getPeakUsedElectricity(); + peak.setUsedElectricity(peakUsedElectricity); peak.setElectricityAmount(peak.getElectricityPrice().multiply(peak.getUsedElectricity()).setScale(2, BigDecimal.ROUND_DOWN)); peak.setServiceAmount(peak.getServicePrice().multiply(peak.getUsedElectricity()).setScale(2, BigDecimal.ROUND_DOWN)); @@ -819,7 +821,8 @@ public class OrderService { flat.setPeriodType(BillingTimeEnum.PEAK.getLabel()); flat.setElectricityPrice(orderDetail.getFlatElectricityPrice()); flat.setServicePrice(orderDetail.getFlatServicePrice()); - flat.setUsedElectricity(orderDetail.getFlatUsedElectricity()); + BigDecimal flatUsedElectricity = orderDetail.getFlatUsedElectricity() == null ? BigDecimal.ZERO : orderDetail.getFlatUsedElectricity(); + flat.setUsedElectricity(flatUsedElectricity); flat.setElectricityAmount(flat.getElectricityPrice().multiply(flat.getUsedElectricity()).setScale(2, BigDecimal.ROUND_DOWN)); flat.setServiceAmount(flat.getServicePrice().multiply(flat.getUsedElectricity()).setScale(2, BigDecimal.ROUND_DOWN)); @@ -827,7 +830,8 @@ public class OrderService { valley.setPeriodType(BillingTimeEnum.PEAK.getLabel()); valley.setElectricityPrice(orderDetail.getValleyElectricityPrice()); valley.setServicePrice(orderDetail.getValleyServicePrice()); - valley.setUsedElectricity(orderDetail.getValleyUsedElectricity()); + BigDecimal valleyUsedElectricity = orderDetail.getValleyUsedElectricity() == null ? BigDecimal.ZERO : orderDetail.getValleyUsedElectricity(); + valley.setUsedElectricity(valleyUsedElectricity); valley.setElectricityAmount(valley.getElectricityPrice().multiply(valley.getUsedElectricity()).setScale(2, BigDecimal.ROUND_DOWN)); valley.setServiceAmount(valley.getServicePrice().multiply(valley.getUsedElectricity()).setScale(2, BigDecimal.ROUND_DOWN));