public bool AlterarSenhaUsuarioLogado(AlterarSenhaUsuarioLogadoViewModel vm, int idUsuario) { using (DbSenaiContext ctx = new DbSenaiContext()) { try { Usuario usuarioBuscado = ctx.Usuario.Find(idUsuario); if (usuarioBuscado == null) { return(false); } vm.NovaSenha = Crypter.Criptografador(vm.NovaSenha); vm.SenhaAtual = Crypter.Criptografador(vm.SenhaAtual); if (usuarioBuscado.Senha == vm.SenhaAtual) { usuarioBuscado.Senha = vm.NovaSenha; ctx.Update(usuarioBuscado); ctx.SaveChanges(); return(true); } return(false); } catch (Exception) { return(false); } } }
public IActionResult AlterarSenha(AlterarSenhaUsuarioLogadoViewModel vm) { try { var idUsuario = Convert.ToInt32(HttpContext.User.Claims.FirstOrDefault(c => c.Type == JwtRegisteredClaimNames.Jti).Value); if (usuarioRepository.AlterarSenhaUsuarioLogado(vm, idUsuario)) { return(Ok("Senha alterada")); } else { return(BadRequest("Não foi possivel alterar a senha")); } } catch (Exception) { return(BadRequest()); } }