Files
BackOffice.BFF/src/BackOffice.BFF.Application/CommissionCQ/Commands/ProcessWithdrawal/ProcessWithdrawalCommandHandler.cs

32 lines
1.1 KiB
C#

using BackOffice.BFF.Commission.Protobuf;
namespace BackOffice.BFF.Application.CommissionCQ.Commands.ProcessWithdrawal;
public class ProcessWithdrawalCommandHandler : IRequestHandler<ProcessWithdrawalCommand, ProcessWithdrawalResponseDto>
{
private readonly IApplicationContractContext _context;
public ProcessWithdrawalCommandHandler(IApplicationContractContext context)
{
_context = context;
}
public async Task<ProcessWithdrawalResponseDto> Handle(ProcessWithdrawalCommand request, CancellationToken cancellationToken)
{
var grpcRequest = new ProcessWithdrawalRequest
{
WithdrawalId = request.WithdrawalId,
TransactionId = request.TransactionId ?? string.Empty,
AdminNote = request.AdminNote ?? string.Empty
};
var response = await _context.Commissions.ProcessWithdrawalAsync(grpcRequest, cancellationToken: cancellationToken);
return new ProcessWithdrawalResponseDto
{
Success = response.Success,
Message = response.Message
};
}
}