From 182c7edd7c70eddbf33e2358f1f1aba96eb58cb3 Mon Sep 17 00:00:00 2001
From: zhengyuxuan <zhengyuxuan1995>
Date: 星期五, 28 三月 2025 15:43:46 +0800
Subject: [PATCH] fix:查询优化

---
 LifePayment/LifePayment.Application/LifePay/LifePayService.cs |   30 +++++++++++++++++++++++-------
 1 files changed, 23 insertions(+), 7 deletions(-)

diff --git a/LifePayment/LifePayment.Application/LifePay/LifePayService.cs b/LifePayment/LifePayment.Application/LifePay/LifePayService.cs
index 88486e5..e847711 100644
--- a/LifePayment/LifePayment.Application/LifePay/LifePayService.cs
+++ b/LifePayment/LifePayment.Application/LifePay/LifePayService.cs
@@ -843,9 +843,24 @@
         return result;
     }
 
-    public async Task WxPayDomesticRefundsQuery(string outTradeNo)
+    /// <summary>
+    /// 鏌ヨ寰俊閫�娆捐鍗曚俊鎭�
+    /// </summary>
+    /// <param name="outTradeNo"></param>
+    /// <returns></returns>
+    public async Task<WxPayDomesticRefundsQueryReponse> WxPayDomesticRefundsQuery(string outTradeNo)
     {
-        await _wxPayApi.WxPayDomesticRefundsQuery(outTradeNo);
+        return await _wxPayApi.WxPayDomesticRefundsQuery(outTradeNo);
+    }
+
+    /// <summary>
+    /// 鏌ヨ寰俊璁㈠崟淇℃伅
+    /// </summary>
+    /// <param name="outTradeNo"></param>
+    /// <returns></returns>
+    public async Task WxPayTradeQuery(string outTradeNo)
+    {
+        await _wxPayApi.WxPayTradeQuery(outTradeNo);
     }
 
     #endregion
@@ -868,7 +883,7 @@
         var channle = await GetLifePayChannlesDtoByNum(input.ChannelId);
         CheckExtensions.IfTrueThrowUserFriendlyException(channle == null, "娓犻亾涓嶅瓨鍦�");
 
-        var repeatOrder = await _lifePayOrderRepository.Where(x => x.LifePayOrderType == LifePayOrderTypeEnum.璇濊垂璁㈠崟 && x.PayStatus == LifePayStatusEnum.宸叉敮浠�
+        var repeatOrder = await _lifePayOrderRepository.Where(x => x.LifePayOrderType == LifePayOrderTypeEnum.PhoneOrder && x.PayStatus == LifePayStatusEnum.宸叉敮浠�
         && x.LifePayOrderStatus == LifePayOrderStatusEnum.鍏呭�间腑
         && x.OrderParamDetailJsonStr.Contains(input.ProductData.Phone)).ToListAsync();
          CheckExtensions.IfTrueThrowUserFriendlyException(repeatOrder.Count() > 0, "鎮ㄦ湁鍚屾埛鍙疯鍗曟鍦ㄥ厖鍊间腑锛岃鍕块噸澶嶅厖鍊�");
@@ -929,7 +944,7 @@
 
         //var rate = await GetRate();
         //CheckExtensions.IfTrueThrowUserFriendlyException(rate.IsNullOrEmpty(), "鏈厤缃姌鎵�");
-        var repeatOrder = await _lifePayOrderRepository.Where(x => x.LifePayOrderType == LifePayOrderTypeEnum.鐢佃垂璁㈠崟 && x.PayStatus == LifePayStatusEnum.宸叉敮浠�
+        var repeatOrder = await _lifePayOrderRepository.Where(x => x.LifePayOrderType == LifePayOrderTypeEnum.ElectricOrder && x.PayStatus == LifePayStatusEnum.宸叉敮浠�
          && x.LifePayOrderStatus == LifePayOrderStatusEnum.鍏呭�间腑 && x.OrderParamDetailJsonStr.Contains(input.ProductData.ElectricType)
          && x.OrderParamDetailJsonStr.Contains(input.ProductData.ElectricAccount)).ToListAsync();
         CheckExtensions.IfTrueThrowUserFriendlyException(repeatOrder.Count() > 0, "鎮ㄦ湁鍚屾埛鍙疯鍗曟鍦ㄥ厖鍊间腑锛岃鍕块噸澶嶅厖鍊�");
@@ -983,7 +998,7 @@
 
         //var rate = await GetRate();
         //CheckExtensions.IfTrueThrowUserFriendlyException(rate.IsNullOrEmpty(), "鏈厤缃姌鎵�");
-        var repeatOrder = await _lifePayOrderRepository.Where(x => x.LifePayOrderType == LifePayOrderTypeEnum.鐕冩皵璁㈠崟 && x.PayStatus == LifePayStatusEnum.宸叉敮浠�
+        var repeatOrder = await _lifePayOrderRepository.Where(x => x.LifePayOrderType == LifePayOrderTypeEnum.GasOrder && x.PayStatus == LifePayStatusEnum.宸叉敮浠�
         && x.LifePayOrderStatus == LifePayOrderStatusEnum.鍏呭�间腑 && x.OrderParamDetailJsonStr.Contains(input.ProductData.GasOrgType)
         && x.OrderParamDetailJsonStr.Contains(input.ProductData.GasAccount)).ToListAsync();
         CheckExtensions.IfTrueThrowUserFriendlyException(repeatOrder.Count() > 0, "鎮ㄦ湁鍚屾埛鍙疯鍗曟鍦ㄥ厖鍊间腑锛岃鍕块噸澶嶅厖鍊�");
@@ -1403,7 +1418,7 @@
 
                 break;
             case LifePayTypeEnum.AliPay:
-                var aliRefundResult = await AliTradeRefund(new AlipayTradeRefundRequest() { OutTradeNo = order.OrderNo, RefundAmount = input.RefundPrice.ToString() });
+                var aliRefundResult = await AliTradeRefund(new AlipayTradeRefundRequest() { OutTradeNo = order.OrderNo, OutRefundNo = outRefundNo, RefundAmount = input.RefundPrice.ToString() });
                 if (aliRefundResult.Code != AlipayResultCode.Success)
                 {
                     throw new UserFriendlyException("閫�娆惧け璐�:" + aliRefundResult.SubMsg);
@@ -1548,7 +1563,7 @@
             await _lifePayAccount.InsertAsync(userAccount);
         }
 
-        if (input.LifePayType == LifePayOrderTypeEnum.璇濊垂璁㈠崟)
+        if (input.LifePayType == LifePayOrderTypeEnum.PhoneOrder)
         {
             var extraProperties = JsonConvert.DeserializeObject<Model_UserAccountExtraProperties>(input.ExtraProperties);
             if (!string.IsNullOrEmpty(extraProperties.Name) && extraProperties.Phone == user.PhoneNumber)
@@ -2151,6 +2166,7 @@
             return channel.ChannlesRate;
         }
     }
+
     public async Task<SetPayTypeReturn> SetPayType(string orderNo, LifePayTypeEnum lifePayType, string ip)
     {
         var order = await _lifePayOrderRepository.Where(x => x.OrderNo == orderNo).FirstOrDefaultAsync();

--
Gitblit v1.9.1