From 5ce19e37621a1c5a5d1e92280f560be97786594e Mon Sep 17 00:00:00 2001
From: zhengyuxuan <zhengyuxuan1995>
Date: 星期二, 18 三月 2025 14:10:45 +0800
Subject: [PATCH] fix:新增微信退款接口

---
 LifePayment/LifePayment.Domain/WeChat/WxClient.cs |   18 +++++++++++++-----
 1 files changed, 13 insertions(+), 5 deletions(-)

diff --git a/LifePayment/LifePayment.Domain/WeChat/WxClient.cs b/LifePayment/LifePayment.Domain/WeChat/WxClient.cs
index 63ef888..4d30661 100644
--- a/LifePayment/LifePayment.Domain/WeChat/WxClient.cs
+++ b/LifePayment/LifePayment.Domain/WeChat/WxClient.cs
@@ -35,7 +35,18 @@
             AddAuthHeader(client, BuildAuth(body, function));
             var data = new StringContent(body, Encoding.UTF8, "application/json");
             var responseMessage = await client.PostAsync($"{Options.Url}{function}", data);
-            
+            var str = await responseMessage.Content.ReadAsStringAsync();
+            var result = JsonConvert.DeserializeObject<TResult>(str);
+            return result;
+        }
+
+        public async Task<TResult> RefundsPostAsync<TInput, TResult>(TInput input, string function)
+        {
+            var client = HttpClientFactory.CreateClient(LifePaymentConstant.WxPayHttpClientName);
+            var body = JsonConvert.SerializeObject(input);
+            AddAuthHeader(client, BuildAuth(body, function));
+            var data = new StringContent(body, Encoding.UTF8, "application/json");
+            var responseMessage = await client.PostAsync($"{Options.Url}{function}", data);
             var str = await responseMessage.Content.ReadAsStringAsync();
             var result = JsonConvert.DeserializeObject<TResult>(str);
             return result;
@@ -129,9 +140,9 @@
             gcmBlockCipher.DoFinal(plaintext, length);
             return Encoding.UTF8.GetString(plaintext);
         }
+
         public string GeneratePaySignByKey(string message)
         {
-           
             return WxPayRsaHelper.Sign(message);
         }
 
@@ -148,8 +159,5 @@
             string signature = WxPayRsaHelper.Sign(message);
             return $"mchid=\"{Options.Mchid}\",nonce_str=\"{nonce}\",timestamp=\"{timestamp}\",serial_no=\"{Options.SerialNo}\",signature=\"{signature}\"";
         }
-
-
-
     }
 }
\ No newline at end of file

--
Gitblit v1.9.1