public bool MudarSenha(MudarSenhaModel model, string login) { if (login.Equals("Storytelling")) { return(false); } model.SenhaAtual = GerenciadorAcesso.Cifrar(model.SenhaAtual); model.SenhaNova = GerenciadorAcesso.Cifrar(model.SenhaNova); using (var context = Context) { var usuario = context.CreateObjectSet <Usuario>().Single(usu => usu.Login.Equals(login)); if (usuario.Senha.Equals(model.SenhaAtual)) { usuario.Senha = model.SenhaNova; SalvarContexto(context); return(true); } } return(false); }
public HttpResponseMessage MudarSenha([FromBody] MudarSenhaModel model) { return(ExecuteFunction(() => { if (ModelState.IsValid) { var result = usuarioService.MudarSenha(model, UsuarioCorrente); return Request.CreateResponse(HttpStatusCode.OK, result); } else { return ModelInvalidResponse(); } })); }
public RetornoModel MudarSenha(MudarSenhaModel model, int usuarioAtual) { var result = new RetornoModel(); try { var usuario = _ado.Carregar(usuarioAtual); if (usuario == null) { result.Mensagem = "Usuario não está autenticado. Por favor efetue novamente o login antes de continuar"; return(result); } else { if (model.UsuarioDiferente && usuario.Perfil != PerfilUsuario.Administrador) { result.Mensagem = "Você não possui permissão para realizar essa operação"; return(result); } if (!model.UsuarioDiferente) { if (!CriptografiaUtil.VerificarSenha(usuario.Senha, model.SenhaAtual)) { result.Mensagem = "Senha atual não confere!"; return(result); } model.IdUsuario = usuarioAtual; } result.Sucesso = _ado.MudarSenha(CriptografiaUtil.CriptografarSenha(model.NovaSenha), model.IdUsuario); result.Mensagem = "Senha alterada com sucesso!"; } return(result); } catch (Exception ex) { LogUtil.Error(ex); throw; } }