diff --git a/mhd_bms/src/main/java/com/mhd/bms/application/server/businessDocument/BusinessDocumentApplicationService.java b/mhd_bms/src/main/java/com/mhd/bms/application/server/businessDocument/BusinessDocumentApplicationService.java index ad261c128..3b09fb4ff 100644 --- a/mhd_bms/src/main/java/com/mhd/bms/application/server/businessDocument/BusinessDocumentApplicationService.java +++ b/mhd_bms/src/main/java/com/mhd/bms/application/server/businessDocument/BusinessDocumentApplicationService.java @@ -327,11 +327,10 @@ public class BusinessDocumentApplicationService { BigDecimal billAmountSettlement = billManage.getBillAmountSettlement(); BigDecimal subtract = billTotalAmount.subtract(billAmountSettlement); billManage.setBillAmountUnsettled(subtract); - Double taxRate = billManage.getTaxRate() != null ? billManage.getTaxRate() : 0.0; - BigDecimal taxAmount = billTotalAmount.divide(BigDecimal.ONE.add(new BigDecimal(taxRate).divide(BigDecimal.valueOf(100))),10, BigDecimal.ROUND_HALF_UP).multiply(new BigDecimal(taxRate).divide(BigDecimal.valueOf(100))).setScale(2, BigDecimal.ROUND_HALF_UP); - BigDecimal taxFreeFee = billTotalAmount.subtract(taxAmount); - billManage.setTaxAmount(taxAmount); - billManage.setTaxFreeFee(taxFreeFee); + BigDecimal taxAmount = billManage.getTaxAmount(); + billManage.setTaxAmount(taxAmount.add(billDetail.getTaxAmount())); + BigDecimal taxFreeFee = billManage.getTaxFreeFee(); + billManage.setTaxFreeFee(taxFreeFee.add(billDetail.getTaxFreeFee())); billManageService.updateById(billManage); return true; }