using Furion; using Furion.DependencyInjection; using Microsoft.Extensions.FileSystemGlobbing; using SKIT.FlurlHttpClient.Wechat.TenpayV3; using SKIT.FlurlHttpClient.Wechat.TenpayV3.Models; using SKIT.FlurlHttpClient.Wechat.TenpayV3.Settings; using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; using static SKIT.FlurlHttpClient.Wechat.Api.Events.TransferCustomerServiceReply.Types; using static SKIT.FlurlHttpClient.Wechat.Api.Models.CgibinOpenApiRequestIdGetResponse.Types; namespace EzWechat { /// /// 微信支付服务 /// public class WecharPayServicecs:IWecharPayServicecs, IScoped { private readonly WechatTenpayClient _V3Client; public WecharPayServicecs() { var manager = new InMemoryCertificateManager(); var options = new WechatTenpayClientOptions() { MerchantId = App.Configuration["WechartPay:MerchantId"], MerchantV3Secret = App.Configuration["WechartPay:lojdhuqyt5648dikunm623ddsl2543a5"], MerchantCertificateSerialNumber = App.Configuration["WechartPay:MerchantCertificateSerialNumber"], MerchantCertificatePrivateKey = System.IO.File.ReadAllText(App.Configuration["WechartPay:apiclient_keyFile"]), PlatformCertificateManager = manager // 平台证书管理器的具体用法请参阅下文的基础用法与加密、验签有关的章节 }; _V3Client = WechatTenpayClientBuilder.Create(options).Build(); } public async Task Transfer(CreateTransferBatchRequest request) { var response = await _V3Client.ExecuteCreateTransferBatchAsync(request); return response; } public async Task TransferBatches(GetTransferBatchByOutBatchNumberRequest request) { var response = await _V3Client.ExecuteGetTransferBatchByOutBatchNumberAsync(request); return response; } public async Task TransferBatchesDetails(GetTransferBatchDetailByDetailIdRequest request) { var response = await _V3Client.ExecuteGetTransferBatchDetailByDetailIdAsync(request); return response; } } }