add dad-mehr api gateway for test

This commit is contained in:
MahanCh
2025-07-16 11:59:02 +03:30
parent a63fed8c4a
commit eecdcc11c0
5 changed files with 27 additions and 17 deletions

View File

@@ -0,0 +1,6 @@
namespace _0_Framework.Application;
public class AppSettingConfiguration
{
public string Domain { get; set; }
}

View File

@@ -8,27 +8,34 @@ using System.Security.Principal;
using System.Text;
using System.Threading;
using System.Threading.Tasks;
using Microsoft.Extensions.Options;
namespace _0_Framework.Application.PaymentGateway;
public class AqayePardakhtPaymentGateway:IPaymentGateway
{
private const string Pin = "86EAF2C4D052F7D8759F";
private static string _pin = "86EAF2C4D052F7D8759F";
private const string AccountNumber = "AP.1042276242";
private const string EncryptedKey = "130D2@D2923";
private readonly HttpClient _httpClient;
public AqayePardakhtPaymentGateway(IHttpClientFactory httpClientFactory)
public AqayePardakhtPaymentGateway(IHttpClientFactory httpClientFactory,IOptions<AppSettingConfiguration> appSetting)
{
_httpClient = httpClientFactory.CreateClient();
if (appSetting.Value.Domain == ".dad-mehr.ir")
{
_pin = "7349F84E81AB584862D9";
}
}
public async Task<PaymentGatewayResponse> Create(CreatePaymentGatewayRequest command,CancellationToken cancellationToken =default)
{
var response = await _httpClient.PostAsJsonAsync("https://panel.aqayepardakht.ir/api/v2/create", new
{
pin = Pin,
pin = _pin,
amount = command.Amount,
callback = command.CallBackUrl,
card_number = command.CardNumber,
@@ -49,7 +56,7 @@ public class AqayePardakhtPaymentGateway:IPaymentGateway
{
var response = await _httpClient.PostAsJsonAsync("https://panel.aqayepardakht.ir/api/v2/verify", new
{
pin = Pin,
pin = _pin,
amount = command.Amount,
transid = command.TransactionId,
}, cancellationToken: cancellationToken);