protected virtual List <SearchInstruction <T> > BuildSearchInstructions(DataTableRequest request) { var instructions = new List <SearchInstruction <T> >(); var columns = Columns; // reset values foreach (var column in columns) { column.SearchInstruction.UseCustomExpression(null); column.SearchInstruction.Value = null; } foreach (var column in request.Columns) { if (!IsSearchable(request.Search, column, out object value)) { continue; } var instruction = columns.Single(x => x.Name == column.Name).SearchInstruction; if (instruction == null) { continue; } instruction.Value = value; instructions.Add(instruction); } return(instructions); }
public ActionResult List(DataTableRequest dTablerequest) { CustomerService ocustomerService = new CustomerService(); SearchModel searchModel = new SearchModel { currentIndex = dTablerequest.CurrentIndex, TotalRecordsPerPage = dTablerequest.length, searchItem = dTablerequest.search, OrderByColumn = dTablerequest.orderByColumnIndex, orderByCommand = dTablerequest.orderDirection }; IEnumerable <CustomerModel> customers = ocustomerService.GetAllCustomers(searchModel); Int64 TotalCount = ocustomerService.GetAllCustomersCount(); DataTableResponse DtResponse = new DataTableResponse(); DtResponse.draw = dTablerequest.draw; DtResponse.recordsTotal = TotalCount; DtResponse.recordsFiltered = TotalCount; DtResponse.data = customers; return(Json(DtResponse)); }
public HttpResponseMessage GetData(HttpRequestMessage request) { //System.Threading.Thread.Sleep(5000); string queryString = HttpUtility.UrlDecode(request.Content.ReadAsStringAsync().Result); var data = HttpUtility.ParseQueryString(queryString); int filteredCount; var requestData = DataTableRequest.Parse(data); var people = peopleService.GetPeople( requestData.Start, requestData.Length, requestData.Search.Value, requestData.GetFilters(), requestData.Order.ToDictionary( o => o.Column, o => o.Dir == DataTableOrderDirection.Asc ? 1 : -1), out filteredCount); var response = new DataTableResponse <Person> { Draw = requestData.Draw, RecordsTotal = peopleService.GetTotalPeople(), RecordsFiltered = filteredCount, DataItems = people }; return(request.CreateResponse(HttpStatusCode.OK, response)); }
public GetClientesResponse GetClientes(DataTableRequest request) { var response = new GetClientesResponse() { IsValid = true }; try { //establecer los filtros var query = Filter(request.CustomFilters); var filtered = query.ApplyColumnSettings(request, ClienteMapper.GetPropertiePath); response.ClienteViewModel = filtered.ConvertToClienteViewModel(); response.TotalElementos = query.Count(); } catch (Exception ex) { response.IsValid = false; response.ErrorMessage = ex.Message; } return(response); }
protected override IQueryable <Moudle> InternalBeforeGet(DataTableRequest req, IQueryable <Moudle> Items) { Items = Items.Where(e => e.Status == Ywl.Data.Entity.Models.Status.Normal); var uid = Ywl.Data.Entity.Utils.StrToInt(Requests["uid"], null); if (uid != null) { var aids = from t in db.UserActions where t.UserId == uid select t.ActionId; var mids = from t in db.Actions where aids.Contains(t.Id) select t.MoudleId; var q = from t in Items where mids.Contains(t.Id) || t.NeedPower == false orderby t.ParentId, t.Orderno select t; return(q); } if (req.search != null && req.search.value != null) { Items = Items.Where(e => e.Name.Contains(req.search.value) || e.HierarchicalPath.Contains(req.search.value)); } return(base.InternalBeforeGet(req, Items)); }
public GetCandidatosResponse GetCandidatosBecario(DataTableRequest request, bool contarBecas = true) { var response = new GetCandidatosResponse(); try { var candidatosDescartados = GetCandidatosDescartados(); var candidatosBecasAbiertas = GetCandidatosEnBecasAbiertas(); var candidatosCandidaturasAbiertas = GetCandidatosEnCandidaturasAbiertas(); var candidatosOmitir = candidatosCandidaturasAbiertas.Union(candidatosBecasAbiertas).Union(candidatosDescartados).Distinct().ToList(); var query = FilterString(request.CustomFilters); //Es necesario convertir a lista para optimizar rendimiento en 10 segundos en prod. query = query.ToList().Where(x => !candidatosOmitir.Contains(x.CandidatoId)).AsQueryable(); var filtered = query.ApplyColumnSettings(request, CandidatoMapper.GetPropertiePath); response.CandidatoRowViewModel = filtered.ConvertToCandidatoRowViewModel(); response.TotalElementos = query.Count(); response.IsValid = true; } catch (Exception ex) { response.IsValid = false; response.ErrorMessage = ex.Message; } return(response); }
public GetCandidatosExportToExcelResponse GetCandidatosExportToExcel(DataTableRequest request) { var response = new GetCandidatosExportToExcelResponse(); try { //establecer los filtros var query = FilterString(request.CustomFilters); var filtered = query.ApplyColumnSettings(request, CandidatoMapper.GetPropertiePath); IDictionary <Candidato, GetDatosByCandidatoIdResponse> relacionCandidatoCandidatura = new Dictionary <Candidato, GetDatosByCandidatoIdResponse>(); foreach (var candidato in filtered) { relacionCandidatoCandidatura[candidato] = GetDatosByCandidatoId(candidato.CandidatoId); } response.CandidatoRowExportToExcelViewModel = relacionCandidatoCandidatura.ConvertToCandidatoRowExportToExcelViewModel(); response.TotalElementos = query.Count(); response.IsValid = true; } catch (Exception ex) { response.IsValid = false; response.ErrorMessage = ex.Message; } return(response); }
public GetNecesidadesResponse GetNecesidades(DataTableRequest request) { var necesidades = new List <NecesidadRowViewModel>(); var response = new GetNecesidadesResponse() { IsValid = true, NecesidadViewModel = necesidades }; for (var i = request.PageSize * request.PageNumber; (i < (request.PageSize * request.PageNumber + request.PageSize)) && (i <= TOTAL_ELEMENTS); i++) { necesidades.Add(new NecesidadRowViewModel() { NecesidadId = (int)i, Cliente = string.Format("Cliente {0}", i), Proyecto = string.Format("Proyecto {0}", i), Tecnologia = string.Format("Tecnologia {0}", i), Perfil = string.Format("Perfil {0}", i), Estado = string.Format("Estado {0}", i), FechaSolicitud = DateTime.Now.AddDays((double)i), }); } response.TotalElementos = TOTAL_ELEMENTS; return(response); }
public DataTableViewModel(DataTableRequest request, int filteredCount, int totalCount) { SortOrder = request.SortOrder; Search = request.Search; PageIndex = request.PageIndex; PageSize = request.PageSize; FirstItemIndex = filteredCount > 0 ? (request.PageIndex - 1) * request.PageSize + 1 : 0; LastItemIndex = request.PageSize * request.PageIndex < filteredCount ? request.PageSize * request.PageIndex : filteredCount; FilteredCount = filteredCount; TotalCount = totalCount; PageCount = (int)Math.Ceiling(filteredCount / (double)request.PageSize); PageSizeOptions = new List <SelectListItem> { new SelectListItem { Text = "10", Value = "10" }, new SelectListItem { Text = "25", Value = "25" }, new SelectListItem { Text = "50", Value = "50" }, new SelectListItem { Text = "100", Value = "100" } }; PageSizeOptions.Single(x => x.Value == request.PageSize.ToString()).Selected = true; }
public DataTableResponse <ClientListItemViewModel> SearchByDatatables(DataTableRequest datatableRequest) { var baseQuery = from c in _context.Clients.AsNoTracking() select new ClientListItemViewModel { Id = c.Id, ClientId = c.ClientId, ClientName = c.ClientName, Description = c.Description, Enabled = c.Enabled }; baseQuery = ApplyFilterToQuery(baseQuery, datatableRequest); var filterTotal = baseQuery.Count(); baseQuery = ApplySortToQuery(baseQuery, datatableRequest.Order); var queryResult = baseQuery.Skip(datatableRequest.Start) .Take(datatableRequest.Length) .ToList(); return(new DataTableResponse <ClientListItemViewModel> { Draw = datatableRequest.Draw, RecordsTotal = _context.Clients.Count(), RecordsFiltered = filterTotal, Data = queryResult }); }
public static DataTableResponse GetProductMasterList(DataTableRequest dtParam) { using (var dbInvoice = new IncubXpertInvoicingDb()) { IQueryable <MasterProduct> MasterProductQuery = dbInvoice.MasterProducts.AsNoTracking(); MasterProductQuery = MasterProductQuery.OrderByDescending(m => m.Id); var totalCount = MasterProductQuery.Count(); var OrderList = MasterProductQuery.Skip(dtParam.start) .Take(dtParam.length).ToList(); var List = OrderList.Select(c => new[] { c.Id.ToString(), c.ProductName, c.Category.ToString(), c.Rate.ToString(), c.GstRate.ToString() }); var dtResponse = new DataTableResponse() { draw = dtParam.draw, recordsTotal = totalCount, recordsFiltered = totalCount, data = List.ToList() }; return(dtResponse); } }
// GET api/values public virtual IHttpActionResult Get([FromUri] DataTableRequest req) { IQueryable <TEntity> query = this.Entities; //所有数据总数 var recordsTotal = query.Count(); //if (req.search.value != null) //{ // query = query.Where(e => e.Name.Contains(req.search.value)); //} query = InternalBeforeGet(req, query); //符合条件的数据 var recordsFiltered = query.Count(); query = this.PrepareListOrder <TEntity>(req, query); var length = req.length; var start = req.start; if (req.length != -1) { query = query.Skip(req.start).Take(req.length); } // return NotFound(); var list = query.ToList(); list = this.InternalBeforeGetReturnData(list); return(Ok(new { data = list, recordsTotal, recordsFiltered })); }
public virtual async Task <DataTableResponse> GetAsync(DataTableRequest request, CancellationToken token = default) { var result = new DataTableResponse { Draw = request.Draw }; try { var query = _dataSource.Get(); query = await PreFilter(query, token).ConfigureAwait(false); (query, result) = await TotalRecords(query, result, token).ConfigureAwait(false); query = Filter(query, request); (query, result) = await FilteredRecords(query, result, token).ConfigureAwait(false); query = Sort(query, request); query = Paging(query, request); result = await GetResultData(result, query, token).ConfigureAwait(false); } catch (Exception exception) { // TODO localizable string result.Error = "\nEin unerwarteter Fehler ist aufgetreten.\nPrüfen Sie Ihre Eingaben und versuchen Sie es erneut."; await OnError(request, exception); } return(result); }
public static DataTableResponse GetCustomerMasterList(DataTableRequest dtParam) { using (var dbInvoice = new IncubXpertInvoicingDb()) { IQueryable <MasterCustomer> OrdersQuery = dbInvoice.MasterCustomers.AsNoTracking(); OrdersQuery = OrdersQuery.OrderByDescending(m => m.Id); var totalCount = OrdersQuery.Count(); var OrderList = OrdersQuery.Skip(dtParam.start) .Take(dtParam.length).ToList(); var List = OrderList.Select(c => new[] { c.Id.ToString(), c.Name, c.Address, c.City, c.Pincode, c.ContactNo, c.EmailId }); var dtResponse = new DataTableResponse() { draw = dtParam.draw, recordsTotal = totalCount, recordsFiltered = totalCount, data = List.ToList() }; return(dtResponse); } }
public Result <DataTableResult <PermissionTableModel> > Get(DataTableRequest dataTableRequest) { ValidationResult validationResult = _dataTableValidator.Validate(dataTableRequest); if (!validationResult.IsValid) { _logger.LogWarning($"Invalid {nameof(DataTableRequest)} model"); return(Result.Fail <DataTableResult <PermissionTableModel> >(validationResult.Errors)); } PaginationSpecification <PermissionEntity, PermissionTableModel> paginationSpecification = new PaginationSpecification <PermissionEntity, PermissionTableModel>(); if (!string.IsNullOrEmpty(dataTableRequest.Search)) { paginationSpecification.AddFilter(x => x.Name.ToUpper().Contains(dataTableRequest.Search.ToUpper())); } paginationSpecification.AddSelect(x => new PermissionTableModel( x.Id, x.Name)); paginationSpecification.AppalyPaging(dataTableRequest.Start, dataTableRequest.Length); PaginatedData <PermissionTableModel> paginatedData = _permissionRepository.GetPaginated(paginationSpecification); DataTableResult <PermissionTableModel> dataTableResult = new DataTableResult <PermissionTableModel>( draw: dataTableRequest.Draw, recordsTotal: paginatedData.Count, recordsFilterd: paginatedData.Count, error: null, data: paginatedData.Data); return(Result.Ok(dataTableResult)); }
public GetOfertasResponse GetOfertas(DataTableRequest request) { var ofertas = new List <OfertaRowViewModel>(); var response = new GetOfertasResponse() { IsValid = true, OfertaViewModel = ofertas }; for (var i = request.PageSize * request.PageNumber; (i < (request.PageSize * request.PageNumber + request.PageSize)) && (i <= TOTAL_ELEMENTS); i++) { ofertas.Add(new OfertaRowViewModel() { OfertaId = (int)i, Nombre = string.Format("Nombre {0}", i), Candidatos = (int)i, Estado = string.Format("Estado {0}", i), FechaPublicacion = DateTime.Now.AddDays((double)i) }); } response.TotalElementos = TOTAL_ELEMENTS; return(response); }
public static DataTableResponse GetOrderList(DataTableRequest dtParam) { using (var dbInvoice = new IncubXpertInvoicingDb()) { IQueryable <Order> OrdersQuery = dbInvoice.Orders.AsNoTracking(); OrdersQuery = OrdersQuery.OrderByDescending(m => m.Id); var totalCount = OrdersQuery.Count(); var OrderList = OrdersQuery.Skip(dtParam.start) .Take(dtParam.length).ToList(); var List = OrderList.Select(c => new[] { c.Id.ToString(), c.OrderDate, c.ScheduledDeliveryDate.ToString(), c.TotalGst.ToString() }); var dtResponse = new DataTableResponse() { draw = dtParam.draw, recordsTotal = totalCount, recordsFiltered = totalCount, data = List.ToList() }; return(dtResponse); } }
public Result <DataTableResult <EmailTableModel> > Get(DataTableRequest dataTableRequest) { ValidationResult validationResult = _dataTableValidator.Validate(dataTableRequest); if (!validationResult.IsValid) { _logger.LogWarning($"Invalid {nameof(DataTableRequest)} model"); return(Result.Fail <DataTableResult <EmailTableModel> >(validationResult.Errors)); } PaginationSpecification <EmailEntity, EmailTableModel> paginationSpecification = new PaginationSpecification <EmailEntity, EmailTableModel>(); paginationSpecification.AddSelect(x => new EmailTableModel( x.Id, x.Type.GetDescription())); paginationSpecification.AppalyPaging(dataTableRequest.Start, dataTableRequest.Length); PaginatedData <EmailTableModel> paginatedData = _emailRepository.GetPaginated(paginationSpecification); DataTableResult <EmailTableModel> dataTableResult = new DataTableResult <EmailTableModel>( draw: dataTableRequest.Draw, recordsFilterd: paginatedData.Count, recordsTotal: paginatedData.Count, error: null, data: paginatedData.Data); return(Result.Ok(dataTableResult)); }
public GetOfertasExportToExcelResponse GetOfertasExportToExcel(DataTableRequest request) { var response = new GetOfertasExportToExcelResponse(); try { var query = FilterString(request.CustomFilters); var filtered = query.ApplyColumnSettings(request, OfertaMapper.GetPropertiePath); var ofertaIds = filtered.Select(x => x.OfertaId).ToList(); var totalCandidatos = new Dictionary <int, int>(); foreach (var ofertaId in ofertaIds) { var count = _candidaturaRepository.CountByCriteria(x => x.OfertaId == ofertaId); totalCandidatos.Add(ofertaId, count); } response.OfertaViewModel = filtered.ConvertToOfertaRowExportToExcelViewModel(totalCandidatos); response.TotalElementos = query.Count(); response.IsValid = true; } catch (Exception ex) { response.IsValid = false; response.ErrorMessage = ex.Message; } return(response); }
public ActionResult GetAllAction() { DataTableRequest gridRequest = new DataTableRequest(HttpContext); var list = PermissionManager.GetListBy(p => true).ToList(); var data = ConfigSettings.GetAllAction(); string sqlstr = @" INSERT INTO FW_PERMISSION (PERMISSION_ID, PERMISSION_PID, NAME, AREANAME, CONTROLLERNAME, ACTIONNAME, ISLINK, LINKURL, REMARK, ISSHOW, ISBUTTON, CREATE_DT,SEQ_NO ) VALUES('{0}','{1}',N'{2}','{3}','{4}','{5}','{6}','{7}',N'{8}','{9}','{10}',{11},{12});</BR>"; int i = 1; StringBuilder sb = new StringBuilder(); foreach (var item in data) { if (list.Where(p => p.PERMISSION_ID == item.CD).Count() <= 0) { sb.Append(string.Format(sqlstr, item.CD, item.PCD, item.Name, "Admin", item.ControllerName, item.ActionName, item.IsLink, item.LinkUrl, item.Description, "Y", item.IsButton, "Getdate()", i)); } i++; } return(Content(sb.ToString())); //忽略掉公共页面的权限动作 //return this.JsonFormat( // new DataTableGrid() // { // rows = LINQHelper.GetIenumberable<MVCAction>(data, // p => p.ControllerName.ToLower() != "", // q => gridRequest.SortOrder?"DESC":"ASC", 10000, // gridRequest.PageNumber), // total = data.Count() // }); }
public GetEmpleadosFenixResponse GetEmpleadosFenix(DataTableRequest request, int centroId) { var response = new GetEmpleadosFenixResponse(); try { if (request.CustomFilters.ContainsKey("Buscar")) { var buscar = request.CustomFilters["Buscar"]; if (!string.IsNullOrEmpty(buscar)) { var query = FilterString(request.CustomFilters, centroId); var filtered = query.ApplyColumnSettings(request, EmpleadosFenixMapper.GetPropertiePath); response.EmpleadoFenixRowViewModelList = filtered.ToList(); response.TotalElementos = query.Count(); } else { response.EmpleadoFenixRowViewModelList = new List <EmpleadoFenixRowViewModel>(); response.TotalElementos = 0; } response.IsValid = true; } } catch (Exception ex) { response.IsValid = false; response.ErrorMessage = ex.Message; } return(response); }
public async Task <Result <DataTableResult <AuditAdminTableModel> > > Get(DataTableRequest dataTableRequest, AuditTableRequest auditTableRequest) { ValidationResult dataTableValidationResult = _dataTableRequestValidator.Validate(dataTableRequest); if (!dataTableValidationResult.IsValid) { _logger.LogWarning($"Invalid {nameof(DataTableRequest)} model"); return(Result.Fail <DataTableResult <AuditAdminTableModel> >(dataTableValidationResult.ToResultError())); } if (auditTableRequest == null) { _logger.LogWarning($"AuditTable request can not be null"); return(Result.Fail <DataTableResult <AuditAdminTableModel> >("can_not_be_null", "Can not be null")); } ValidationResult auditTableRequestValidationResult = _auditTableRequestValidator.Validate(auditTableRequest); if (!auditTableRequestValidationResult.IsValid) { _logger.LogWarning($"Invalid {nameof(AuditTableRequest)} model"); return(Result.Fail <DataTableResult <AuditAdminTableModel> >(auditTableRequestValidationResult.ToResultError())); } IBaseSpecificationBuilder <AuditEntity> baseSpecification = SpecificationBuilder .Create <AuditEntity>() .WithActionType(auditTableRequest.ActionType) .WithObjectType(auditTableRequest.ObjectType) .WithObjectIdentifier(auditTableRequest.ObjectIdentifier) .WithSubjectType(auditTableRequest.SubjectType) .WithSubjectIdentifier(auditTableRequest.SubjectIdentifier) .WithResourceName(auditTableRequest.ResourceName) .InRange(auditTableRequest.From, auditTableRequest.To); IBaseSpecification <AuditEntity, AuditAdminTableModel> selectSpecification = baseSpecification .OrderBy(x => x.Created, auditTableRequest.OrderBy.Value) .Paginate(dataTableRequest.Start, dataTableRequest.Length) .Select(x => new AuditAdminTableModel( x.Id, x.ActionType.GetDescription(), x.ObjectType, x.ResourceName, x.SubjectType.GetDescription(), x.SubjectIdentifier, x.Created.ToString("o"))) .Build(); int auditCount = await _auditDAO.Count(baseSpecification.Build()); List <AuditAdminTableModel> audits = await _auditDAO.Get(selectSpecification); DataTableResult <AuditAdminTableModel> dataTableResult = new DataTableResult <AuditAdminTableModel>( draw: dataTableRequest.Draw, recordsTotal: auditCount, recordsFiltered: auditCount, error: null, data: audits); return(Result.Ok(dataTableResult)); }
public JsonResult Index([System.Web.Http.FromBody] DataTableRequest req) { List <Author> filtered; if (req.search.value == null || req.search.value.Equals("")) { filtered = dbContext.authors.ToList(); } else { filtered = dbContext.authors.Select(a => a).Where(a => a.name.ToLower().Contains(req.search.value.ToLower()) || a.authorId.ToString().Contains(req.search.value)).ToList(); } List <List <string> > data = new List <List <string> >(); int lim = req.start + req.length; lim = req.start + req.length > filtered.Count() ? filtered.Count() : req.start + req.length; for (int i = req.start; i < lim; i++) { data.Add(new List <string> { filtered[i].idType.name, filtered[i].authorId.ToString(), filtered[i].name, "<a class='btn btn-primary' href='/Author/Books/" + filtered[i].id + "'>Libros</a>" }); } DataTableResponse res = new DataTableResponse { recordsTotal = dbContext.authors.Count(), draw = req.draw, recordsFiltered = filtered.Count(), data = data }; return(Json(res)); }
public JsonResult GridRead(DataTableRequest dt) { //Init Output DataTableModel <List <MGroupUserModel> > data = new DataTableModel <List <MGroupUserModel> >(); //Init Get Data List <MGroupUserModel> list = new List <MGroupUserModel>(); list = uow.GroupUserRepository.LookUp_MGroupUser(null, null, null); if (list.Any()) { data.recordsFiltered = list.Count(); data.recordsTotal = list.Count(); } else { data.recordsFiltered = 0; data.recordsTotal = 0; } //Init Optional data.draw = dt.Draw; data.data = list; return(Json(data, JsonRequestBehavior.AllowGet)); }
/// <summary> /// 获得分类树 /// </summary> /// <param name="request"></param> /// <returns></returns> public MODEL.DataTableModel.DataTableGrid GetCatalogGridTree(DataTableRequest treeData) { int count = 0; var data = base.GetListBy(sc => true).OrderBy(sc => sc.SEQ_NO); count = data.Count(); //GetPermission(request, out count); List <VIEW_MST_CATALOG> listCatalog = new List <VIEW_MST_CATALOG>(); //查找所有的一级权限 var ParentCatalog = data.Where(con => con.CATALOG_PCD == "" && con.SYNCOPERATION != "D"); foreach (var parent in ParentCatalog) { //实体转化 VIEW_MST_CATALOG parentItem = VIEW_MST_CATALOG.ToViewModel(parent); //获取子级 GetCatalogChildren(ref parentItem, data.ToList()); listCatalog.Add(parentItem); } return(new MODEL.DataTableModel.DataTableGrid() { data = listCatalog, total = count }); }
public DataTableResponse HiPotTestData([FromBody] DataTableRequest request) { try { IQueryable <HiPotTest> data = syncDBEngineeringDataRepo.GetHiPotTestData(); List <DataTableSearchColumn> searchCols = new List <DataTableSearchColumn>(); searchCols.Add(new DataTableSearchColumn() { DataType = TypeCode.DateTime, Name = "UnitIdentifier" }); searchCols.Add(new DataTableSearchColumn() { DataType = TypeCode.String, Name = "Hipot_DateTime" }); long recordCount; var pagedData = data.GetPagedData <HiPotTest>(request, searchCols, out recordCount); return(new DataTableResponse { draw = request.Draw, recordsTotal = recordCount, recordsFiltered = recordCount, data = pagedData.ToArray(), error = "" }); } catch (Exception ex) { logger.Error(ex); throw; } }
public async Task <IHttpActionResult> Search([FromBody] DataTableRequest request) { try { if (ModelState.IsValid) { var stds = await new StudentManager().Search(request); if (stds != null) { return(Ok(stds)); } else { return(new System.Web.Http.Results.StatusCodeResult(HttpStatusCode.NoContent, this.Request)); } } else { return(BadRequest("error while validating your request")); } } catch (Exception) { return(InternalServerError()); } }
public IActionResult UserGrantDataTablePaging([FromRoute] long id, [FromBody] DataTableRequest request) { var result = _userService.DataTablePaging <UserDataTableGrantViewModel>(_userService.Repository.Query().Include(u => u.Pages), request); result.Data.ToList().ForEach(u => u.Checked = u.PageIds.Any(p => p == id)); return(Ok(result)); }
public JsonResult GetProducts(DataTableRequest request) { IEnumerable <ProductViewModel> products = new List <ProductViewModel>(); if (string.IsNullOrEmpty(request.Search)) { products = _iProductService.GetAllProducts(); } else { products = _iProductService.GetAllProducts().Where(x => x.Name.ToLower().Contains(request.Search.ToLower())); //Search } var pagedProducts = products.ToList().Skip(request.Start).Take(request.Length); //Pagination foreach (var item in pagedProducts) //Get Image from helper { item.PhotoName = Utilities.GetImage(item.Photo); } TempData["Products"] = products; //Prepare response DataTableResponse objDataTableResponse = new DataTableResponse(); objDataTableResponse.draw = request.Draw; objDataTableResponse.recordsTotal = products.Count(); objDataTableResponse.recordsFiltered = products.Count(); objDataTableResponse.data = pagedProducts.ToArray(); objDataTableResponse.error = ""; return(Json(objDataTableResponse, JsonRequestBehavior.AllowGet)); }
public IEnumerable <Users> Get(DataTableRequest request) { IQueryable <Users> query = _dbSet; var filter = ExpressionsGenerator.GetFilter <Users>(request.Columns, "users"); if (filter != null) { query = query.Where(filter); } List <Expression <Func <Users, object> > > includeProperties = new List <Expression <Func <Users, object> > >(); includeProperties.Add(u => u.UserClaims); includeProperties.Add(u => u.UserLogins); includeProperties.Add(u => u.UserRoles); includeProperties.Add(u => u.UserTokens); foreach (var includeProperty in includeProperties) { query = query.Include(includeProperty); } if (request.Order != null && request.Order.Count() > 0) { query = ExpressionsGenerator.OrderFilter(query, request.Columns, request.Order); } return(query.Skip(request.Start).Take(request.Length).ToList()); }
public ActionResult Data(DataTableRequest<Product> request) { var dbcontext = new DB(); dbcontext.CreateQuery<Product>(request.GetInitESQL()); return Content(request.GetData(dbcontext).DataTableInitJson(request)); }