public async Task <ActionResult <List <EmployeeDTO> > > Get([FromQuery] PaginateDto paginateDto) { var queryable = context.Employees.AsQueryable(); await HttpContext.InsertPaginationParametersInHeader(queryable); var employees = await queryable.OrderBy(x => x.Id).Paginate(paginateDto).ToListAsync(); return(mapper.Map <List <EmployeeDTO> >(employees)); }
public PaginateDto <Stock> GetAll(PaginateQueryDto paginateDto) { var res = new PaginateDto <Stock> { Data = _context.Stock .OrderBy(stock => stock.Name) .Skip(paginateDto.Skip) .Take(paginateDto.Take) .ToList() }; if (paginateDto.RequireTotalCount) { res.TotalCount = _context.Stock.Count(); } return(res); }
public PaginateDto <Customer> GetAll(PaginateQueryDto paginateDto) { var res = new PaginateDto <Customer> { Data = _context.Customers .OrderBy(customer => customer.FirstName) .Skip(paginateDto.Skip) .Take(paginateDto.Take) .ToList() }; if (paginateDto.RequireTotalCount) { res.TotalCount = _context.Customers.Count(); } return(res); }
public PaginateDto <Product> GetAll(PaginateQueryDto paginateDto) { var res = new PaginateDto <Product> { Data = _context.Products .OrderBy(product => product.Name) .Skip(paginateDto.Skip) .Take(paginateDto.Take) .ToList() }; if (paginateDto.RequireTotalCount) { res.TotalCount = _context.Products.Count(); } return(res); }
public PaginateDto <StockHistory> GetAllHistory(PaginateQueryDto paginateDto) { var res = new PaginateDto <StockHistory> { Data = _context.StockHistories .OrderByDescending(stock => stock.Created) .Skip(paginateDto.Skip) .Take(paginateDto.Take) .Include(history => history.Product) .ToList() }; if (paginateDto.RequireTotalCount) { res.TotalCount = _context.StockHistories.Count(); } return(res); }
public PaginateDto <CustomerInvoice> GetAll(PaginateQueryDto paginateDto) { var res = new PaginateDto <CustomerInvoice> { Data = _context.CustomerInvoices .OrderByDescending(invoice => invoice.Created) .Skip(paginateDto.Skip) .Take(paginateDto.Take) .Include(invoice => invoice.Customer) .ToList() }; if (paginateDto.RequireTotalCount) { res.TotalCount = _context.CustomerInvoices.Count(); } return(res); }
public static IQueryable <T> Paginate <T>(this IQueryable <T> queryable, PaginateDto paginateDto) { return(queryable .Skip((paginateDto.Page - 1) * paginateDto.RecordsByPage) .Take(paginateDto.RecordsByPage)); }