Ejemplo n.º 1
0
        public async Task <IActionResult> AlreadyMade()
        {
            RecipeBookViewModel recipeBookViewModel = new RecipeBookViewModel();

            ApplicationUser user = await _userManager.GetUserAsync(HttpContext.User);

            var mealTypes = from mt in _context.MealType
                            select mt;

            recipeBookViewModel.mealTypes = mealTypes;
            recipeBookViewModel.meals     = new List <IEnumerable <MealDTO> >();

            foreach (MealType type in mealTypes)
            {
                var userMeals = await _context.UserMeal.Include(us => us.Meal).ThenInclude(m => m.MealType).Where(us => us.AlreadyMade == true && us.UserID == user.Id).AsNoTracking().ToListAsync();

                List <MealDTO> meals = new List <MealDTO>();
                foreach (UserMeal userMeal in userMeals)
                {
                    if (userMeal.Meal.MealTypeID == type.MealTypeID)
                    {
                        meals.Add(GetMealDTO(userMeal.Meal));
                    }
                }

                meals = meals.OrderBy(m => m.Name).ToList();

                recipeBookViewModel.meals.Add(meals);
            }

            return(View(recipeBookViewModel));
        }
Ejemplo n.º 2
0
        // GET: Meals
        public async Task <IActionResult> Index()
        {
            RecipeBookViewModel recipeBookViewModel = new RecipeBookViewModel();

            var mealTypes = from mt in _context.MealType
                            select mt;

            recipeBookViewModel.mealTypes = mealTypes;
            recipeBookViewModel.meals     = new List <IEnumerable <MealDTO> >();

            int size = 9;

            foreach (var type in mealTypes)
            {
                IQueryable <MealDTO> mealDTOs = GetMeals(type.Name);
                mealDTOs = mealDTOs.OrderByDescending(m => m.Stars);
                mealDTOs = mealDTOs.Take(size).AsQueryable();
                recipeBookViewModel.meals.Add(mealDTOs);
            }

            return(View(recipeBookViewModel));
        }