huangzhiguo 1 年之前
父節點
當前提交
0223616a28

+ 2 - 1
src/main/java/com/caimei365/order/components/ProductService.java

@@ -503,7 +503,8 @@ public class ProductService {
         log.info(note + ">>>>>>>>>>>收款项和订单关系(insert[cm_receipt_order_relation])id:" + relation.getId() + ",shopOrderId:" + shopOrder.getShopOrderId());
 
         // 修改子订单状态
-        shopOrder.setAccountAmount(shopOrderPay);
+        // 子订单余额抵扣金额
+        shopOrder.setAccountAmount(MathUtil.add(shopOrder.getAccountAmount(),shopOrderPay).doubleValue());
         // 用户已付金额
         shopOrder.setReceiptAmount(MathUtil.add(shopOrder.getReceiptAmount(),shopOrderPay).doubleValue());
         // 余额抵扣状态

+ 7 - 6
src/main/java/com/caimei365/order/service/impl/HeliPayServiceImpl.java

@@ -1180,10 +1180,6 @@ public class HeliPayServiceImpl implements HeliPayService {
             if (null == shopOrder.getRealPay()) {
                 shopOrder.setRealPay(shopOrder.getNeedPayAmount());
             }
-            shopOrder.setObligation(MathUtil.sub(shopOrder.getRealPay(), shopOrder.getReceiptAmount()).doubleValue());
-            if (998 == shopOrder.getShopId()) {
-                shopOrder.setObligation(shopOrder.getTotalAmount());
-            }
             shopOrder.setOrderProductList(orderProductList);
             shopOrder.setShopLogo(ImageUtil.getImageUrl("shopLogo", shopOrder.getShopLogo(), domain));
             // 子订单支付方式
@@ -1204,7 +1200,7 @@ public class HeliPayServiceImpl implements HeliPayService {
             // 1线上,2线下,3余额抵扣
             if (null != shopOrderReceipt) {
                 shopOrderReceipt.forEach(receipt -> {
-                    finalReceiptAmount.set(MathUtil.add(finalReceiptAmount.get(), receipt.getReceiptAmount()).doubleValue());
+                    finalReceiptAmount.set(MathUtil.add(finalReceiptAmount.get(), receipt.getAssociateAmount()).doubleValue());
                     if (1 == receipt.getPayWay()) {
                         onlinePay.set(1);
                     } else {
@@ -1220,7 +1216,12 @@ public class HeliPayServiceImpl implements HeliPayService {
             if (1 == shopOrder.getUseBalanceFlag()) {
                 onlinePay.set(2);
             }
-            shopOrder.setReceiptAmount(MathUtil.add(shopOrder.getReceiptAmount(), finalReceiptAmount.get()).doubleValue());
+            shopOrder.setReceiptAmount(MathUtil.add(shopOrder.getAccountAmount(), finalReceiptAmount.get()).doubleValue());
+            // 待付金额
+            shopOrder.setObligation(MathUtil.sub(shopOrder.getRealPay(), shopOrder.getReceiptAmount()).doubleValue());
+            if (998 == shopOrder.getShopId()) {
+                shopOrder.setObligation(shopOrder.getTotalAmount());
+            }
             shopOrder.setOnlinePay(onlinePay.get());
             orderCommonService.setPostageInfo(shopOrder);
         });

+ 1 - 0
src/main/resources/mapper/OrderClubMapper.xml

@@ -579,6 +579,7 @@
             cso.payStatus,
             cso.orderSubmitType,
             cso.splitFlag,
+            ifnull(cso.accountAmount,0) as accountAmount,
             ifnull(cso.useBalanceFlag, 0) as useBalanceFlag,
             ifnull(cso.sendOutStatus, 1) as sendOutStatus,
             (select onlinePayFlag from cm_order where orderId = cso.orderId ) as onlinePay,

+ 1 - 0
src/main/resources/mapper/OrderCommonMapper.xml

@@ -896,6 +896,7 @@
                cop.orderSubmitType,
                cop.payStatus,
                cop.splitFlag,
+               ifnull(cop.accountAmount, 0) as accountAmount,
                ifnull(cop.useBalanceFlag, 0) as useBalanceFlag,
                ifnull(cop.realPay, cop.needPayAmount) as realPay,
                cop.receiptAmount,