From 2e1531e8cdbe5b7f659a034fc659d8fca272f61d Mon Sep 17 00:00:00 2001 From: cloudroam <cloudroam> Date: 星期一, 09 九月 2024 18:10:22 +0800 Subject: [PATCH] add:理赔-售后类型 --- src/main/java/com/mzl/flower/service/payment/OrderItemSettlementService.java | 14 ++++++++++---- 1 files changed, 10 insertions(+), 4 deletions(-) diff --git a/src/main/java/com/mzl/flower/service/payment/OrderItemSettlementService.java b/src/main/java/com/mzl/flower/service/payment/OrderItemSettlementService.java index 5434873..e645d58 100644 --- a/src/main/java/com/mzl/flower/service/payment/OrderItemSettlementService.java +++ b/src/main/java/com/mzl/flower/service/payment/OrderItemSettlementService.java @@ -124,9 +124,14 @@ } else if (Constants.CHECK_TYPE.lack.name().equals(type)) { lackNum = num == null ? 0 : num; lackFeeSupplier = oi.getSupplierPrice().multiply(new BigDecimal(lackNum)); - lackFeePartner = oi.getMarkupPartner().multiply(new BigDecimal(lackNum)); - lackFeePlatform = oi.getMarkupOne().multiply(new BigDecimal(lackNum)); - lackFeePlatform = lackFeePlatform.add(oi.getMarkupTwo().multiply(new BigDecimal(lackNum))); + + BigDecimal markupPartner = getAmount(oi.getMarkupPartner()); + lackFeePartner = markupPartner.multiply(new BigDecimal(lackNum)); + + BigDecimal markupOne = getAmount(oi.getMarkupOne()); + BigDecimal markupTwo = getAmount(oi.getMarkupTwo()); + lackFeePlatform = markupOne.multiply(new BigDecimal(lackNum)); + lackFeePlatform = lackFeePlatform.add(markupTwo.multiply(new BigDecimal(lackNum))); } else if (Constants.CHECK_TYPE.replace.name().equals(type)) { replaceNum = num == null ? 0 : num; replaceFee = amount == null ? new BigDecimal(0) : amount; @@ -218,7 +223,8 @@ private void setPartnerIncome(OrderItem oi, OrderItemSettlement ois){ //合伙人结算:合伙人加价-理赔-缺货扣款 = 结算金额 - BigDecimal totalAmount = oi.getMarkupPartner().multiply(new BigDecimal(oi.getNum())); + BigDecimal markupPartner = oi.getMarkupPartner() == null ? new BigDecimal(0) : oi.getMarkupPartner(); + BigDecimal totalAmount = markupPartner.multiply(new BigDecimal(oi.getNum())); BigDecimal settlementAmount = totalAmount.subtract(ois.getSalesFeePartner()).subtract(ois.getLackFeePartner());//结算金额 if(settlementAmount.doubleValue() < 0){ settlementAmount = new BigDecimal(0); -- Gitblit v1.9.3