public ActionResult Postulante(string id) { if (id != null) { VistaOfertaPostulante vistaofertapostulante = lnAlumnocv.ObtenerPostulanteCV(Convert.ToInt32(Helper.Desencriptar(id))); //Se cargan las fases de la oferta. LNOferta lnOferta = new LNOferta(); List<OfertaFase> listaFasesActivas = lnOferta.Obtener_OfertaFaseActivas(vistaofertapostulante.alumnocv.IdOferta); ViewBag.IdOfertaFase = new SelectList(listaFasesActivas, "IdListaValor", "FaseOferta", vistaofertapostulante.alumnocv.FaseOferta); ViewBag.IdOfertaPostulante = Convert.ToInt32(Helper.Desencriptar(id)); return View(vistaofertapostulante); } else { return RedirectToAction("Index", "Empresa"); } }
public ActionResult VistaOfertaPostulantes(int id, string estado, string columna, string orden, string pantalla = "") { LNOferta lnOferta = new LNOferta (); List<OfertaPostulante> postulantes = new List<OfertaPostulante>(); if (columna == "Fecha") { if (orden == "ASC") { postulantes = lnOferta.ObtenerPostulantesPorIdOferta(id).OrderBy(m => m.FechaPostulacion).ToList(); } else { postulantes = lnOferta.ObtenerPostulantesPorIdOferta(id).OrderByDescending(m => m.FechaPostulacion).ToList(); } } if (columna == "Nombre") { if (orden == "ASC") { postulantes = lnOferta.ObtenerPostulantesPorIdOferta(id).OrderBy(m => m.Alumno.Apellidos).ToList(); } else { postulantes = lnOferta.ObtenerPostulantesPorIdOferta(id).OrderByDescending(m => m.Alumno.Apellidos).ToList(); } } if (columna == "Fase") { if (orden == "ASC") { postulantes = lnOferta.ObtenerPostulantesPorIdOferta(id).OrderBy(m => m.FaseOferta.Peso).ToList(); } else { postulantes = lnOferta.ObtenerPostulantesPorIdOferta(id).OrderByDescending(m => m.FaseOferta.Peso).ToList(); } } if (columna == "Cumplimiento") { if (orden == "ASC") { postulantes = lnOferta.ObtenerPostulantesPorIdOferta(id).OrderBy(m => m.NivelDeMatch).ToList(); } else { postulantes = lnOferta.ObtenerPostulantesPorIdOferta(id).OrderByDescending(m => m.NivelDeMatch).ToList(); } } if (postulantes.Count == 0) { postulantes = lnOferta.ObtenerPostulantesPorIdOferta(id).OrderBy(m => m.FechaPostulacion).ToList(); } //Llenar el combo de Fases: List<OfertaFase> listaFasesActivas = lnOferta.Obtener_OfertaFaseActivas(id); ViewBag.IdOfertaFase = new SelectList(listaFasesActivas, "IdListaValor", "FaseOferta"); ViewBag.EstadoOfertaIdListaValor = estado; //Se envían datos para mostrar el orden de la grilla. Se valida si es NULL para la primera vez que cargue el bloque. ViewBag.Columna = columna == null ? "Fecha" : columna; ViewBag.Orden = orden == null ? "ASC" : orden; ViewBag.Pantalla = pantalla; return PartialView("_VistaOfertaPostulantes", postulantes); }