예제 #1
0
        public async Task <IActionResult> GetMany([FromQuery] FoodSearchParams searchParams)
        {
            var ingredients = await _repo.GetMany(searchParams);

            var ingredientsToReturn = _mapper.Map <IEnumerable <IngredientForGetDto> >(ingredients);

            Response.AddPagination(ingredients.CurrentPage, ingredients.PageSize, ingredients.TotalCount, ingredients.TotalPages);

            return(Ok(ingredientsToReturn));
        }
예제 #2
0
        public async Task <PagedList <Dish> > GetMany(FoodSearchParams searchParams)
        {
            if (searchParams.Name == null)
            {
                searchParams.Name = "";
            }

            var dishes = _context.Set <Dish>().Where(d => d.Name.Contains(searchParams.Name)).OrderByDescending(d => d.Name).AsQueryable();

            dishes = Extensions.FilterDishes(dishes, searchParams);
            dishes = Extensions.SortDishes(dishes, searchParams);

            return(await PagedList <Dish> .CreateAsync(dishes, searchParams.PageNumber, searchParams.PageSize));
        }
예제 #3
0
        public async Task <PagedList <Ingredient> > GetMany(FoodSearchParams searchParams)
        {
            if (searchParams.Name == null)
            {
                searchParams.Name = "";
            }

            var ingredients = _context.Set <Ingredient>().Where(i => i.Name.Contains(searchParams.Name)).OrderByDescending(d => d.Name).AsQueryable();

            ingredients = Extensions.FilterIngredients(ingredients, searchParams);
            ingredients = Extensions.SortIngredients(ingredients, searchParams);

            return(await PagedList <Ingredient> .CreateAsync(ingredients, searchParams.PageNumber, searchParams.PageSize));
        }