public ActionResult EditarRecursos(int Pk_Id_RecursoporSede, int Pk_Id_RecursoFase, int Pk_Id_RecursoTipoRecurso, int Pk_Id_Recurso) { var usuarioActual = ObtenerUsuarioEnSesion(System.Web.HttpContext.Current); if (usuarioActual == null) { ViewBag.mensaje1 = "Debe Registrarse para Ingresar a este Modulo."; return(RedirectToAction("Login", "Home")); } RecursoporSede recursosede = db.Tbl_RecursoporSede.Find(Pk_Id_RecursoporSede); if (recursosede == null) { return(HttpNotFound()); } RecursoFase recursofase = db.Tbl_RecursoFase.Find(Pk_Id_RecursoFase); if (recursofase == null) { return(HttpNotFound()); } RecursoTipoRecurso recursotipo = db.Tbl_RecursoTipoRecurso.Find(Pk_Id_RecursoTipoRecurso); if (recursotipo == null) { return(HttpNotFound()); } ViewBag.Fk_Id_Sede = new SelectList(sedeRepositorio.SedesPorEmpresa(usuarioActual.IdEmpresa), "Pk_Id_Sede", "Nombre_Sede", recursosede.Fk_Id_Sede); ViewBag.Fk_Id_Fase = new SelectList(faserepositorio.ObtenerFase(), "Pk_Id_Fase", "Descripcion_Fase", recursofase.Fk_Id_Fase); ViewBag.Fk_Id_TipoRecurso = new SelectList(tiporecursorepositorio.ObtenerTipoRecurso(), "Pk_Id_TipoRecurso", "Descripcion_Tipo_Recurso", recursotipo.Fk_Id_TipoRecurso); var recurso = db.Tbl_Recurso.Find(Pk_Id_Recurso); List <SelectListItem> Periodos = recursosServicios.ObtenerPeriodosAnios(anioIncial, anioFinal); ViewBag.Periodo = new SelectList(Periodos, "Value", "Text", recurso.Periodo); return(View("EditarRecursos", recursosede)); }
public ActionResult GrabarRecursosEditados( Recurso recurso, RecursoporSede recursoporsede, RecursoFase recursofase, RecursoTipoRecurso recursotiporecurso) { var usuarioActual = ObtenerUsuarioEnSesion(System.Web.HttpContext.Current); if (usuarioActual == null) { ViewBag.mensaje1 = "Debe Registrarse para Ingresar a este Modulo."; return(RedirectToAction("Login", "Home")); } using (var transaction = db.Database.BeginTransaction()) { try { recurso.RecursosporSede = new List <RecursoporSede>(); recurso.RecursosporSede.Add(recursoporsede); recurso.RecursosFase = new List <RecursoFase>(); recurso.RecursosFase.Add(recursofase); recurso.RecursosTipoRecursos = new List <RecursoTipoRecurso>(); recurso.RecursosTipoRecursos.Add(recursotiporecurso); recurso.Nombre_Recurso = recurso.Nombre_Recurso.ToUpper(); db.Entry(recurso).State = EntityState.Modified; db.Entry(recursofase).State = EntityState.Modified; db.Entry(recursotiporecurso).State = EntityState.Modified; db.SaveChanges(); transaction.Commit(); TempData["shortMessage"] = "Recurso Modificado Satisfactoriamente."; } catch (Exception e) { TempData["shortMessage"] = "No se pudo realizar la Modificacion."; transaction.Rollback(); return(RedirectToAction("ListadoRecursos")); } } return(RedirectToAction("ListadoRecursos")); }
public ActionResult GrabarRecurso ( Recurso recurso, RecursoporSede recursosede, RecursoFase recursofase, RecursoTipoRecurso recursotiporecurso) { var usuarioActual = ObtenerUsuarioEnSesion(System.Web.HttpContext.Current); if (usuarioActual == null) { ViewBag.mensaje1 = "Debe Registrarse para Ingresar a este Modulo."; return(RedirectToAction("Login", "Home")); } using (var transaction = db.Database.BeginTransaction()) { try { recurso.Nombre_Recurso = recurso.Nombre_Recurso.ToUpper(); List <RecursoporSede> recsede = (from rs in db.Tbl_RecursoporSede join sede in db.Tbl_Sede on rs.Fk_Id_Sede equals sede.Pk_Id_Sede where sede.Fk_Id_Empresa == usuarioActual.IdEmpresa select rs).ToList(); //List<RecursoporSede> recsede = db.Tbl_RecursoporSede.Where(rs => rs.Pk_Id_RecursoporSede > 0).ToList(); foreach (var rs in recsede) { if (rs.Recurso.Nombre_Recurso == recurso.Nombre_Recurso && rs.Recurso.Periodo == recurso.Periodo && rs.Fk_Id_Sede == recursosede.Fk_Id_Sede ) { TempData["shortMessage"] = "El Recurso ingresado ya se encuentra en la Sede y el Periodo Seleccionado."; return(RedirectToAction("CrearRecurso")); } } recurso.RecursosporSede = new List <RecursoporSede>(); recurso.RecursosporSede.Add(recursosede); recurso.RecursosFase = new List <RecursoFase>(); recurso.RecursosFase.Add(recursofase); recurso.RecursosTipoRecursos = new List <RecursoTipoRecurso>(); recurso.RecursosTipoRecursos.Add(recursotiporecurso); recurso.Nombre_Recurso = recurso.Nombre_Recurso.ToUpper(); db.Tbl_Recurso.Add(recurso); db.SaveChanges(); transaction.Commit(); List <RecursoporSede> recsedes = db.Tbl_RecursoporSede.Where(rs => rs.Pk_Id_RecursoporSede > 0).ToList(); TempData["shortMessage"] = "Recurso Asignado Satisfactoriamente."; return(RedirectToAction("CrearRecurso", recsedes)); } catch (Exception e) { TempData["shortMessage"] = "la Asignacion del Recurso no se pudo realizar."; transaction.Rollback(); return(RedirectToAction("CrearRecurso")); } } return(RedirectToAction("CrearRecurso")); }