Add response DTOs for withdrawal and club activation commands

This commit is contained in:
masoodafar-web
2025-11-30 23:39:31 +03:30
parent 698c044be6
commit bfeb6456af
56 changed files with 3043 additions and 1 deletions

View File

@@ -0,0 +1,14 @@
namespace BackOffice.BFF.Application.CommissionCQ.Commands.ApproveWithdrawal;
public record ApproveWithdrawalCommand : IRequest<ApproveWithdrawalResponseDto>
{
/// <summary>
/// شناسه درخواست برداشت
/// </summary>
public long WithdrawalId { get; init; }
/// <summary>
/// یادداشت مدیر (اختیاری)
/// </summary>
public string? AdminNote { get; init; }
}

View File

@@ -0,0 +1,30 @@
using BackOffice.BFF.Commission.Protobuf;
namespace BackOffice.BFF.Application.CommissionCQ.Commands.ApproveWithdrawal;
public class ApproveWithdrawalCommandHandler : IRequestHandler<ApproveWithdrawalCommand, ApproveWithdrawalResponseDto>
{
private readonly IApplicationContractContext _context;
public ApproveWithdrawalCommandHandler(IApplicationContractContext context)
{
_context = context;
}
public async Task<ApproveWithdrawalResponseDto> Handle(ApproveWithdrawalCommand request, CancellationToken cancellationToken)
{
var grpcRequest = new ApproveWithdrawalRequest
{
WithdrawalId = request.WithdrawalId,
AdminNote = request.AdminNote ?? string.Empty
};
var response = await _context.Commissions.ApproveWithdrawalAsync(grpcRequest, cancellationToken: cancellationToken);
return new ApproveWithdrawalResponseDto
{
Success = response.Success,
Message = response.Message
};
}
}

View File

@@ -0,0 +1,7 @@
namespace BackOffice.BFF.Application.CommissionCQ.Commands.ApproveWithdrawal;
public record ApproveWithdrawalResponseDto
{
public bool Success { get; init; }
public string Message { get; init; } = string.Empty;
}