Beispiel #1
0
        public async Task <JqDataTableResponse <VendorListItemDto> > GetPagedResultAsync(VendorJqDataTableRequestModel model)
        {
            if (model.Length == 0)
            {
                model.Length = Constants.DefaultPageSize;
            }

            var filterKey = model.Search.Value;

            var linqStmt = (from v in _dataContext.Vendors
                            where v.Status != Constants.RecordStatus.Deleted &&
                            (model.FilterKey == null ||
                             EF.Functions.Like(v.Name, "%" + model.FilterKey + "%") ||
                             EF.Functions.Like(v.Email, "%" + model.FilterKey + "%"))
                            select new VendorListItemDto
            {
                Id = v.Id,
                HSTNumber = v.HSTNumber,
                Name = v.Name,
                Email = v.Email,
                Phone = v.Phone,
                Fax = v.Fax,
                Website = v.Website,
                Status = v.Status
            })
                           .AsNoTracking();
            var sortExpression = model.GetSortExpression();
            var pagedResult    = new JqDataTableResponse <VendorListItemDto>
            {
                RecordsTotal    = await _dataContext.Vendors.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 <VendorListItemDto> > GetPagedResultAsync(VendorJqDataTableRequestModel model)
 {
     return(await _vendorRepository.GetPagedResultAsync(model));
 }
Beispiel #3
0
        public async Task <IActionResult> GetPagedResult(VendorJqDataTableRequestModel model)
        {
            var pagedResult = await _vendorManager.GetPagedResultAsync(model);

            return(Ok(pagedResult));
        }