Пример #1
0
        public ActionResult AlterarSenha(Usuario User)
        {
            Usuario usuario;

            //Verifica se o usuário está ativo! Caso não esteja, vai para a tela de login
            //----------------------------------------------------------------------------------------------------------------------
            usuario = (Usuario)Session["Usuario"];

            if (usuario == null || usuario.Ativo != true)
            {
                return(RedirectToAction("Logar", "Usuario"));
            }
            //----------------------------------------------------------------------------------------------------------------------
            ViewBag.IdEmpresa = usuario.Empresa.IdEmpresa; ViewBag.NomeEmpresa = usuario.Empresa.NomeFantasia; ViewBag.NomeUsuario = usuario.Login; ViewBag.CNPJEmpresa = "CNPJ: " + @Convert.ToUInt64(usuario.Empresa.CNPJ).ToString(@"00\.000\.000\/0000\-00");


            //Senha Inválida!
            //----------------------------------------------------------------------------------
            if (Request.Form["Senha"] != Request.Form["ConfirmarSenha"])
            {
                usuario.Senha         = "";
                ViewBag.MensagemErro  = "";
                ViewBag.MensagemSenha = "A senha não confere!";
                return(View(usuario));
            }
            //----------------------------------------------------------------------------------

            bool Retorno = UsuarioDados.ConfereSenhaAtual(usuario);

            if (Retorno == false)
            {
                ViewBag.MensagemErro  = "";
                ViewBag.MensagemSenha = "A Senha já foi alterada por outra sessão.";
                return(View(usuario));
            }
            //----------------------------------------------------------------------------------

            usuario.Senha          = User.Senha;
            usuario.ConfirmarSenha = User.ConfirmarSenha;

            try
            {
                //Gravar o usuario
                //----------------------------------------------------------------------------------
                UsuarioDados.AlterarSenha(usuario);

                return(RedirectToAction("Index", "Home"));

                //----------------------------------------------------------------------------------
            }
            catch (Exception erro)
            {
                ViewBag.MensagemErro  = erro;
                ViewBag.MensagemSenha = "";
                //Em caso de erro retorna a mensagem de erro
                return(View(usuario));
            }
        }