コード例 #1
0
        /// <summary>
        /// Salvar a senha do usuário no hitórico
        /// </summary>
        /// <param name="usu">Objeto Usuário carregado do autenticador</param>
        /// <param name="retornoWebService">Retorno do Webservice do cliente (por enquanto configurado o de Integração Externa : 0 [sucesso] e -1 [não encontrado / usuário ou senha não estão corretos])</param>
        /// <returns>Enum LoginStatus: 0 [Sucesso] ou  5[Erro]</returns>
        public static LoginStatus SalvarSenhaUsuario(SYS_Usuario usu, string retornoWebService)
        {
            SYS_UsuarioSenhaHistoricoDAO dao = new SYS_UsuarioSenhaHistoricoDAO();
            LoginStatus status = LoginStatus.Sucesso;

            try
            {
                if (retornoWebService.Equals("0"))
                {
                    string senhaDescriptografada = usu.usu_senha;
                    dao._Banco.Open(IsolationLevel.ReadCommitted);


                    eCriptografa criptografia = (eCriptografa)Enum.Parse(typeof(eCriptografa), Convert.ToString(usu.usu_criptografia), true);

                    if (!Enum.IsDefined(typeof(eCriptografa), criptografia))
                    {
                        criptografia = eCriptografa.TripleDES;
                    }

                    usu.usu_senha = UtilBO.CriptografarSenha(usu.usu_senha, criptografia);

                    if (SYS_UsuarioSenhaHistoricoBO.Salvar(usu, dao._Banco))
                    {
                        status = LoginStatus.Sucesso;
                    }
                }
                else if (retornoWebService.Equals("-1"))
                {// CASO NÃO ENCONTRE O USUARIO OU A SENHA NÃO ESTEJA EM CONFORME
                    status = LoginStatus.NaoEncontrado;
                }
                else
                {// OUTRO ERRO
                    status = LoginStatus.Erro;
                }
            }
            catch (Exception e)
            {
                status = LoginStatus.Erro;
                dao._Banco.Close(e);
                // msg("Houve um erro na autenticação (SOAP).")
            }
            finally
            {
                dao._Banco.Close();
            }
            return(status);
        }