From 5e918c353d039a75f552f4eb0cc251e96ef809ab Mon Sep 17 00:00:00 2001
From: zhengyuxuan <zhengyuxuan1995>
Date: 星期二, 01 四月 2025 09:58:54 +0800
Subject: [PATCH] fix:bug修复

---
 LifePayment/LifePayment.Application/LifePay/LifePayOrderService.cs |   23 +++++++++++++----------
 1 files changed, 13 insertions(+), 10 deletions(-)

diff --git a/LifePayment/LifePayment.Application/LifePay/LifePayOrderService.cs b/LifePayment/LifePayment.Application/LifePay/LifePayOrderService.cs
index 6e9e7e5..856e067 100644
--- a/LifePayment/LifePayment.Application/LifePay/LifePayOrderService.cs
+++ b/LifePayment/LifePayment.Application/LifePay/LifePayOrderService.cs
@@ -163,7 +163,7 @@
                 s.SerialNumber = ++i;
                 s.CreationTimeStr = s.CreationTime.ToString(LifePaymentConstant.DateTimeFormatStr.yyyyMMddHHmmss);
                 s.PayAmountStr = s.PayAmount.ToString("F2");
-                s.ChannlesRakeRateStr = s.ChannlesRakeRate.ToString("F2");
+                s.ChannlesRakeRateStr = s.ChannlesRakeRate.ToString("F0") + "%";
                 s.ChannlesRakePriceStr = s.ChannlesRakePrice.ToString("F2");
                 s.FinishTimeStr = s.FinishTime.ToString(LifePaymentConstant.DateTimeFormatStr.yyyyMMddHHmmss);
             });
@@ -223,11 +223,9 @@
                 var data = new LifePayExpensesReceipts()
                 {
                     Id = Guid.NewGuid(),
-                    OrderNo = input.OrderNo,
                     OutOrderNo = input.OutOrderNo,
                     LifePayType = input.LifePayType,
                     ExpensesReceiptsType = input.ExpensesReceiptsType,
-                    Amount = input.Amount,
                 };
 
                 switch (input.LifePayType)
@@ -239,18 +237,22 @@
                             if (query.Code == AlipayResultCode.Success && (query.TradeStatus == AlipayStatus.TRADESUCCESS
                                 || query.TradeStatus == AlipayStatus.TRADECLOSED))
                             {
+                                data.OrderNo = input.OrderNo;
                                 data.ExtraProperties = JsonConvert.SerializeObject(query);
                                 data.FinishTime = Convert.ToDateTime(query.SendPayDate);
+                                data.Amount = Convert.ToDecimal(query.TotalAmount);
                                 await _lifePayExpensesReceiptsRepository.InsertAsync(data);
                             }
                         }
                         else
                         {
-                            var query = await _aliPayApi.QueryAlipayTradeRefund(new OrderInQuiryInput() { OutTradeNo = input.OrderNo });
+                            var query = await _aliPayApi.QueryAlipayTradeRefund(new OrderInQuiryInput() { OutTradeNo = input.OrderNo, OutRefundNo = input.OutRefundNo });
                             if (query.Code == AlipayResultCode.Success && query.RefundStatus == AlipayRefundStatus.Success)
                             {
+                                data.OrderNo = input.OutRefundNo;
                                 data.ExtraProperties = JsonConvert.SerializeObject(query);
                                 data.FinishTime = Convert.ToDateTime(query.GmtRefundPay);
+                                data.Amount = Convert.ToDecimal(query.RefundAmount);
                                 await _lifePayExpensesReceiptsRepository.InsertAsync(data);
                             }
                         }
@@ -261,6 +263,7 @@
                             var query = await _wxPayApi.WxPayTradeQuery(input.OrderNo);
                             if (query.TradeState == WxPayStatus.鏀粯鎴愬姛 || query.TradeState == WxPayStatus.杞叆閫�娆�)
                             {
+                                data.OrderNo = input.OrderNo;
                                 data.ExtraProperties = JsonConvert.SerializeObject(query);
                                 data.FinishTime = Convert.ToDateTime(query.SuccessTime);
                                 await _lifePayExpensesReceiptsRepository.InsertAsync(data);
@@ -268,9 +271,10 @@
                         }
                         else
                         {
-                            var query = await _wxPayApi.WxPayDomesticRefundsQuery(input.OrderNo);
+                            var query = await _wxPayApi.WxPayDomesticRefundsQuery(input.OutRefundNo);
                             if (query.Status == WxPayRefundStatus.閫�娆炬垚鍔�)
                             {
+                                data.OrderNo = input.OutRefundNo;
                                 data.ExtraProperties = JsonConvert.SerializeObject(query);
                                 data.FinishTime = Convert.ToDateTime(query.SuccessTime);
                                 await _lifePayExpensesReceiptsRepository.InsertAsync(data);
@@ -315,15 +319,14 @@
                     /// 鍑鸿处
                     if (item.RefundOrderNo.IsNotNullOrEmpty())
                     {
-                        if (input.LifePayType == LifePayTypeEnum.WxPay)
-                        {
-                            input.OrderNo = item.RefundOrderNo;
-                        }
+                        input.OutRefundNo = item.OrderNo;
+                        input.ExpensesReceiptsType = ExpensesReceiptsTypeEnum.Receipts;
+                        await AddLifePayExpensesReceipts(input);
 
+                        input.OutRefundNo = item.RefundOrderNo;
                         input.ExpensesReceiptsType = ExpensesReceiptsTypeEnum.Receipts;
                         await AddLifePayExpensesReceipts(input);
                     }
-
                 }
             }
         }

--
Gitblit v1.9.1