public ActionResult UTP_ObtenerofertasAvanzada(VistaOferta entidad)
        {
            Session["DataTableToExport"] = lnUtp.OfertaBusquedaExcel(
                entidad.CargoOfrecido == null ? "" : entidad.CargoOfrecido,
                entidad.NombreComercial == null ? "" : entidad.NombreComercial,
                entidad.IdTipoCargoutp == null ? "" : entidad.IdTipoCargoutp,
                entidad.IdSectorutp == null ? "" : entidad.IdSectorutp,
                entidad.IdTipoContratoutp == null ? "" : entidad.IdTipoContratoutp,
                entidad.AExperiencia,
                entidad.RemuneracionOfrecida,
                entidad.IdTipoEstudioutp == null ? "" : entidad.IdTipoEstudioutp,
                entidad.Conocimientos == null ? "" : entidad.Conocimientos,
                entidad.NumeroPostulante,
                entidad.IdEstadoOferta == null ? "" : entidad.IdEstadoOferta,
                entidad.InformacionAdicional == null ? "" : entidad.InformacionAdicional,
                entidad.Carrera == null ? "" : entidad.Carrera
            );

            List<OfertaUTP> lista = lnUtp.UTP_ObtenerofertasAvanzada(entidad.CargoOfrecido == null ? "" : entidad.CargoOfrecido,
                                                                        entidad.NombreComercial == null ? "" : entidad.NombreComercial,
                                                                        entidad.IdTipoCargoutp == null ? "" : entidad.IdTipoCargoutp,
                                                                        entidad.IdSectorutp == null ? "" : entidad.IdSectorutp,
                                                                        entidad.IdTipoContratoutp == null ? "" : entidad.IdTipoContratoutp,
                                                                        entidad.AExperiencia,
                                                                        entidad.RemuneracionOfrecida,
                                                                        entidad.IdTipoEstudioutp == null ? "" : entidad.IdTipoEstudioutp,
                                                                        entidad.Conocimientos == null ? "" : entidad.Conocimientos,
                                                                        entidad.NumeroPostulante,
                                                                        entidad.IdEstadoOferta == null ? "" : entidad.IdEstadoOferta,
                                                                        entidad.InformacionAdicional == null ? "" : entidad.InformacionAdicional,
                                                                        entidad.Carrera == null ? "" : entidad.Carrera,
                                                                        entidad.nroPaginaActual,
                                                                        Constantes.FILAS_POR_PAGINA_UTP);

            //Datos para la paginación.
            int cantidadTotal = lista.Count() == 0 ? 0 : lista[0].CantidadTotal;

            Paginacion paginacion = new Paginacion();
            paginacion.NroPaginaActual = entidad.nroPaginaActual;
            paginacion.CantidadTotalResultados = cantidadTotal;
            paginacion.FilasPorPagina = Constantes.FILAS_POR_PAGINA_UTP; // Constantes.FILAS_POR_PAGINA_UTP;
            paginacion.TotalPaginas = cantidadTotal / Constantes.FILAS_POR_PAGINA_UTP; // Constantes.FILAS_POR_PAGINA_UTP;
            int residuo = cantidadTotal % Constantes.FILAS_POR_PAGINA_UTP; // Constantes.FILAS_POR_PAGINA_UTP;
            if (residuo > 0) paginacion.TotalPaginas += 1;

            ViewBag.Paginacion = paginacion;
            ViewBag.TipoBusqueda = "Avanzada";

            TicketUTP ticketUtp = (TicketUTP)Session["TicketUtp"];
            ViewBag.Rol = ticketUtp.Rol;

            return PartialView("_ListaUTPOfertas", lista);
        }
        public ActionResult BuscarOfertas(VistaOferta entidad)
        {
            List<OfertaUTP> lista = lnUtp.UTP_ObtenerOfertasporActivar(
                entidad.PalabraClave == null ? "" : entidad.PalabraClave,
                entidad.nroPaginaActual,
                Constantes.FILAS_POR_PAGINA_UTP
            );

            Session["DataTableToExport"] = lnUtp.OfertaBusquedaExcel(entidad.PalabraClave == null ? "" : entidad.PalabraClave);

            //Datos para la paginación.
            int cantidadTotal = lista.Count() == 0 ? 0 : lista[0].CantidadTotal;

            Paginacion paginacion = new Paginacion();
            paginacion.NroPaginaActual = entidad.nroPaginaActual;
            paginacion.CantidadTotalResultados = cantidadTotal;
            paginacion.FilasPorPagina = Constantes.FILAS_POR_PAGINA_UTP; // Constantes.FILAS_POR_PAGINA_UTP;
            paginacion.TotalPaginas = cantidadTotal / Constantes.FILAS_POR_PAGINA_UTP; // Constantes.FILAS_POR_PAGINA_UTP;
            int residuo = cantidadTotal % Constantes.FILAS_POR_PAGINA_UTP; // Constantes.FILAS_POR_PAGINA_UTP;
            if (residuo > 0) paginacion.TotalPaginas += 1;

            ViewBag.Paginacion = paginacion;
            ViewBag.TipoBusqueda = "Simple";

            TicketUTP ticketUtp = (TicketUTP)Session["TicketUtp"];
            ViewBag.Rol = ticketUtp.Rol;

            return PartialView("_ListaUTPOfertas", lista);
        }
        public ActionResult Ofertas()
        {
            Session["DataTableToExport"] = lnUtp.OfertaBusquedaExcel();

            VistaOferta oferta = new VistaOferta();
            LNGeneral lngeneral = new LNGeneral();
            oferta.ListaTipoCargo = lngeneral.ObtenerListaValor(9);
            TicketUTP ticketUtp = (TicketUTP)Session["TicketUtp"];
            ViewBag.Rol = ticketUtp.Rol;
            //Tipo de Cargo
            List<SelectListItem> listItemsTipoCargo = new List<SelectListItem>();
            foreach (ListaValor entidad in oferta.ListaTipoCargo)
            {
                SelectListItem item = new SelectListItem();
                item.Text = entidad.Valor.ToUpper();
                item.Value = entidad.IdListaValor.ToString();
                listItemsTipoCargo.Add(item);
            }

            //Sector empresarial

            //Busca Lista Sector Empresarial
            oferta.ListaSectorEmpresarial = lngeneral.ObtenerListaValor(8);
            List<SelectListItem> listItemSector = new List<SelectListItem>();
            foreach (ListaValor entidad in oferta.ListaSectorEmpresarial)
            {
                SelectListItem item = new SelectListItem();
                item.Text = entidad.Valor;
                item.Value = entidad.IdListaValor.ToString();
                listItemSector.Add(item);
            }

            //Tipo Contrato

            //Busca Lista Tipo Contrato
            oferta.ListaTipoContrato = lngeneral.ObtenerListaValor(30);
            List<SelectListItem> listItemTipoContrato = new List<SelectListItem>();
            foreach (ListaValor entidad in oferta.ListaTipoContrato)
            {
                SelectListItem item = new SelectListItem();
                item.Text = entidad.Valor;
                item.Value = entidad.IdListaValor.ToString();
                listItemTipoContrato.Add(item);
            }

            //Tipo Estudio

            //Busca Lista Tipo Estudio
            oferta.ListaTipoEstudio = lngeneral.ObtenerListaValor(7);
            List<SelectListItem> listItemTipoEstudio = new List<SelectListItem>();
            foreach (ListaValor entidad in oferta.ListaTipoEstudio)
            {
                SelectListItem item = new SelectListItem();
                item.Text = entidad.Valor;
                item.Value = entidad.IdListaValor.ToString();
                listItemTipoEstudio.Add(item);
            }

            //Tipo Informacion Adicional

            //Busca Lista Tipo informacion Adicional
            oferta.ListaInformacionAdicional = lngeneral.ObtenerListaValor(10);
            List<SelectListItem> listItemTipoInformacionAdicional = new List<SelectListItem>();
            foreach (ListaValor entidad in oferta.ListaInformacionAdicional)
            {
                SelectListItem item = new SelectListItem();
                item.Text = entidad.Valor;
                item.Value = entidad.IdListaValor.ToString();
                listItemTipoInformacionAdicional.Add(item);
            }

            //Se agrega el parámetro de Estado de la oferta:
            oferta.ListaEstadoOferta = lngeneral.ObtenerListaValor(Constantes.IDLISTA_ESTADO_OFERTA);
            List<SelectListItem> listItemEstadoOferta = new List<SelectListItem>();
            foreach (ListaValor entidad in oferta.ListaEstadoOferta)
            {
                //Se quitan los estados Borrador y Fin de Recepeción de CVs
                if (entidad.IdListaValor != Constantes.OFERTA_ESTADO_BORRADOR && entidad.IdListaValor != Constantes.OFERTA_ESTADO_FINRECEPCIONCVS)
                {
                    SelectListItem item = new SelectListItem();
                    item.Text = entidad.Valor;
                    item.Value = entidad.IdListaValor.ToString();
                    listItemEstadoOferta.Add(item);
                }
            }

            //Lista de Carreras UTP
            oferta.ListaCarrera = lngeneral.ObtenerListaValor(Constantes.IDLISTA_DE_CARRERA).Where(m => m.IdListaValorPadre == "TEUNIV").ToList();
            List<SelectListItem> listItemCarrera = new List<SelectListItem>();
            foreach (ListaValor entidad in oferta.ListaCarrera)
            {
                SelectListItem item = new SelectListItem();
                item.Text = entidad.Valor;
                listItemCarrera.Add(item);
            }

            //Lista de Combos

            ViewBag.ListaTipoCargo = listItemsTipoCargo;
            ViewBag.ListaSector = listItemSector;
            ViewBag.ListaTipoContrato = listItemTipoContrato;
            ViewBag.ListaTipoEstudio = listItemTipoEstudio;
            ViewBag.ListaInformacionAdicional = listItemTipoInformacionAdicional;
            ViewBag.ListaEstadoOferta = listItemEstadoOferta;
            ViewBag.Carrera = listItemCarrera;

            return View(oferta);
        }