Exemple #1
0
        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);
        }
Exemple #2
0
        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));
            }
        }