public void EditarDeficiencia(EditarDefView editDef) { tDeficiencia tDeficiencias = entity.tDeficiencias.First(m => m.IdDeficiencia == editDef.IdDeficiencia); editDef.DeficienciaActual.IdPrototipo = editDef.IdPrototipo; editDef.DeficienciaActual.IdFase = editDef.IdFase; editDef.DeficienciaActual.Fecha = editDef.Fecha; editDef.DeficienciaActual.IdUsuarioCreador = editDef.IdUsuarioCreador; editDef.DeficienciaActual.Descripcion = editDef.Descripcion; editDef.DeficienciaActual.Limitaciones = editDef.Limitaciones; editDef.DeficienciaActual.Bloqueo = editDef.Bloqueo; var user = HttpContext.Current.User.Identity.Name; if (tDeficiencias.Bloqueo == false && editDef.Bloqueo == true) { editDef.DeficienciaActual.IdUsuarioBloqueo = user; } else { editDef.DeficienciaActual.IdUsuarioBloqueo = editDef.IdUsuarioBloqueo; } entity.tDeficiencias.ApplyCurrentValues(editDef.DeficienciaActual); entity.SaveChanges(); }
public ActionResult EditarDefFase(int id) { var user = System.Web.HttpContext.Current.User.Identity.Name; EditarDefView editDef = new EditarDefView(id); var proy = dre.tPrototipos.FirstOrDefault(f => f.IdPrototipo == editDef.IdPrototipo); if (editDef.DeficienciaActual.FechaResolucion == null) { if (editDef.IdUsuarioCreador == user || proy.Responsable == user) { string proyecto = proy.Proyecto; ViewBag.Message = " del proyecto "; ViewBag.Message2 = proyecto; ViewBag.idProy = editDef.IdPrototipo; string usCreador = editDef.IdUsuarioCreador; var usCre = dre.tUsuarios.FirstOrDefault(u => u.IdUsuario == usCreador); ViewBag.usCreador = usCre.Usuario; if (editDef.Bloqueo == true) { ViewBag.Bloqueo = "Sí"; } else { ViewBag.Bloqueo = "No"; } string usBloqueo = editDef.IdUsuarioBloqueo; if (usBloqueo != null) { var usBloq = dre.tUsuarios.FirstOrDefault(u => u.IdUsuario == usBloqueo); ViewBag.usBloqueo = usBloq.Usuario; } ViewBag.otros = (from fa in dre.tFaseAfectas where fa.IdDeficienciaFas == id && fa.IdSistema == 29 select fa.Otros).FirstOrDefault(); ViewBag.ErrorMessage = TempData["ErrorMessage"]; return(View(editDef)); } else { TempData["ErrorMessage"] = "Solo puede editar la deficiencia su creador o el responsable del proyecto"; return(RedirectToAction("DefsFase", new { id = editDef.IdFase })); } } else { TempData["ErrorMessage"] = "No se pueden editar deficiencias resueltas. Cree una nueva."; return(RedirectToAction("DefsFase", new { id = editDef.IdFase })); } }
public ActionResult EditarDefFase(EditarDefView editDef, int[] selectedSistemas) { ProyectosManager proy = new ProyectosManager(editDef.IdPrototipo); string proyecto = proy.ProyectoActual.Proyecto; ViewBag.Message = " del proyecto "; ViewBag.Message2 = proyecto; ViewBag.idProy = editDef.IdPrototipo; string usCreador = editDef.IdUsuarioCreador; var usCre = dre.tUsuarios.FirstOrDefault(u => u.IdUsuario == usCreador); ViewBag.usCreador = usCre.Usuario; if (editDef.Bloqueo == true) { ViewBag.Bloqueo = "Sí"; } else { ViewBag.Bloqueo = "No"; } string usBloqueo = editDef.IdUsuarioBloqueo; if (usBloqueo != null) { var usBloq = dre.tUsuarios.FirstOrDefault(u => u.IdUsuario == usBloqueo); ViewBag.usBloqueo = usBloq.Usuario; } ViewBag.otros = (from fa in dre.tFaseAfectas where fa.IdDeficienciaFas == editDef.IdDeficiencia && fa.IdSistema == 29 select fa.Otros).FirstOrDefault(); if (ModelState.IsValid) { if (selectedSistemas == null) { TempData["ErrorMessage"] = "Debe especificar al menos un sistema de seguridad o limitador"; } else if (proy.IsOtrosSelected(selectedSistemas) && editDef.Otros == null) { TempData["ErrorMessage"] = "Si como sistema de seguridad elige 'Otros', debe especificarlo"; } else { proy.EditarDeficiencia(editDef); proy.AddSistema(editDef.IdDeficiencia, editDef.Otros, selectedSistemas); if (editDef.Bloqueo == true) { TempData["ErrorMessage"] = "¡Debe poner carteles de bloqueo a pie de prototipo y en mando control remoto!"; } TempData["SuccessMessage"] = "Deficiencia editada con éxito"; return(RedirectToAction("DefsFase", new { id = editDef.IdFase })); } } ViewBag.ErrorMessage = TempData["ErrorMessage"]; return(View(editDef)); }