public ActionResult AlterarSenha(UsuarioAlterarSenhaViewModel model) { if (ModelState.IsValid) { try { UsuarioRepositorio rep = new UsuarioRepositorio(); Usuario u = rep.EncontrarPorLogin(model.Login); rep.AlterarSenha(u, model.Senha, 0); return(RedirectToAction("Index", "Home")); } catch (Exception e) { throw e; } } else { return(View("AlterarSenhaManualmente")); } }
public async Task <IActionResult> AlterarSenha(UsuarioAlterarSenhaViewModel usuario, [FromQuery] string email) { Usuario user = _context.Usuario.Where(usr => usr.Email == email).FirstOrDefault(); if (usuario.Senha == user.Senha) { return(BadRequest(new { msg = "Sua senha não pode ser idêntica a senha anterior" })); } try { user.Senha = usuario.Senha; await _context.SaveChangesAsync(); } catch (DbUpdateConcurrencyException) { if (!UsuarioExists(email)) { return(NotFound(new { msg = "Não foi possível encontrar usuário" })); } } return(StatusCode(200, new { msg = $"Senha alterada com sucesso" })); }
public async Task <IActionResult> AlterarSenha([FromBody] UsuarioAlterarSenhaViewModel model) { await _clienteService.AlterarSenha(UsuarioId, model.SenhaAtual, model.NovaSenha); return(Response(UsuarioId)); }