Beispiel #1
0
        public void Salvar(Administrador obj, String senha, String ConfirmarSenha, bool AlterarSenha)
        {
            BancoDeDados bancoDeDados = BancoDeDados.ObterInstancia();

            try
            {
                if (_validar.Salvar(obj, senha, ConfirmarSenha, AlterarSenha))
                {
                    #region Mensagem
                    Mensagem msgSucesso = Mensagem.Administrador.Salvar;

                    if (obj.Id > 0)
                    {
                        msgSucesso = Mensagem.Administrador.Editar;
                    }
                    #endregion

                    bancoDeDados = BancoDeDados.ObterInstancia();
                    bancoDeDados.IniciarTransacao();
                    GerenciadorTransacao.ObterIDAtual();

                    #region Usuario

                    string hashSenha = GerenciarAutenticacao.Criptografar(obj.Usuario.Login, senha);
                    AutenticacaoExecutor executor = GerenciarAutenticacao.ObterAutenticacaoExecutor();

                    if (obj.Usuario.Id <= 0)
                    {
                        _busUsuario.Salvar(obj.Usuario, hashSenha, executor, bancoDeDados);
                    }
                    else
                    {
                        if (!String.IsNullOrEmpty(senha))
                        {
                            _busUsuario.AlterarSenha(obj.Usuario, hashSenha, executor, bancoDeDados);
                            obj.Situacao = 3;                            //Alterar senha
                        }
                    }
                    #endregion

                    #region Funcionário
                    _da.Salvar(obj, bancoDeDados);
                    #endregion

                    bancoDeDados.Commit();

                    Validacao.Add(msgSucesso);
                }
            }
            catch (Exception exc)
            {
                bancoDeDados.Rollback();
                Validacao.AddErro(exc);
            }
            finally
            {
                bancoDeDados.Dispose();
            }
        }
Beispiel #2
0
        public bool AlterarSenha(String login, String senha, String novaSenha, String confirmarNovaSenha, BancoDeDados banco = null)
        {
            if (!_validar.AlterarSenha(login, senha, novaSenha, confirmarNovaSenha))
            {
                return(false);
            }

            Usuario usuario = _busUsuario.ValidarUsuario(login, GerenciarAutenticacao.Criptografar(login, senha));

            if (usuario == null || usuario.Id == 0)
            {
                Validacao.Add(Mensagem.Login.LoginSenhaInvalido);
                return(false);
            }

            string senhaNovaHash = GerenciarAutenticacao.Criptografar(login, novaSenha);

            if (_busUsuario.VerificarHistoricoSenha(usuario.Id, senhaNovaHash, _configUsuario.Obter <Int32>(ConfiguracaoUsuario.keyQtdVerificaoUltimaSenha)))
            {
                Validacao.Add(Mensagem.Login.HistoricoSenha(_configUsuario.Obter <Int32>(ConfiguracaoUsuario.keyQtdVerificaoUltimaSenha)));
                return(false);
            }

            CredenciadoPessoa    credenciado = _da.ObterCredenciadoExecutor(login);
            AutenticacaoExecutor executor    = GerenciarAutenticacao.ObterAutenticacaoExecutor();

            if (executor == null)
            {
                executor           = new AutenticacaoExecutor();
                executor.Tipo      = (int)eCredenciadoSituacao.Ativo;
                executor.UsuarioId = credenciado.Usuario.Id;
                executor.Tid       = credenciado.Tid;
            }

            using (BancoDeDados bancoDeDados = BancoDeDados.ObterInstancia(UsuarioCredenciado))
            {
                bancoDeDados.IniciarTransacao();
                _busUsuario.AlterarSenha(usuario, senhaNovaHash, executor, bancoDeDados);

                _da.AlterarSenha(usuario.Id, credenciado, bancoDeDados);
                bancoDeDados.Commit();
            }

            Validacao.Add(Mensagem.Login.SenhaAlterada);

            return(true);
        }
Beispiel #3
0
        public bool Salvar(Funcionario funcionario, String senha, String ConfirmarSenha)
        {
            try
            {
                if (_validar.Salvar(funcionario, senha, ConfirmarSenha))
                {
                    #region Mensagem

                    Mensagem msgSucesso = Mensagem.Funcionario.Salvar;

                    if (funcionario.Id > 0)
                    {
                        msgSucesso = Mensagem.Funcionario.Editar;
                    }

                    if (funcionario.Id > 0 && funcionario.Tipo != 3)
                    {
                        throw new Exception("Tipo de funcionário inválido");
                    }

                    #endregion


                    #region Arquivos/Diretorio
                    ArquivoBus _busArquivo = new ArquivoBus(eExecutorTipo.Interno);

                    if (funcionario.Arquivo != null && !String.IsNullOrWhiteSpace(funcionario.Arquivo.TemporarioNome))
                    {
                        if (funcionario.Arquivo.Id == 0)
                        {
                            funcionario.Arquivo = _busArquivo.Copiar(funcionario.Arquivo);
                        }
                    }
                    #endregion

                    GerenciadorTransacao.ObterIDAtual();

                    using (BancoDeDados bancoDeDados = BancoDeDados.ObterInstancia())
                    {
                        bancoDeDados.IniciarTransacao();

                        #region Usuario

                        string hashSenha = GerenciarAutenticacao.Criptografar(funcionario.Usuario.Login, senha);
                        AutenticacaoExecutor executor = GerenciarAutenticacao.ObterAutenticacaoExecutor();

                        if (funcionario.Usuario.Id <= 0)
                        {
                            _busUsuario.Salvar(funcionario.Usuario, hashSenha, executor, bancoDeDados);
                        }
                        else
                        {
                            if (!String.IsNullOrEmpty(senha))
                            {
                                _busUsuario.AlterarSenha(funcionario.Usuario, hashSenha, executor, bancoDeDados);
                                funcionario.Situacao = 5;                                //Alterar senha
                            }
                        }

                        #endregion


                        #region Arquivos/Banco
                        ArquivoDa arquivoDa = new ArquivoDa();

                        if (funcionario.Arquivo != null && !String.IsNullOrWhiteSpace(funcionario.Arquivo.TemporarioNome))
                        {
                            if (funcionario.Arquivo.Id == 0)
                            {
                                arquivoDa.Salvar(funcionario.Arquivo, User.FuncionarioId, User.Name, User.Login, (int)eExecutorTipo.Interno, User.FuncionarioTid, bancoDeDados);
                            }
                        }
                        #endregion


                        _da.Salvar(funcionario, bancoDeDados);
                        bancoDeDados.Commit();
                    }

                    Validacao.Add(msgSucesso);
                }
            }
            catch (Exception exc)
            {
                Validacao.AddErro(exc);
            }

            return(Validacao.EhValido);
        }