public async Task <IActionResult> GetAllPersonsAsync([FromQuery] PagedParameters pagedParameters) { var model = await _personService.GetAllPersonsAsync(pagedParameters); //var result = _mapper.Map<CatalogsEntity>(catalogs); return(Ok(model)); }
public async Task <IEnumerable <PersonsModel> > GetAllPersonsAsync(PagedParameters pagedParameters) { var personsModel = _context.Persons; var personsCollection = _context.Persons as IQueryable <Data.Entities.Persons>; var querySearch = pagedParameters.SearchQuery.Trim().ToLower(); var sortOrder = pagedParameters.SortOrder.Trim().ToLower(); //var CurrentSort = sortOrder; //CurrentSort = String.IsNullOrEmpty(sortOrder) ? "name_desc" : ""; //CurrentSort = sortOrder == "surName" ? "surName_desc" : "surName"; if (!string.IsNullOrWhiteSpace(querySearch)) { personsCollection = _context.Persons. Where(m => m.Name.Contains(querySearch) || m.NameEng.Contains(querySearch) || m.Surname.Contains(querySearch) || m.SurnameEng.Contains(querySearch) || m.PrivateNumber.Contains(querySearch) || m.Email.Contains(querySearch) || m.PhoneNumber.Contains(querySearch) || m.Address.Street.Contains(querySearch) || m.Address.City.Contains(querySearch) || m.Address.Country.Contains(querySearch)); } switch (sortOrder) { case "name_desc": personsCollection = personsCollection.OrderByDescending(s => s.Name); break; case "surname": personsCollection = personsCollection.OrderBy(s => s.Surname); break; case "surname_desc": personsCollection = personsCollection.OrderByDescending(s => s.Surname); break; case "name": personsCollection = personsCollection.OrderBy(s => s.Name); break; default: personsCollection = personsCollection.OrderBy(s => s.PersonId); break; } personsCollection = personsCollection .Skip(pagedParameters.PageSize * (pagedParameters.PageNumber - 1)) .Take(pagedParameters.PageSize); var personsList = await personsCollection.ToListAsync(); var result = Mapping.Mapper.Map <IEnumerable <PersonsModel> >(personsList); return(result); }
public async Task <ActionResult <List <ProductCategory> > > GetCategories([FromQuery] PagedParameters pagedParameters) { var products = await _repo.GetCategoryAsync(pagedParameters); if (products.Count() == 0) { return(NotFound()); } return(Ok(products)); }
public async Task <ActionResult <IReadOnlyList <Product> > > GetProducts([FromQuery] PagedParameters pagedParameters) { var products = await _repo.GetProductsAsync(pagedParameters); if (products.Count() == 0) { return(NotFound()); } return(Ok(_mapper.Map <IReadOnlyList <Product>, IReadOnlyList <ProductDto> >(products))); }
public async Task <IReadOnlyList <ProductCategory> > GetCategoryAsync(PagedParameters pagedParameters) { return(await _context.ProductCategories.Skip((pagedParameters.PageNumber - 1) *pagedParameters.PageSize) .Take(pagedParameters.PageSize).ToListAsync()); }
public async Task <IReadOnlyList <Product> > GetProductsAsync(PagedParameters pagedParameters) { return(await _context.Products.Skip((pagedParameters.PageNumber - 1) *pagedParameters.PageSize) .Take(pagedParameters.PageSize).Include(p => p.ProdCat).ToListAsync()); }