Ejemplo n.º 1
0
        private void RecipeToDb(List <CommodityShadow> commodityList, string recipeName, string recipeDescription,
                                RecipeCategory recipeCategory, Recipe recipe = null)
        {
            var rcModel = new RCModel(_dbPath);
            var recipeCommodityModel = new RecipeCommodityModel(_dbPath);
            var recipeModel          = new RecipeModel(_dbPath);
            var commodityModel       = new CommodityModel(_dbPath);

            if (recipe == null)
            {
                recipe = recipeModel.CreateRecipe(recipeName, recipeDescription);
            }

            rcModel.CreateRC(recipe, recipeCategory);

            foreach (var commodityShadow in commodityList)
            {
                if (commodityShadow.Commodity != null)
                {
                    recipeCommodityModel.CreateRecipeCommodity(recipe, commodityShadow.Commodity, commodityShadow.Value,
                                                               commodityShadow.Unit.ToString());
                }
                else
                {
                    var commodity = commodityModel.CreateCommodity(commodityShadow.Name);
                    recipeCommodityModel.CreateRecipeCommodity(recipe, commodity, commodityShadow.Value,
                                                               commodityShadow.Unit.ToString());
                }
            }
        }
Ejemplo n.º 2
0
        public List <CommodityShadow> GetCommoditiesFromRecipe(Recipe recipe)
        {
            var recipeCommodityModel = new RecipeCommodityModel(_dbPath);
            var list = recipeCommodityModel.GetRecipeCommodity(recipe);

            var list_1 = new List <CommodityShadow>();

            foreach (var recipeCommodity in list)
            {
                Units unit;
                try
                {
                    unit = (Units)Enum.Parse(typeof(Units), recipeCommodity.Unit);
                }
                catch (ArgumentException)
                {
                    unit = Units.stk; // Just something
                }

                list_1.Add(new CommodityShadow
                {
                    Id        = recipeCommodity.Recipe.Id,
                    Commodity = recipeCommodity.Commodity,
                    Name      = recipeCommodity.Commodity.Name,
                    Unit      = unit,
                    Value     = recipeCommodity.Value
                });
            }

            return(list_1);
        }
Ejemplo n.º 3
0
        public ScrapeVM(string dbPath)
        {
            _commodityModel       = new CommodityModel(dbPath);
            _recipeModel          = new RecipeModel(dbPath);
            _rcModel              = new RCModel(dbPath);
            _recipeCommodityModel = new RecipeCommodityModel(dbPath);

            var recipeCategoryVm = new RecipeCategoryVM(dbPath);

            _scrape = new Scrape(this);
            _scrape.SetContentCategoryDropdown(recipeCategoryVm.GetRecipeCategories());
            _scrape.ShowDialog();
        }
Ejemplo n.º 4
0
        public void DeleteAllContent()
        {
            // All Model are initialized
            var commodiytModel       = new CommodityModel(_dbPath);
            var rcModel              = new RCModel(_dbPath);
            var recipeCategoryModel  = new RecipeCategoryModel(_dbPath);
            var recipeCommodityModel = new RecipeCommodityModel(_dbPath);
            var recipeModel          = new RecipeModel(_dbPath);

            // All data is wiped
            rcModel.DeleteAllRC();
            recipeCommodityModel.DeleteAllRecipeCommodities();
            recipeCategoryModel.DeleteRecipeCategory();
            recipeModel.DeleteRecipes();
            commodiytModel.DeleteCommodity();
        }
Ejemplo n.º 5
0
        public void UpdateRecipe(List <CommodityShadow> commodityList, string recipeName, string recipeDescription,
                                 RecipeCategory recipeCategory, Recipe recipe)
        {
            using (var scope = new TransactionScope())
            {
                var rcModel = new RCModel(_dbPath);
                var recipeCommodityModel = new RecipeCommodityModel(_dbPath);
                var recipeModel          = new RecipeModel(_dbPath);

                // We do not want to delete the recipe, since this will change its place
                // on the list, but we delete all the connections to other tuples!
                rcModel.DeleteRC(recipe);

                recipeCommodityModel.DeleteRecipeCommodities(recipe);

                recipeModel.EditRecipe(recipe, recipeName, recipeDescription);

                RecipeToDb(commodityList, recipeName, recipeDescription, recipeCategory, recipe);

                scope.Complete();
            }
        }
Ejemplo n.º 6
0
        public void PopulateDBDummyData()
        {
            DeleteAllContent();
            // All Model are initialized
            var commodiytModel       = new CommodityModel(_dbPath);
            var rcModel              = new RCModel(_dbPath);
            var recipeCategoryModel  = new RecipeCategoryModel(_dbPath);
            var recipeCommodityModel = new RecipeCommodityModel(_dbPath);
            var recipeModel          = new RecipeModel(_dbPath);
            // Add some cool recipes yes.

            // Creating Categories
            var recipeCategoryAftensmad = recipeCategoryModel.CreateRecipeCategory("Aftensmad");
            var recipeCategoryDessert   = recipeCategoryModel.CreateRecipeCategory("Dessert");

            // Creating some recipies
            var recipeLasagna = recipeModel.CreateRecipe("Lasagne",
                                                         "Kødsovs: Svits kødet i olie i en bred gryde, til det har skiftet farve.\nPil og hak løgene. Skræl gulerod og selleri og hak det fint. Svits løg, hvidløg og grøntsager et par minutter. Tilsæt lauerbærblade, oregano, timian, salt og peber.\nOstesauce: Semlt smærret i en gryde. Drys melet i og pisk blandingen sammen. Pisk mælken i lidt ad gangen og kog saucen igennem nogle minutter. Rør osten i.\nSmag til med revet muskat, salt og peber.\nSmør et ovnfast fad eller en lille bradepande.\nSaml lasagnen: Læg lasagneplader, kødsauce og ostesauce = spring evt. ostesaucen over i midten, det er vigtigt, at der er nok til at dzkke overfladen. Drys parmesan over.\nLad lasagnen trække ca. 20 in. (eller til pladerne er bløde), inden den kommer i ovnen. Bag lasagnen i ovnen ved 180 grader i ca. 50 min. Lad den hvile 5 min. inden udskæring.\n\nTIP: Hvis man bruger friske lasagneplader, skal lasagnen ikke trække i 20 m in.\nTilsæt evt. flere grøntsager til kødsaucen, fx 1 squasch, 1 peberfrugt, el. 1 pastinak, skåret i tern.");

            var recipeBananaSplit = recipeModel.CreateRecipe("Banana split",
                                                             "Lav chokoladesirup: \n" +
                                                             "Bring alle ingredienserne i kog under omrøring. Køl det så af. Chokoladesiruppen kan holde sig længe i køleskabet.\n\n" +
                                                             "Lav bananasplit: \n" +
                                                             "Flæk bananen og læg hver halvdel på langs i skålen. En klassisk banana split skal helst serveres i en aflang glasskål af nogenlunde samme længde som bananen. \n" +
                                                             "Læg tre kugler is i midten, en kugle vanille-, en kugle chokolade- og en kugle jordbæris. Pynt vanilleisen med chokoladesirup, jordbærisen med hakket ananas og chokoladeisen med jordbærskiver. Pynt yderligere med flødeskum, hakkede hasselnødder, mere chokoladesirup og 2-3 røde cocktailbær. En banana split skal være stor og vulgær at se på - så hold endelige ikke igen!");

            // Now we need to bind them together! We do need these objects :D
            rcModel.CreateRC(recipeLasagna, recipeCategoryAftensmad);
            rcModel.CreateRC(recipeBananaSplit, recipeCategoryDessert);

            var salt = commodiytModel.CreateCommodity("Salt");

            // Adding commodities
            recipeCommodityModel.CreateRecipeCommodity(recipeLasagna, commodiytModel.CreateCommodity("Lasagneplader"),
                                                       250, Units.g.ToString());
            recipeCommodityModel.CreateRecipeCommodity(recipeLasagna, commodiytModel.CreateCommodity("Hakket oksekød"),
                                                       500, Units.g.ToString());
            recipeCommodityModel.CreateRecipeCommodity(recipeLasagna, commodiytModel.CreateCommodity("Olie"), 1,
                                                       Units.spsk.ToString());
            recipeCommodityModel.CreateRecipeCommodity(recipeLasagna, commodiytModel.CreateCommodity("Løg"), 2,
                                                       Units.stk.ToString());
            recipeCommodityModel.CreateRecipeCommodity(recipeLasagna, commodiytModel.CreateCommodity("Gulerod"), 1,
                                                       Units.stk.ToString());
            recipeCommodityModel.CreateRecipeCommodity(recipeLasagna, commodiytModel.CreateCommodity("Selleri"), 100,
                                                       Units.g.ToString());
            recipeCommodityModel.CreateRecipeCommodity(recipeLasagna, commodiytModel.CreateCommodity("Laurbærblade"), 1,
                                                       Units.stk.ToString());
            recipeCommodityModel.CreateRecipeCommodity(recipeLasagna, commodiytModel.CreateCommodity("Oregano"), 2,
                                                       Units.tsk.ToString());
            recipeCommodityModel.CreateRecipeCommodity(recipeLasagna, commodiytModel.CreateCommodity("Timian"), 1,
                                                       Units.tsk.ToString());
            recipeCommodityModel.CreateRecipeCommodity(recipeLasagna, salt, 0.75, Units.stk.ToString());
            recipeCommodityModel.CreateRecipeCommodity(recipeLasagna, commodiytModel.CreateCommodity("Peber"), 1,
                                                       Units.stk.ToString());
            recipeCommodityModel.CreateRecipeCommodity(recipeLasagna, commodiytModel.CreateCommodity("Hvidløg"), 3,
                                                       Units.stk.ToString());
            recipeCommodityModel.CreateRecipeCommodity(recipeLasagna, commodiytModel.CreateCommodity("Hakkede tomater"),
                                                       1, Units.stk.ToString());
            recipeCommodityModel.CreateRecipeCommodity(recipeLasagna, commodiytModel.CreateCommodity("Tomatpure"), 3,
                                                       Units.spsk.ToString());
            recipeCommodityModel.CreateRecipeCommodity(recipeLasagna, commodiytModel.CreateCommodity("Oksebuillon"), 3,
                                                       Units.dl.ToString());
            recipeCommodityModel.CreateRecipeCommodity(recipeLasagna, commodiytModel.CreateCommodity("Smør"), 25,
                                                       Units.g.ToString());
            recipeCommodityModel.CreateRecipeCommodity(recipeLasagna, commodiytModel.CreateCommodity("Hvedemel"), 3,
                                                       Units.spsk.ToString());
            recipeCommodityModel.CreateRecipeCommodity(recipeLasagna, commodiytModel.CreateCommodity("Mælk"), 6,
                                                       Units.dl.ToString());
            recipeCommodityModel.CreateRecipeCommodity(recipeLasagna, commodiytModel.CreateCommodity("Muskatnød"), 1,
                                                       Units.stk.ToString());
            recipeCommodityModel.CreateRecipeCommodity(recipeLasagna, commodiytModel.CreateCommodity("Parmasan"), 50,
                                                       Units.g.ToString());


            recipeCommodityModel.CreateRecipeCommodity(recipeBananaSplit, commodiytModel.CreateCommodity("Banan"), 1,
                                                       Units.stk.ToString());
            recipeCommodityModel.CreateRecipeCommodity(recipeBananaSplit, commodiytModel.CreateCommodity("Vanile is"),
                                                       1, Units.stk.ToString());
            recipeCommodityModel.CreateRecipeCommodity(recipeBananaSplit,
                                                       commodiytModel.CreateCommodity("Chokolade is"), 1, Units.stk.ToString());
            recipeCommodityModel.CreateRecipeCommodity(recipeBananaSplit, commodiytModel.CreateCommodity("Jordbær is"),
                                                       1, Units.stk.ToString());
            recipeCommodityModel.CreateRecipeCommodity(recipeBananaSplit, commodiytModel.CreateCommodity("Ananas"), 1,
                                                       Units.stk.ToString());
            recipeCommodityModel.CreateRecipeCommodity(recipeBananaSplit, commodiytModel.CreateCommodity("Jordbær"), 1,
                                                       Units.stk.ToString());
            recipeCommodityModel.CreateRecipeCommodity(recipeBananaSplit,
                                                       commodiytModel.CreateCommodity("Chokoladesirup"), 1, Units.spsk.ToString());
            recipeCommodityModel.CreateRecipeCommodity(recipeBananaSplit,
                                                       commodiytModel.CreateCommodity("Hassel nødder"), 1, Units.stk.ToString());
            recipeCommodityModel.CreateRecipeCommodity(recipeBananaSplit, commodiytModel.CreateCommodity("cocktailbær"),
                                                       3, Units.stk.ToString());
            recipeCommodityModel.CreateRecipeCommodity(recipeBananaSplit, commodiytModel.CreateCommodity("Vand"), 2,
                                                       Units.dl.ToString());
            recipeCommodityModel.CreateRecipeCommodity(recipeBananaSplit, commodiytModel.CreateCommodity("Sukker"), 150,
                                                       Units.g.ToString());
            recipeCommodityModel.CreateRecipeCommodity(recipeBananaSplit, commodiytModel.CreateCommodity("Kakao"), 60,
                                                       Units.g.ToString());
            recipeCommodityModel.CreateRecipeCommodity(recipeBananaSplit,
                                                       commodiytModel.CreateCommodity("Vanileessens"), 1, Units.stk.ToString());
            recipeCommodityModel.CreateRecipeCommodity(recipeBananaSplit, salt, 5, Units.g.ToString());
        }
Ejemplo n.º 7
0
        public List <RecipeCommodity> GetCommodities(Recipe recipe)
        {
            var recipeCommodityModel = new RecipeCommodityModel(_dbPath);

            return(recipeCommodityModel.GetRecipeCommodity(recipe));
        }