Пример #1
0
 public Sistema()
 {
     Versao       = new VersaoBuild();
     Regra        = new RegraBuild();
     Usuario      = new UsuarioBuild();
     UsuarioRegra = new UsuarioRegraBuild();
 }
Пример #2
0
        public IResponse Autenticar(IRequest request)
        {
            if (!(request is null))
            {
                AutenticarUsuarioRequest autenticarUsuarioRequest = (AutenticarUsuarioRequest)request;

                var usuario = new UsuarioBuild()
                              .AdicionarEmail(autenticarUsuarioRequest.Email)
                              .AdicionarSenha(autenticarUsuarioRequest.Senha)
                              .BuildAutenticar();

                AddNotifications(usuario);

                if (IsValid())
                {
                    usuario = _repository.ObterPor(u => u.Email.ToString() == usuario.Email.ToString() && u.Senha == usuario.Senha);

                    if (!(usuario is null))
                    {
                        if (usuario.Status == StatusUsuario.Ativo)
                        {
                            return((AutenticarUsuarioResponse)usuario);
                        }
                        else
                        {
                            AddNotification("Status", $"Não foi possível efetuar o login. Status do usuário: {usuario.ObterStatusUsuario()}.");
                            return(null);
                        }
                    }
                    else
                    {
                        AddNotification("Usuário", "Nome de usuário e/ou senha incorretos.");
                        return(null);
                    }
                }