示例#1
0
        private void loadDay(PlanDayViewModel day, PlanDaySaveModel save,
                             Dictionary <string, ConsumableViewModel> foods,
                             Dictionary <string, RecipeViewModel> recipes)
        {
            day.Meals.Clear();

            if (save == null)
            {
                return;
            }

            foreach (PlanMealSaveModel saveMeal in save.Meals)
            {
                PlanMealViewModel model = new PlanMealViewModel(mainViewModel, this, day)
                {
                    Name = saveMeal.Name,
                    Hour = saveMeal.Hour,
                    Min  = saveMeal.Min
                };
                foreach (PlanItemSaveModel item in saveMeal.Items)
                {
                    IConsumableViewModel consumable = null;
                    if (item.IsRecipe)
                    {
                        if (recipes.ContainsKey(item.Id))
                        {
                            consumable = recipes[item.Id];
                        }
                    }
                    else
                    {
                        if (foods.ContainsKey(item.Id))
                        {
                            consumable = foods[item.Id];
                        }
                    }
                    if (consumable == null)
                    {
                        continue;
                    }

                    var viewModel = new PlanConsumableViewModel(consumable)
                    {
                        Quantity = item.Quantity
                    };
                    model.Consumables.Add(viewModel);
                }
                day.Meals.Add(model);
            }
        }
示例#2
0
        public static PlanMealSaveModel Convert(PlanMealViewModel meal)
        {
            var n = new PlanMealSaveModel()
            {
                Name = meal.Name,
                Hour = meal.Hour,
                Min  = meal.Min
            };

            foreach (PlanConsumableViewModel item in meal.Consumables)
            {
                n.Items.Add(PlanItemSaveModel.Convert(item));
            }
            return(n);
        }