From 34d668bf654e861b2c8b3eb8d1faa09e1ae6246a Mon Sep 17 00:00:00 2001
From: jiangping <jp@doumee.com>
Date: 星期二, 18 三月 2025 15:05:56 +0800
Subject: [PATCH] jtt808初始化

---
 server/services/src/main/java/com/doumee/service/business/impl/WxBillServiceImpl.java |   41 ++++++++++++++++++++++++++++++++++-------
 1 files changed, 34 insertions(+), 7 deletions(-)

diff --git a/server/services/src/main/java/com/doumee/service/business/impl/WxBillServiceImpl.java b/server/services/src/main/java/com/doumee/service/business/impl/WxBillServiceImpl.java
index 9b398f4..41abf6d 100644
--- a/server/services/src/main/java/com/doumee/service/business/impl/WxBillServiceImpl.java
+++ b/server/services/src/main/java/com/doumee/service/business/impl/WxBillServiceImpl.java
@@ -9,6 +9,7 @@
 import com.doumee.core.utils.Utils;
 import com.doumee.core.wx.WxMiniConfig;
 import com.doumee.core.wx.WxPayProperties;
+import com.doumee.dao.business.GoodsorderMapper;
 import com.doumee.dao.business.WxBillDetailMapper;
 import com.doumee.dao.business.WxBillMapper;
 import com.doumee.dao.business.model.Goodsorder;
@@ -46,6 +47,8 @@
 
     @Autowired
     private WxBillMapper wxBillMapper;
+    @Autowired
+    private GoodsorderMapper goodsorderMapper;
     @Autowired
     private WxBillDetailMapper wxBillDetailMapper;
     @Override
@@ -262,6 +265,11 @@
         bill.setSumRefundCmmsAmt(new BigDecimal(0.00));
         bill.setTotal(new BigDecimal(0.00));
         bill.setBikeFee(new BigDecimal(0.00));
+        bill.setDiscountFee(new BigDecimal(0.00));
+        bill.setBikeRefundFee(new BigDecimal(0.00));
+        bill.setDiscountRefundFee(new BigDecimal(0.00));
+        bill.setDiscountRefundCmmsAmt(new BigDecimal(0.00));
+        bill.setBikeRefundCmmsAmt(new BigDecimal(0.00));
         return bill;
     }
     @Override
@@ -427,15 +435,34 @@
                 detail.setRefundApplyDate(DateUtil.getDateFromString2(info.getRefundTime())); //鐢宠閫�娆炬椂闂�
                 //璁$畻鑷杞︽敹鍏ワ紝鍖归厤鏉ヨ嚜鑷杞﹀皬绋嬪簭鐨勬墍鏈夋敮浠樻垚鍔熷拰閫�娆炬垚鍔熺殑閲戦锛屼綔涓鸿嚜琛岃溅鏀跺叆锛堢疮璁℃敹娆鹃噾棰�-绱閫�娆炬垚鍔熼噾棰濓級
                 if(StringUtils.equals(detail.getAppid(), WxMiniConfig.wxPayV2Service.getConfig().getSubAppId())){
-                    //鑷杞︽敹鍏ョ疮璁℃敹娆鹃噾棰�(鏀粯鎴愬姛鎬婚噾棰�-閫�娆炬�婚噾棰濓級
-                    if(StringUtils.equals(info.getTradeState(),"SUCCESS")){
-                        //濡傛灉鏄氦鏄擄紙鍖呭惈鎵嬬画璐癸級
-                        bill.setBikeFee(bill.getBikeFee().add(detail.getSettlementTotalFee()));
+                    Goodsorder order = goodsorderMapper.selectOne(new QueryWrapper<Goodsorder>().lambda()
+                            .eq(Goodsorder::getId,info.getOutTradeNo()));
+                    if(Constants.equalsInteger(order.getType(),Constants.ZERO)){
+                        //鑷杞︽敹鍏ョ疮璁℃敹娆鹃噾棰�(鏀粯鎴愬姛鎬婚噾棰�-閫�娆炬�婚噾棰濓級
+                        if(StringUtils.equals(info.getTradeState(),"SUCCESS")){
+                            //濡傛灉鏄氦鏄擄紙鍖呭惈鎵嬬画璐癸級
+                            bill.setBikeFee(bill.getBikeFee().add(detail.getSettlementTotalFee()));
 //                        bill.setBikeFee(bill.getBikeFee().subtract(detail.getCmmsAmt()) );
-                    }else  if(StringUtils.equals(info.getTradeState(),"REFUND" ) || StringUtils.equals(info.getTradeState(),"REVOKED" )){
-                        //濡傛灉閫�娆炬垚鍔燂紝鎵i櫎閫�娆鹃噾棰�(鍖呭惈鎵嬬画璐癸級
-                        bill.setBikeFee(bill.getBikeFee().subtract(detail.getRefundFee()) );
+                        }else  if(StringUtils.equals(info.getTradeState(),"REFUND" ) || StringUtils.equals(info.getTradeState(),"REVOKED" )){
+                            //濡傛灉閫�娆炬垚鍔燂紝鎵i櫎閫�娆鹃噾棰�(鍖呭惈鎵嬬画璐癸級
+                            bill.setBikeFee(bill.getBikeFee().subtract(detail.getRefundFee()) );
+                            bill.setBikeRefundFee(bill.getBikeRefundFee().add(detail.getRefundFee()) );
+                            bill.setBikeRefundCmmsAmt(bill.getBikeRefundCmmsAmt().add(detail.getCmmsAmt()) );
 //                        bill.setBikeFee(bill.getBikeFee().subtract(detail.getCmmsAmt()) );
+                        }
+                    }else{
+                        //鑷杞︽敹鍏ョ疮璁℃敹娆鹃噾棰�(鏀粯鎴愬姛鎬婚噾棰�-閫�娆炬�婚噾棰濓級
+                        if(StringUtils.equals(info.getTradeState(),"SUCCESS")){
+                            //濡傛灉鏄氦鏄擄紙鍖呭惈鎵嬬画璐癸級
+                            bill.setDiscountFee(bill.getDiscountFee().add(detail.getSettlementTotalFee()));
+//                        bill.setBikeFee(bill.getBikeFee().subtract(detail.getCmmsAmt()) );
+                        }else  if(StringUtils.equals(info.getTradeState(),"REFUND" ) || StringUtils.equals(info.getTradeState(),"REVOKED" )){
+                            //濡傛灉閫�娆炬垚鍔燂紝鎵i櫎閫�娆鹃噾棰�(鍖呭惈鎵嬬画璐癸級
+                            bill.setDiscountFee(bill.getDiscountFee().subtract(detail.getRefundFee()) );
+                            bill.setDiscountRefundFee(bill.getDiscountRefundFee().add(detail.getRefundFee()) );
+                            bill.setDiscountRefundCmmsAmt(bill.getDiscountRefundCmmsAmt().add(detail.getCmmsAmt()) );
+//                        bill.setBikeFee(bill.getBikeFee().subtract(detail.getCmmsAmt()) );
+                        }
                     }
                 }
                 detailList.add(detail);

--
Gitblit v1.9.3