/// <summary> /// Listado con paginacion para aplicación WEB /// </summary> /// <param name="pFiltro"></param> /// <returns></returns> public List <BEOpcionResponse> ListPaged(BEBuscaOpcionRequest pFiltro) { List <BEOpcionResponse> lista = new List <BEOpcionResponse>(); try { using (_DBMLSeguridadSistemaDataContext SeguridadDC = new _DBMLSeguridadSistemaDataContext(conexion)) { var resul = SeguridadDC.usp_sis_R_Opcion_Paged(pFiltro.jqPageSize, pFiltro.jqCurrentPage, pFiltro.jqSortColumn, pFiltro.jqSortOrder, pFiltro.codSistema, pFiltro.codObjeto, pFiltro.codObjetoPadre, pFiltro.desNombre, pFiltro.desEnlaceURL, pFiltro.tipObjeto, pFiltro.desNombrePadre, pFiltro.indActivo); foreach (var item in resul) { lista.Add(new BEOpcionResponse() { ROW = item.ROWNUM.HasValue ? item.ROWNUM.Value : 0, TOTALROWS = item.TOTALROWS.HasValue ? item.TOTALROWS.Value : 0, codOpcion = item.codOpcion, codOpcionPadre = item.codOpcionPadre, codOpcionPadreNombre = item.codObjetoPadreNombre, desEnlaceWIN = item.desEnlaceWin, desEnlaceURL = item.desEnlaceURL, indMenu = item.indMenu, desDescripcion = item.desDescripcion, desNombre = item.desNombre, indTipoObjeto = item.indTipoObjeto, codElementoID = item.codElementoID, nomIcono = item.nomIcono, numOrden = item.numOrden, indEstado = item.indEstado, codSistemaNombre = item.codSistemaNombre, segUsuarioEdita = item.segUsuarioEdita, segFechaEdita = item.segFechaHoraEdita, segMaquinaEdita = item.segMaquinaEdita }); } } } catch (Exception ex) { throw ex; } return(lista); }
/// <summary> /// Listado con paginacion para aplicación WEB /// </summary> /// <param name="pFiltro"></param> /// <returns></returns> public OperationResult ListPaged(BEBuscaOpcionRequest pFiltro) { try { List <BEOpcionResponse> lstOpcion = new List <BEOpcionResponse>(); lstOpcion = oOpcionData.ListPaged(pFiltro); int totalRecords = lstOpcion.Select(x => x.TOTALROWS).FirstOrDefault(); int totalPages = (int)Math.Ceiling((float)totalRecords / (float)pFiltro.jqPageSize); var jsonGrid = new { PageCount = totalPages, CurrentPage = pFiltro.jqCurrentPage, RecordCount = totalRecords, Items = ( from item in lstOpcion select new { ID = item.codOpcion, Row = new string[] { string.Empty , string.Empty , item.indTipoObjeto , item.desNombre , item.codOpcionPadreNombre , item.desEnlaceURL , item.desEnlaceWIN , item.codElementoID , item.indMenu.ToString() , item.numOrden.ToString() , item.nomIcono , item.desDescripcion , item.codSistemaNombre , item.indEstado.ToString() , item.segUsuarioEdita , item.segFechaEdita.HasValue? item.segFechaEdita.Value.ToString():string.Empty } }).ToArray() }; return(OK(jsonGrid)); } catch (Exception ex) { return(Error(GetType().Name, MethodBase.GetCurrentMethod().Name, ex, pFiltro.userActual, pFiltro.codEmpresa)); } finally { if (oOpcionData != null) { oOpcionData.Dispose(); oOpcionData = null; } } }