Beispiel #1
0
        public IActionResult AddMealAsFood(MealItemViewModel[] model)
        {
            var member = DiabetCalcService.EnsureMemberExists(_diabetWebData, User.Identity.Name);
            var meals  = _diabetWebData.GetMealItems(User.Identity.Name);
            var item   = new FoodItem();
            var tw     = (double)0;

            if ((meals != null) && (meals.Length > 0))
            {
                for (int i = 0; i < meals.Length; i++)
                {
                    tw += (double)meals[i].Weight;
                }
                if (tw > 0)
                {
                    for (int i = 0; i < meals.Length; i++)
                    {
                        item.Protein       += meals[i].FoodItem.Protein * (double)meals[i].Weight / tw;
                        item.Fat           += meals[i].FoodItem.Fat * (double)meals[i].Weight / tw;
                        item.Carbohydrates += meals[i].FoodItem.Carbohydrates * (double)meals[i].Weight / tw;
                    }
                }
                item.Protein       = Math.Round(item.Protein, 2);
                item.Fat           = Math.Round(item.Fat, 2);
                item.Carbohydrates = Math.Round(item.Carbohydrates, 2);
                DiabetCalcService.CalcEnergy(item);
            }
            return(RedirectToAction(nameof(AddFoodItem), item));
        }