예제 #1
0
        public async Task <UsuarioResponseLoginDTO> UsuarioLogin(UsuarioRequestLoginDTO usuarioRequestLogin)
        {
            try
            {
                UsuarioResponseLoginDTO usuarioResponse = new UsuarioResponseLoginDTO();

                var res = await repository.Query().Where(w => w.Login == usuarioRequestLogin.Login).FirstOrDefaultAsync();

                if (res == null)
                {
                    usuarioResponse.UserExistente = false;
                    usuarioResponse.Erro          = "Usuário não cadastrado, favor entrar em contato com o Administrador!";
                }
                else
                {
                    if (!criptografia.ComparaMD5(usuarioRequestLogin.Senha, res.Senha))
                    {
                        usuarioResponse.UserExistente = true;
                        usuarioResponse.Erro          = "Usuário e senha não confere!";
                    }
                    else
                    {
                        usuarioResponse.Nome          = res.Nome;
                        usuarioResponse.Perfil        = res.Perfil;
                        usuarioResponse.UserExistente = true;
                    }
                }

                return(usuarioResponse);
            }
            catch (Exception ex)
            {
                throw new Exception("Erro ao realizar login do usuário: " + ex.Message);
            }
        }
 public async Task <IActionResult> LoginUsuario(UsuarioRequestLoginDTO usuarioRequest)
 {
     return(Ok(await usuarioService.UsuarioLogin(usuarioRequest)));
 }