From b44ea2a3ad900125b2fe41e8f56ff3c3e219a3be Mon Sep 17 00:00:00 2001
From: Cui Zhi Feng <7426394+wuxixiaocui@user.noreply.gitee.com>
Date: 星期四, 26 九月 2024 11:12:01 +0800
Subject: [PATCH] 售后退款验证

---
 src/main/java/com/mzl/flower/service/payment/OrderItemSalesService.java |   12 +++++++-----
 1 files changed, 7 insertions(+), 5 deletions(-)

diff --git a/src/main/java/com/mzl/flower/service/payment/OrderItemSalesService.java b/src/main/java/com/mzl/flower/service/payment/OrderItemSalesService.java
index e150405..e367bad 100644
--- a/src/main/java/com/mzl/flower/service/payment/OrderItemSalesService.java
+++ b/src/main/java/com/mzl/flower/service/payment/OrderItemSalesService.java
@@ -364,7 +364,9 @@
         BigDecimal feePackingTransport = getAmount(dto.getFeePackingTransport());
 
         BigDecimal totalFee = feeSupplier.add(feePartner).add(feePlatform).add(feePlatformPack)
-                .add(feePlatformCheck).add(feePlatformTransport).add(feePackingTransport);
+                .add(feePlatformCheck).add(feePlatformTransport);
+
+        BigDecimal totalFeeWithPacking = totalFee.add(feePackingTransport);
 
         List<OrderItemSales> ls = orderItemSalesMapper.selectList(new QueryWrapper<OrderItemSales>()
                 .eq("order_item_id", oi.getId())
@@ -376,7 +378,7 @@
         int preNum = 0;
         if(ls != null && ls.size() > 0){
             for(OrderItemSales s : ls){
-                preFee = preFee.add(s.getTotalFee());
+                preFee = preFee.add(s.getTotalFee()).subtract(s.getFeePackingTransport());
                 preFeeSupplier = preFeeSupplier.add(s.getFeeSupplier());
                 preNum += s.getNum();
                 preFeePackingTransport = preFeePackingTransport.add(s.getFeePackingTransport());
@@ -434,14 +436,14 @@
         sl.setFeePlatformCheck(feePlatformCheck);
         sl.setFeePlatformTransport(feePlatformTransport);
         sl.setFeePackingTransport(feePackingTransport);
-        sl.setTotalFee(totalFee);
+        sl.setTotalFee(totalFeeWithPacking);
         sl.setStatus(status);
         sl.setAuditTime(LocalDateTime.now());
         sl.update(SecurityUtils.getUserId());
 
         if(Constants.ORDER_SALES_STATUS.AGREED.name().equals(sl.getStatus())){
-            if(totalFee.doubleValue() > 0) {
-                String refundId = paymentV3Service.refundOrderSub(o, totalFee);
+            if(totalFeeWithPacking.doubleValue() > 0) {
+                String refundId = paymentV3Service.refundOrderSub(o, totalFeeWithPacking);
                 sl.setRefundId(refundId);
             }
         }

--
Gitblit v1.9.3