/// <inheritdoc />
        public async Task Load(RecipeViewModel recipeVm, IReadOnlyCollection <WorkplanViewModel> workplans)
        {
            _isSelfManagedRecipe = false;
            await LoadTypeAndWorkplans(recipeVm.Model, workplans);

            WorkplanViewModel wp = null;

            if (recipeVm.Model.WorkplanId != 0)
            {
                wp = workplans.FirstOrDefault(w => w.Id == recipeVm.Model.WorkplanId);
            }
            recipeVm.Workplan = wp;

            EditableObject = recipeVm;
        }
        /// <inheritdoc />
        public async Task Load(long recipeId, IReadOnlyCollection <WorkplanViewModel> workplans)
        {
            _isSelfManagedRecipe = true;

            var recipeModel = await ProductServiceModel.GetRecipe(recipeId);

            await LoadTypeAndWorkplans(recipeModel, workplans);

            WorkplanViewModel wp = null;

            if (recipeModel.WorkplanId != 0)
            {
                wp = workplans.FirstOrDefault(w => w.Id == recipeModel.WorkplanId);
            }

            EditableObject = new RecipeViewModel(recipeModel)
            {
                Workplan = wp
            };
        }