public GetReciepesResponse GetRecipes(GetRecipesRequest request) { var response = new GetReciepesResponse(); response.list = _recipeRepository .GetAll(request.filter, request.orderBy, "Ingredients", "Ingredients.Ingredient") .ToRecipeViewModel(); return(response); }
public async Task <IEnumerable <RecipeDto> > Handle(GetRecipesRequest request, CancellationToken cancellationToken) { var recipes = await _context.RecipeVariations .Include(rv => rv.Author) .Include(rv => rv.Ingredients) .Include(rv => rv.Recipe) .OrderByDescending(rv => rv.CreatedAt) .Take(100) .ToArrayAsync() .ConfigureAwait(false); return(_mapper.Map <IEnumerable <RecipeDto> >(recipes)); }
public async Task <PaginatedList <RecipeDto> > GetAll(GetRecipesRequest request) { var paginatedRecipes = await _context.Recipes .Include(x => x.RecipeIngredients) .ThenInclude(x => x.Ingredient) .Include(x => x.Area) .Include(x => x.Category) .ProjectTo <RecipeDto>(_mapper.ConfigurationProvider) .Where(x => string.IsNullOrEmpty(request.SearchPhrase) || x.Instructions.ToLower().Contains(request.SearchPhrase.ToLower()) || x.Name.ToLower().Contains(request.SearchPhrase.ToLower()) || x.Category.ToLower().Contains(request.SearchPhrase.ToLower())) .PaginatedListAsync(request.PageNumber, request.PageSize, request.SortBy, request.SortDirection); return(paginatedRecipes); }
public async Task <IActionResult> GetAll([FromQuery] GetRecipesRequest request) { var vm = await _recipesService.GetAll(request); return(Ok(vm)); }