private void AddNewFoodModel(IList <JsonModels.Food> listOfFoods, int meal) { var currentId = User.Identity.GetUserId(); var userMenu = _context.UserMenus.FirstOrDefault(d => d.CaloriesCounter.UserId == currentId && d.Date == DateTime.Today); if (listOfFoods[0].serving_qty > 1 || listOfFoods[0].serving_qty < 1) { ChangingServingToGrams(ref listOfFoods); } if (listOfFoods[0].serving_weight_grams == null) { listOfFoods[0].serving_qty = 1; listOfFoods[0].serving_qty = 1; listOfFoods[0].serving_unit = "100 grams"; listOfFoods[0].serving_weight_grams = 100; } FoodSaves food = new FoodSaves { UserMenuId = userMenu.UserMenuId, Name = listOfFoods[0].food_name, Carbs = (short)listOfFoods[0].nf_total_carbohydrate, Fat = (short)listOfFoods[0].nf_total_fat, Kcal = (short)listOfFoods[0].nf_calories, Proteins = (short)listOfFoods[0].nf_protein, CarbsDefault = (short)listOfFoods[0].nf_total_carbohydrate, FatDefault = (short)listOfFoods[0].nf_total_fat, KcalDefault = (short)listOfFoods[0].nf_calories, ProteinsDefault = (short)listOfFoods[0].nf_protein, ServingUnit = listOfFoods[0].serving_unit, ServingSize = listOfFoods[0].serving_qty, ServingWeightGrams = (short)listOfFoods[0].serving_weight_grams, Day = DateTime.Today, Meal = (byte)meal }; if (listOfFoods[0].brand_name != null) { food.Name = listOfFoods[0].food_name + " by " + listOfFoods[0].brand_name; } if (food.ServingSize == 1 & food.ServingUnit == "100 grams") { food.Is100Grams = true; } else { food.Is100Grams = false; } food.Name = char.ToUpper(food.Name[0]) + food.Name.Substring(1); UpdatePlusSumOfNutriens(food); _context.FoodSaveses.Add(food); _context.SaveChanges(); }
//Updating UserMenu private void UpdatePlusSumOfNutriens(FoodSaves food) { var id = User.Identity.GetUserId(); UserMenu sumOfNutriens = _context.UserMenus.FirstOrDefault(s => s.Date == DateTime.Today && s.CaloriesCounter.UserId == id); sumOfNutriens.CaloricDemandChangable -= (short)food.Kcal; sumOfNutriens.FatChangable -= (short)food.Fat; sumOfNutriens.CarbohydratesChangable -= (short)food.Carbs; sumOfNutriens.ProteinsChangable -= (short)food.Proteins; _context.SaveChanges(); }