public async Task <Diet> UpdateDiet(DietDataJson dietData) { var user = await accountRepository.GetCurrentUser(); Diet updateDiet = await dietRepository.GetDiet(user.Id); await dietRepository.ChangeDietsAndDimensionsStatus(user.Id); await AddDimendions(dietData.Arms, dietData.Chest, dietData.Waist, dietData.Thig, dietData.Buttocks, user); Diet newDiet = new Diet(); if (dietData.DietTarget == 2) { newDiet.Kcal = updateDiet.Kcal + 200; newDiet.Mass = true; newDiet.WeightReduction = false; newDiet.WeightMaintenance = false; } else if (dietData.DietTarget == 1) { if (user.isMale == true) { if (updateDiet.Kcal > 1300) { newDiet.Kcal = updateDiet.Kcal - 100; } else { newDiet.Kcal = updateDiet.Kcal; } newDiet.Mass = false; newDiet.WeightReduction = true; newDiet.WeightMaintenance = false; } } else if (dietData.DietTarget == 0) { newDiet.Kcal = updateDiet.Kcal; newDiet.Mass = false; newDiet.WeightReduction = false; newDiet.WeightMaintenance = true; } newDiet.Protein = Convert.ToInt32(newDiet.Kcal * 0.3); newDiet.Fat = Convert.ToInt32(newDiet.Kcal * 0.2); newDiet.Carbohydrates = Convert.ToInt32(newDiet.Kcal * 0.5); newDiet.IsActive = true; newDiet.ApplicationUserId = user.Id; newDiet.ApplicationUser = user; newDiet.Date = DateTime.Now; if (newDiet.WeightMaintenance == true) { await CreateMeal(4, newDiet.Kcal, newDiet); } else { await CreateMeal(5, newDiet.Kcal, newDiet); } await dietRepository.AddDiet(newDiet); user.Diets.Add(newDiet); await dietRepository.Save(); return(newDiet); }