From a3f1926a7530fd4a3b9196824a8e8b00c693e6e3 Mon Sep 17 00:00:00 2001
From: zhengyiming <540361168@qq.com>
Date: 星期二, 01 四月 2025 11:11:50 +0800
Subject: [PATCH] Merge branch 'dev-lifepay-v1.3' of http://120.26.58.240:8888/r/LifePaymentApi into dev-lifepay-v1.3

---
 LifePayment/LifePayment.HttpApi/LifePay/WxPayNotifyController.cs |   41 +++++++++++++++++++++++++++++++++--------
 1 files changed, 33 insertions(+), 8 deletions(-)

diff --git a/LifePayment/LifePayment.HttpApi/LifePay/WxPayNotifyController.cs b/LifePayment/LifePayment.HttpApi/LifePay/WxPayNotifyController.cs
index 454dc62..afb1d87 100644
--- a/LifePayment/LifePayment.HttpApi/LifePay/WxPayNotifyController.cs
+++ b/LifePayment/LifePayment.HttpApi/LifePay/WxPayNotifyController.cs
@@ -21,16 +21,19 @@
 
         private readonly IWxPayApi _wxPayApi;
         private readonly ILifePayService _lifePayService;
+        private readonly ILifePayOrderService _lifePayOrderService;
         private readonly ILogger<WxPayNotifyController> _logger;
 
         public WxPayNotifyController(
                IWxPayApi wxPayApi,
                ILogger<WxPayNotifyController> logger,
-               ILifePayService lifePayService)
+               ILifePayService lifePayService,
+               ILifePayOrderService lifePayOrderService)
         {
             _wxPayApi = wxPayApi;
             _logger = logger;
             _lifePayService = lifePayService;
+            _lifePayOrderService = lifePayOrderService;
         }
 
         /// <summary>
@@ -53,6 +56,16 @@
                     if (wxPayNotice.TradeState == LifePaymentConstant.WxPayStatus.鏀粯鎴愬姛)
                     {
                         await _lifePayService.LifePaySuccessHandler(wxPayNotice.OutTradeNo, wxPayNotice.TransactionId);
+
+                        // 鎻掑叆鏀舵敮娴佹按
+                        await _lifePayOrderService.AddLifePayExpensesReceipts(new AddLifePayExpensesReceiptsInput()
+                        {
+                            OrderNo = wxPayNotice.OutTradeNo,
+                            OutOrderNo = wxPayNotice.TransactionId,
+                            LifePayType = LifePayTypeEnum.WxPay,
+                            ExpensesReceiptsType = ExpensesReceiptsTypeEnum.Expenses,
+                            Amount = wxPayNotice.Amount.Total
+                        });
                     }
                 }
             }
@@ -72,7 +85,11 @@
             };
         }
 
-
+        /// <summary>
+        /// 寰俊閫�娆鹃�氱煡鍥炶皟
+        /// </summary>
+        /// <param name="input"></param>
+        /// <returns></returns>
         [HttpPost]
         [UnitOfWork]
         public async Task<WxRechargeNotifyResult> WxPayDomesticRefundsNotify(WxRechargeNotifyInput input)
@@ -92,18 +109,26 @@
                     switch (wxPayNotice.RefundStatus)
                     {
                         case LifePaymentConstant.WxPayRefundStatus.閫�娆炬垚鍔�:
-                            await _lifePayService.WxPayDomesticRefundsHandler(wxPayNotice.OutTradeNo, LifePayRefundStatusEnum.宸查��娆�);
-                            break;
                         case LifePaymentConstant.WxPayRefundStatus.閫�娆惧叧闂�:
-                            await _lifePayService.WxPayDomesticRefundsHandler(wxPayNotice.OutTradeNo, LifePayRefundStatusEnum.宸查��娆�);
+                            await _lifePayService.LifePayRefundsHandler(wxPayNotice.OutTradeNo, LifePayRefundStatusEnum.宸查��娆�);
+                            // 鎻掑叆鏀舵敮娴佹按
+                            await _lifePayOrderService.AddLifePayExpensesReceipts(new AddLifePayExpensesReceiptsInput()
+                            {
+                                OrderNo = wxPayNotice.OutTradeNo,
+                                OutRefundNo = wxPayNotice.OutRefundNo,
+                                OutOrderNo = wxPayNotice.TransactionId,
+                                LifePayType = LifePayTypeEnum.WxPay,
+                                ExpensesReceiptsType = ExpensesReceiptsTypeEnum.Receipts,
+                                Amount = wxPayNotice.Amount.Total
+                            });
                             break;
                         case LifePaymentConstant.WxPayRefundStatus.閫�娆惧鐞嗕腑:
-                            await _lifePayService.WxPayDomesticRefundsHandler(wxPayNotice.OutTradeNo, LifePayRefundStatusEnum.閫�娆句腑);
+                            await _lifePayService.LifePayRefundsHandler(wxPayNotice.OutTradeNo, LifePayRefundStatusEnum.閫�娆句腑);
                             break;
                         case LifePaymentConstant.WxPayRefundStatus.閫�娆惧紓甯�:
-                            await _lifePayService.WxPayDomesticRefundsHandler(wxPayNotice.OutTradeNo, LifePayRefundStatusEnum.閫�娆句腑);
+                            await _lifePayService.LifePayRefundsHandler(wxPayNotice.OutTradeNo, LifePayRefundStatusEnum.閫�娆句腑);
                             break;
-                        default : await _lifePayService.WxPayDomesticRefundsHandler(wxPayNotice.OutTradeNo, LifePayRefundStatusEnum.閫�娆句腑);break;
+                        default : await _lifePayService.LifePayRefundsHandler(wxPayNotice.OutTradeNo, LifePayRefundStatusEnum.閫�娆句腑);break;
                     }
                 }
             }

--
Gitblit v1.9.1