public IActionResult AlterarDados(PacienteAlteracaoVM pModel) { try { ViewData[Constantes.ViewDataMensagemErro] = ViewData[Constantes.ViewDataMensagemRetorno] = null; /*Verifica se o modelo é valido, de acordo com os atributos da classe passado no parâmetro*/ if (!ModelState.IsValid) { return(View(pModel)); } PacienteAlteracao pacienteAlteracao = _ServicePaciente.ConsultarPacientePorID(Convert.ToInt32(User.Claims.FirstOrDefault(c => c.Type == Constantes.IDUsuarioLogado).ValueType)); if (pacienteAlteracao == null) { return(NoContent()); } else if (!pacienteAlteracao.Senha.Equals(pModel.Senha)) { throw new Exception(Constantes.MensagemErroSenhaNaoLocalizada); } _ServicePaciente.AlterarDados(new PacienteAlteracao(Convert.ToInt32(User.Claims.FirstOrDefault(c => c.Type == Constantes.IDUsuarioLogado).ValueType), pModel.Nome, pModel.Telefone, pModel.Login, pModel.Senha, pacienteAlteracao.CpfObjeto) { ID = Convert.ToInt32(User.Claims.FirstOrDefault(c => c.Type == Constantes.IDUsuarioLogado).ValueType) }); ViewData[Constantes.ViewDataMensagemRetorno] = "Dados do paciente alterado com sucesso"; /*Redireciona para a página Index.cshtml da pasta Login*/ return(View(pModel)); } catch (Exception ex) { ViewData[Constantes.ViewDataMensagemErro] = ex.Message; return(View(pModel)); } }
public IActionResult AlterarDados(int ID) { if (ID == 0 || ID < 0) { return(BadRequest()); } /*Se o usuário logado tenta alterar os dados de outro usuário*/ if (Convert.ToInt32(User.Claims.FirstOrDefault(c => c.Type == Constantes.IDUsuarioLogado).ValueType) != ID) { return(RedirectToAction("Index", "Home")); } PacienteAlteracaoVM pacienteAlteracaoVM = null; PacienteAlteracao pacienteAlteracao = _ServicePaciente.ConsultarPacientePorID(ID); if (pacienteAlteracao != null) { pacienteAlteracaoVM = new PacienteAlteracaoVM() { ID = pacienteAlteracao.ID, Login = pacienteAlteracao.Login, Nome = pacienteAlteracao.Nome, Senha = pacienteAlteracao.Senha, SenhaConfirmacao = pacienteAlteracao.Senha, Telefone = pacienteAlteracao.Telefone }; } if (pacienteAlteracaoVM == null) { return(NoContent()); } return(View(pacienteAlteracaoVM)); }