Api/NetinaShop.Repository/Handlers/Accounting/CreatePaymentCommandHandler.cs

26 lines
910 B
C#

using NetinaShop.Domain.Entities.Accounting;
namespace NetinaShop.Repository.Handlers.Accounting;
public class CreatePaymentCommandHandler : IRequestHandler<CreatePaymentCommand,bool>
{
private readonly IRepositoryWrapper _repositoryWrapper;
public CreatePaymentCommandHandler(IRepositoryWrapper repositoryWrapper)
{
_repositoryWrapper = repositoryWrapper;
}
public async Task<bool> Handle(CreatePaymentCommand request, CancellationToken cancellationToken)
{
var payment = Payment.Create(request.FactorNumber, request.Amount, request.Description, request.TransactionCode,
request.CardPan, request.Authority, request.Type,request.Status, request.OrderId, request.UserId);
_repositoryWrapper.SetRepository<Payment>()
.Add(payment);
await _repositoryWrapper.SaveChangesAsync(cancellationToken);
return true;
}
}