using Furion;
|
using Furion.DependencyInjection;
|
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.Models.CgibinOpenApiRequestIdGetResponse.Types;
|
|
namespace EzWechat
|
{
|
/// <summary>
|
/// 微信支付服务
|
/// </summary>
|
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<CreateTransferBatchResponse> PayOderAsync(CreateTransferBatchRequest request)
|
{
|
|
var response = await _V3Client.ExecuteCreateTransferBatchAsync(request);
|
return response;
|
|
}
|
}
|
}
|