public async Task <BaseResponseDto <Token> > Handle(AutenticarLoginRequest request, CancellationToken cancellationToken) { var response = new BaseResponseDto <Token>(); const string messageUserInvalid = "Usuário ou Senha inválido."; try { if (string.IsNullOrEmpty(request.Login) || string.IsNullOrEmpty(request.Senha)) { response.Errors.Add(messageUserInvalid); return(response); } var login = await _repository.FindWhereAsync(p => p.Login == request.Login && p.Senha == request.Senha); if (login == default) { response.Errors.Add(messageUserInvalid); return(response); } response.Data = await _jwtFactory.GenerateEncodedToken(login.Id.ToString(), login.Login); } catch (Exception ex) { _logger.LogError(ex, ex.Message); response.Errors.Add("Falha ao buscar o login."); } return(response); }
public async Task <ActionResult> Post([FromBody] AutenticarLoginRequest request) { var autenticarLoginRequest = await _mediator.Send(request); if (!autenticarLoginRequest.HasError) { return(Ok(autenticarLoginRequest.Data)); } else { return(BadRequest(autenticarLoginRequest.Errors)); } }