initial commit

This commit is contained in:
2026-07-21 15:03:40 +07:00
commit 5c20bb8a9e
2752 changed files with 864209 additions and 0 deletions
@@ -0,0 +1,46 @@
using Application.Common.Services.SecurityManager;
using FluentValidation;
using MediatR;
namespace Application.Features.SecurityManager.Commands;
public class LogoutResult
{
public LogoutResultDto? Data { get; set; }
}
public class LogoutRequest : IRequest<LogoutResult>
{
public string? UserId { get; init; }
}
public class LogoutValidator : AbstractValidator<LogoutRequest>
{
public LogoutValidator()
{
RuleFor(x => x.UserId).NotEmpty();
}
}
public class LogoutHandler : IRequestHandler<LogoutRequest, LogoutResult>
{
private readonly ISecurityService _securityService;
public LogoutHandler(ISecurityService securityService)
{
_securityService = securityService;
}
public async Task<LogoutResult> Handle(LogoutRequest request, CancellationToken cancellationToken)
{
var result = await _securityService.LogoutAsync(
request.UserId ?? "",
cancellationToken
);
return new LogoutResult
{
Data = result
};
}
}