/// <summary> /// Process the MealPlanAssignedCategorys sent by a Meal Plan. These are added if new (MealPlanAssignedCategoryId < 1) /// Updated if MealPlanAssignedCategoryId > 0 /// </summary> /// <param name="mealPlanId"></param> /// <param name="mealPlanAssignedCategorys"></param> public void ProcessList(int mealPlanId, List <MealPlanAssignedCategoryViewModel> mealPlanAssignedCategories) { foreach (MealPlanAssignedCategoryViewModel mealPlanAssignedCategoryDisplay in mealPlanAssignedCategories) { MealPlanAssignedCategory mealPlanAssignedCategory = new MealPlanAssignedCategory(); mealPlanAssignedCategory.MealPlanAssignedCategoryId = mealPlanAssignedCategoryDisplay.MealPlanAssignedCategoryId; mealPlanAssignedCategory.MealPlanId = mealPlanId; mealPlanAssignedCategory.MealPlanCategoryId = mealPlanAssignedCategoryDisplay.MealPlanCategoryId; mealPlanAssignedCategory.Active = mealPlanAssignedCategoryDisplay.Active; using (var dbContext = new ApplicationDbContext()) { if (mealPlanAssignedCategoryDisplay.MealPlanAssignedCategoryId > 0) { dbContext.Entry(mealPlanAssignedCategory).State = EntityState.Modified; } else { mealPlanAssignedCategory.Created = DateTime.Now; dbContext.MealPlanAssignedCategories.Add(mealPlanAssignedCategory); } dbContext.SaveChanges(); } } }
/// <summary> /// Get a list of the MealPlanAssignedCategorys associated with a Meal Plan (View Model) /// </summary> /// <param name="mealPlanId"></param> /// <returns></returns> public List <MealPlanAssignedCategoryViewModel> GetDisplayList(int mealPlanId) { var dbContext = new ApplicationDbContext(); List <MealPlanAssignedCategoryViewModel> mealPlanAssignedCategoriesViewModel = new List <MealPlanAssignedCategoryViewModel>(); mealPlanAssignedCategoriesViewModel = dbContext.MealPlanCategories.AsNoTracking().Select(x => new MealPlanAssignedCategoryViewModel { MealPlanCategoryId = x.MealPlanCategoryId, MealPlanCategoryDescription = x.Description, Active = x.Active }).ToList(); foreach (MealPlanAssignedCategoryViewModel mpac in mealPlanAssignedCategoriesViewModel) { // Lookup assigned category MealPlanAssignedCategory mealPlanAssignedCategory = dbContext.MealPlanAssignedCategories.Where(x => x.MealPlanId == mealPlanId && x.MealPlanCategoryId == mpac.MealPlanCategoryId).FirstOrDefault(); if (mealPlanAssignedCategory != null) { mpac.MealPlanAssignedCategoryId = mealPlanAssignedCategory.MealPlanAssignedCategoryId; mpac.MealPlanId = mealPlanId; mpac.MealPlanCategoryId = mealPlanAssignedCategory.MealPlanCategoryId; mpac.Active = mealPlanAssignedCategory.Active; } } return(mealPlanAssignedCategoriesViewModel); }
/// <summary> /// Get a MealPlanAssignedCategory based on Id /// </summary> /// <param name="mealPlanAssignedCategoryId"></param> /// <returns></returns> public MealPlanAssignedCategory Get(int mealPlanAssignedCategoryId) { using (var dbContext = new ApplicationDbContext()) { MealPlanAssignedCategory mealPlanAssignedCategory = new MealPlanAssignedCategory(); mealPlanAssignedCategory = dbContext.MealPlanAssignedCategories.Where(x => x.MealPlanAssignedCategoryId == mealPlanAssignedCategoryId).Single(); return(mealPlanAssignedCategory); } }
/// <summary> /// Get a single MealPlanAssignedCategory View Model /// </summary> /// <param name="mealPlanAssignedCategoryId"></param> /// <returns></returns> public MealPlanAssignedCategoryViewModel GetDisplay(int mealPlanAssignedCategoryId) { MealPlanAssignedCategory mealPlanAssignedCategory = Get(mealPlanAssignedCategoryId); MealPlanAssignedCategoryViewModel mealPlanAssignedCategoryViewModel = new MealPlanAssignedCategoryViewModel(); mealPlanAssignedCategoryViewModel.MealPlanAssignedCategoryId = mealPlanAssignedCategory.MealPlanAssignedCategoryId; mealPlanAssignedCategoryViewModel.MealPlanId = mealPlanAssignedCategory.MealPlanId; mealPlanAssignedCategoryViewModel.MealPlanCategoryId = mealPlanAssignedCategory.MealPlanCategoryId; mealPlanAssignedCategoryViewModel.Active = mealPlanAssignedCategory.Active; return(mealPlanAssignedCategoryViewModel); }