public IActionResult Create(int id) { var ingections = IngestionViewModel.OneDayIngestions; var viewModel = new OneDayFoodViewModel { AppUserID = id, Date = DateTime.Today.Date, Ingestions = ingections }; PopulateFoodDropDownList(); return(View(viewModel)); }
public async Task <OneDayFood> AddOrEditOneDayFoodAsync(OneDayFoodViewModel viewModel, int id) { var oneDayFood = new OneDayFood(); var check = await GetOneDayFoodBiIdAsync(id); if (check != null) { oneDayFood = check; } oneDayFood.Water = viewModel.Water; if (oneDayFood.OneDayFoodID == 0) { oneDayFood.Date = viewModel.Date; oneDayFood.AppUserID = viewModel.AppUserID; _context.OneDayFood.Add(oneDayFood); _context.SaveChanges(); return(await OneDayFoodByUserIdForDateAsync(viewModel.AppUserID, viewModel.Date)); } _context.SaveChanges(); return(await GetOneDayFoodBiIdAsync(id)); }
public async Task <IActionResult> Create(OneDayFoodViewModel viewModel, string[][] Weight, string[][] food) { var dates = await _oneDayFoodRepository.OneDayFoodByUserIdForDateAsync(viewModel.AppUserID, viewModel.Date); if (dates != null) { ModelState.AddModelError("", errorMessage: "Measurement on this date already exist!"); } if (ModelState.IsValid) { viewModel.Ingestions = new List <IngestionViewModel>(); var oneDayFood = await _oneDayFoodRepository.AddOrEditOneDayFoodAsync(viewModel, 0); int i = 0; foreach (var ingestion in IngestionViewModel.OneDayIngestions) { ingestion.OneDayFoodId = oneDayFood.OneDayFoodID; var ing = _ingestionRepository.CreateIngestionsAsync(ingestion).Result; if (food[i][0] != null) { for (int j = 0; j < food[i].Length; j++) { var weight = new WeightOfFoodViewModel { Food = _foodRepository.GetFoodAsync(int.Parse(food[i][j])).Result, IngestionId = ing.IngestionID, Weight = int.Parse(Weight[i][j]) }; var weightOffood = _weightOfFoodRepository.CreatetWeightOfFoodAsync(weight).Result; } } i++; } return(RedirectToAction("Detail", new { id = oneDayFood.OneDayFoodID })); } return(View(viewModel)); }
// GET: /<controller>/ public IActionResult Index(int id) { ViewData["user"] = id; var AllOneDayFoodForUser = _oneDayFoodRepository.OneDayFoodsByUserId(id); var AllMealsViewModel = new List <MealDetailViewModel>(); foreach (var oneDayFood in AllOneDayFoodForUser) { var list = new List <CountMealPerIngestion>(); var ingList = new List <IngestionViewModel>(); foreach (var ingestion in oneDayFood.Ingestions) { var weightList = new List <WeightOfFoodViewModel>(); foreach (var weightOfFood in ingestion.WeightOfFood) { var newWeight = new WeightOfFoodViewModel { Food = weightOfFood.Food, IngestionId = weightOfFood.IngestionID, Weight = weightOfFood.Weight }; weightList.Add(newWeight); } var ingViewModel = new IngestionViewModel { WeightOfFood = weightList, Name = ingestion.Name, OneDayFoodId = oneDayFood.OneDayFoodID }; ingList.Add(ingViewModel); list.Add(ingViewModel.GetCountMealPerIngestion); } var newOneDayViewModel = new OneDayFoodViewModel { AppUserID = id, Date = oneDayFood.Date, Ingestions = ingList, Water = oneDayFood.Water }; AllMealsViewModel.Add(new MealDetailViewModel { CountMealPerIngestions = list, OneDayFoodViewModel = newOneDayViewModel, OneDayFoodId = oneDayFood.OneDayFoodID }); } return(View(AllMealsViewModel)); }