public PartialViewResult Buscar(int page = 1, string sort = "NUMEROESOLICITUD", string sortDir = "DESC", SolicitudPaginadoModelo tablaPaginado = null, string mensaje = null, bool back = false ) { // var nombre = tablaPaginado.Filtro.Expediente != null ? tablaPaginado.Filtro.Expediente.NumeroExpediente : 0; //Buscamos si existe un temp del back if (back) { tablaPaginado = GetCache <SolicitudPaginadoModelo>(tablaPaginado); } //Asignamos valores iniciales tablaPaginado = IniciarFiltro(tablaPaginado); //Construimos solicitud var solicitud = ConstruirSolicitud(page, sort, sortDir, tablaPaginado); //Invocamos al servicio var _solicitudnegocio = new GNTSolicitudNegocio(); var respuesta = _solicitudnegocio.BuscarSolicitudes(solicitud); //construimos modelo var model = ConstruirModeloPaginado(page, respuesta, tablaPaginado.Filtro); model.AsignarMensaje(mensaje); if (respuesta != null) { if (respuesta.totalelementos == 0) { model.AsignarMensaje(MensajeMvc.MensajeAdvertencia(Mensajes.Msj_NoSeEncontraronResultados)); } } //Guardamos el filtro en la cache de la sesión if (!back) { SetCache <SolicitudPaginadoModelo>(tablaPaginado); } //Retornamos vista con modelo return(PartialView("_Index", model)); }
internal SolicitudPaginadoModelo IniciarFiltro(SolicitudPaginadoModelo solicitudPaginado) { if (solicitudPaginado == null) { solicitudPaginado = new SolicitudPaginadoModelo(); } if (solicitudPaginado.Filtro.Solicitud == null) { solicitudPaginado.Filtro.Solicitud = new SolicitudVob(); } return(solicitudPaginado); }
internal SolicitudBusquedaSolicitudesVob ConstruirSolicitud(int pagina, string orden, string ordernDir, SolicitudPaginadoModelo solicitud) { return(new SolicitudBusquedaSolicitudesVob { SolicitudFilter = solicitud.Filtro.Solicitud, CriterioPaginar = new CriterioPaginarVob { Tamanio = Convert.ToInt32(Paginacion.TamanioPaginaMin), Pagina = pagina, Orden = orden, OrdenDir = ordernDir } }); }