public async Task <IActionResult> GetPagedResult(CreditCardJqDataTableRequestModel model) { var pagedResult = await _creditCardManager.GetPagedResultAsync(model); return(Ok(pagedResult)); }
public async Task <JqDataTableResponse <CreditCardListItemDto> > GetPagedResultAsync(CreditCardJqDataTableRequestModel model) { if (model.Length == 0) { model.Length = Constants.DefaultPageSize; } var filterKey = model.Search.Value; var linqstmt = (from cc in _dataContext.CreditCards where cc.Status != Constants.RecordStatus.Deleted && (model.FilterKey == null || EF.Functions.Like(cc.Number, "%" + model.FilterKey + "%") || EF.Functions.Like(cc.CardHolderName, "%" + model.FilterKey + "%") || EF.Functions.Like(cc.BankName, "%" + model.FilterKey + "%")) select new CreditCardListItemDto { Id = cc.Id, CreditCardNumber = cc.Number, BankName = cc.BankName, CardHolderName = cc.CardHolderName, Status = cc.Status }) .AsNoTracking(); var sortExpression = model.GetSortExpression(); var pagedResult = new JqDataTableResponse <CreditCardListItemDto> { RecordsTotal = await _dataContext.CreditCards.CountAsync(x => x.Status != Constants.RecordStatus.Deleted), RecordsFiltered = await linqstmt.CountAsync(), Data = await linqstmt.OrderBy(sortExpression) .Skip(model.Start) .Take(model.Length) .ToListAsync() }; return(pagedResult); }
public async Task <JqDataTableResponse <CreditCardListItemDto> > GetPagedResultAsync(CreditCardJqDataTableRequestModel model) { return(await _creditCardRepository.GetPagedResultAsync(model)); }