示例#1
0
        public ActionResult AlterarSenha(Guid id)
        {
            var func = Repository.PesquisarPeloId(id);
            var modelAlterarSenha = new FuncionarioAlterarSenha()
            {
                Id   = func.Id,
                Nome = func.Nome
            };

            return(View(modelAlterarSenha));
        }
示例#2
0
        public ActionResult GravaAlteracaoSenha(FuncionarioAlterarSenha funcSenha)
        {
            try
            {
                var entity = Repository.PesquisarPeloId(funcSenha.Id);

                if (entity.Senha == Criptografia.Encrypt(funcSenha.SenhaAtual))
                {
                    if (Criptografia.Encrypt(funcSenha.SenhaNova) == Criptografia.Encrypt(funcSenha.SenhaNovaConfirmacao))
                    {
                        entity.Senha = Criptografia.Encrypt(funcSenha.SenhaNova);

                        Repository.Salvar(entity);
                        Context.SaveChanges();

                        // Se funcionario editado for o usuário logado, atualiza a Sessao do usuário logado...
                        if (entity.Id == Sessao.FuncionarioLogado.Id)
                        {
                            Session.Remove("Funcionario");
                            Session.Add("Funcionario", entity);
                        }


                        TempData["Mensagem"] = "Senha alterada com sucesso!";
                    }
                    else
                    {
                        TempData["MensagemErro"] = "A confirmação de senha não confere com a nova senha! Tente novamente!";
                    }
                }
                else
                {
                    TempData["MensagemErro"] = "Senha informada não confere com a antiga! Tente novamente!";
                }
                return(RedirectToAction("Index"));
            }
            catch (Exception e)
            {
                TempData["MensagemErro"] = "Erro ao alterar a senha do funcionário!" + e.Message;
                return(RedirectToAction("Index"));
            }
        }