//Funciones de ------------------------------------------------ Utilidades ------------------------------------------------ /* Esta funcion llena el modelo de InfoPAADCLS con la informacion de la base de datos * Recibe el id del paad * Regresa el modelo lleno*/ public InfoPAADCLS GetInfoPAAD(int id) { InfoPAADCLS info = new InfoPAADCLS(); Administrativos doc = (Administrativos)Session["administ"]; using (var db = new DB_PAAD_IADEntities()) { info = (from admin in db.Administrativos where admin.rol == 3 from paad in db.PAADs where paad.id_paad == id && paad.estado != 1 join estado in db.Estados on paad.estado equals estado.id_estado join periodo in db.Periodos on paad.periodo equals periodo.id_periodo join docente in db.Docentes on paad.docente equals docente.id_docente select new InfoPAADCLS { id_paad = paad.id_paad, status_value = paad.estado, status_name = estado.estado, active = periodo.activo, isdirector = paad.docente == admin.docente? true :false }).FirstOrDefault(); } return(info); }
//Acciones de la vista ------------------------------------------------ ViewPAAD ------------------------------------------------ /* Esta accion corresponde a la vista ViewPAAD * Recibe el id del paad * Devuelve la vista*/ public ActionResult ViewPAAD(int id) { util.IsClose(); //Valida que el id del paad se valido si no redirecciona a home if (id < 1) { return(RedirectToAction("Home")); } InfoPAADCLS info = GetInfoPAAD(id); if (info == null) { return(RedirectToAction("Home")); } //~~~~~~~Poner redirecion a error not found ViewBag.info = info; ViewBag.header = GetHeader(info.id_paad); ViewBag.activities = GetActivities(info.id_paad); //Valida si el paad a ver es del director para mostrar o no los mensajes de rechazo o aprobacion if (info.isdirector) { ViewBag.msg = GetMessages(info.id_paad); } else { ViewBag.msg = null; } return(View("ViewPAAD_Subdirector")); }
//Acciones de la vista ------------------------------------------------ ViewPAAD ------------------------------------------------ /* Esta accion corresponde a la vista ViewPAAD * Recibe el id del paad * Devuelve la vista*/ public ActionResult ViewPAAD(int id) { util.IsClose(); //Valida que el id del paad sea valido si no redirecciona a home if (id < 1) { return(RedirectToAction("Home")); } //Se obtiene la info del paad InfoPAADCLS info = GetInfoPAAD(id); //Si la info es null redirecciona a home if (info == null) { return(RedirectToAction("Home")); } //Se colacan la info, el header y las actividades en el viewbag para ser leidas ViewBag.info = info; ViewBag.header = GetHeader(info.id_paad); ViewBag.activities = GetActivities(info.id_paad); return(View("ViewPAAD_Coordinador")); }
//Funciones de ------------------------------------------------ Utilidades ------------------------------------------------ /* Esta funcion llena el modelo de InfoPAADCLS con la informacion de la base de datos * Recibe el id del paad * Regresa el modelo lleno*/ public InfoPAADCLS GetInfoPAAD(int id) { InfoPAADCLS info = new InfoPAADCLS(); Administrativos doc = (Administrativos)Session["administ"]; using (var db = new DB_PAAD_IADEntities()) { info = (from paad in db.PAADs where paad.id_paad == id && paad.estado != 1 join estado in db.Estados on paad.estado equals estado.id_estado join periodo in db.Periodos on paad.periodo equals periodo.id_periodo select new InfoPAADCLS { id_paad = paad.id_paad, status_value = paad.estado, status_name = estado.estado, active = periodo.activo }).FirstOrDefault(); } return(info); }