public ActionResult Edit(int?id) { if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } var solicitacao = db.Solicitacaos.Find(id); if (solicitacao == null) { return(HttpNotFound()); } var v_Role = new RoleManager <IdentityRole>(new RoleStore <IdentityRole>(db)).FindByName("Monitor"); var v_SolicitacaoEdicaoViewModel = new SolicitacaoEdicaoViewModel { Id = id.Value, FatoCotidiano = solicitacao.FatoCotidiano.Nome, IdentificacaoPartes = solicitacao.IdentificacaoPartes, Situacao = solicitacao.Situacao, DataCadastro = solicitacao.DataCadastro, Duvida = solicitacao.Duvida, Descricao = solicitacao.Descricao, Parecer = solicitacao.Parecer, Fundamentacao = solicitacao.Fundamentacao, Correcao = solicitacao.Correcao, Monitores = db.Users.Where(p => p.Roles.Any(r => r.RoleId == v_Role.Id)).ToList() }; return(View(v_SolicitacaoEdicaoViewModel)); }
public ActionResult Edit(SolicitacaoEdicaoViewModel p_SolicitacaoEdicaoViewModel) { try { if (ModelState.IsValid) { Solicitacao v_Solicitacao = db.Solicitacaos.Find(p_SolicitacaoEdicaoViewModel.Id); v_Solicitacao.Fundamentacao = p_SolicitacaoEdicaoViewModel.Fundamentacao; v_Solicitacao.Parecer = p_SolicitacaoEdicaoViewModel.Parecer; v_Solicitacao.Correcao = p_SolicitacaoEdicaoViewModel.Correcao; if (Request.Form["EnviarMonitor"] != null) { v_Solicitacao.Situacao = SituacaoEnum.EmAnalise; v_Solicitacao.UsuarioAlunoId = p_SolicitacaoEdicaoViewModel.GuidMonitor; } if (Request.Form["EnviarCliente"] != null) { v_Solicitacao.Situacao = SituacaoEnum.Respondido; v_Solicitacao.UsuarioAlunoId = null; } if (Request.Form["SalvarAlteracoes"] != null) { v_Solicitacao.Situacao = SituacaoEnum.AguardandoAceite; v_Solicitacao.UsuarioAlunoId = p_SolicitacaoEdicaoViewModel.GuidMonitor; } db.SaveChanges(); return(RedirectToAction("Index")); } } catch (DbEntityValidationException e) { foreach (var eve in e.EntityValidationErrors) { Console.WriteLine("Entity of type \"{0}\" in state \"{1}\" has the following validation errors:", eve.Entry.Entity.GetType().Name, eve.Entry.State); foreach (var ve in eve.ValidationErrors) { Console.WriteLine("- Property: \"{0}\", Error: \"{1}\"", ve.PropertyName, ve.ErrorMessage); } } throw; } return(View(p_SolicitacaoEdicaoViewModel)); }