public static List <Ingredient> CreateListOfIngredients() { List <Ingredient> ingredients = new List <Ingredient>(); string userInput = ""; while (userInput != "n") { string name = AuxiliaryMethod.LoadStringFromConsole("Zadejte název ingredience: ").ToLower(); double quantity = AuxiliaryMethod.LoadNumberFromConsole("Zadejte množství: "); string unit = AuxiliaryMethod.LoadStringFromConsole("Zadejte jednotku: "); ingredients.Add(new Ingredient(name, quantity, unit)); userInput = AuxiliaryMethod.EnterYesOrNo("Chcete přidat další ingredienci? a/n"); } return(ingredients); }
public static void AddIngredientsToShoppingList(Dictionary <Category, Recipe> randomMenu, Cookbook cookbook) { if (randomMenu.Any()) { string userInput = AuxiliaryMethod.EnterYesOrNo("Chcete přidat ingredience do nákupního seznamu? a/n"); if (userInput == "a") { int numberOfServings = (int)AuxiliaryMethod.LoadNumberFromConsole("\nPro kolik lidí budete vařit?"); foreach (var recipe in randomMenu.Values) { recipe.ConvertedIngredients = recipe.ConvertToTheNumberOfServings(numberOfServings); cookbook.ShoppingList.AddIngredientsToShoppingList(recipe); recipe.ConvertedIngredients.Clear(); } } } }
public static void AddRecipeToCookbook(Cookbook cookbook) { string endOfEntry = ""; while (endOfEntry != "n") { string name = AuxiliaryMethod.LoadStringFromConsole("\nZadejte název receptu:");; while (cookbook.Recipes.Any(p => p.Name.ToLower() == name.ToLower())) { Console.WriteLine("Recept s tímto názvem již existuje."); name = AuxiliaryMethod.LoadStringFromConsole("\nZadejte název receptu:"); } List <Ingredient> ingredients = RecipeConsoleUtility.CreateListOfIngredients(); int numberOfServings = (int)AuxiliaryMethod.LoadNumberFromConsole("Jaký je počet porcí?"); string preparation = AuxiliaryMethod.LoadStringFromConsole("Napište postup přípravy. Jednotlivé řádky můžete oddělit dvěma mezerami."); preparation = preparation.Replace(" ", "\n"); List <Category> categories = SelectCategories(); cookbook.AddRecipe(name, numberOfServings, preparation, ingredients, categories); endOfEntry = AuxiliaryMethod.EnterYesOrNo("Chcete zadat další recept? a/n"); } }
public static List <Category> SelectCategories() { List <Category> categories = new List <Category>(); string userInput = ""; while (userInput != "n") { Menu.ShowCategories(); int count = (int)Enum.GetValues(typeof(Category)).Cast <Category>().Max(); int categoryNumber = (int)AuxiliaryMethod.LoadNumberInRange("Do které kategorie chcete recept zařadit?\nNapište číslo:", count); Category category = (Category)(int)categoryNumber; if (!IsInCategoryList(categories, category)) { categories.Add(category); } else { Console.WriteLine("Tato kategorie již byla přidána."); } userInput = AuxiliaryMethod.EnterYesOrNo("Chcete přidat další kategorii? a/n"); } return(categories); }