static void Main(string[] args) { MenuRepository Repository = new MenuRepository(); while (true) { Console.Clear(); Console.WriteLine("Commands:\nAdd: 'add'\nList: 'list'\nDelete: 'delete'"); string Command = Console.ReadLine().ToLower(); if (Command == "add") { MenuItem newItem = NewMenuItem(); Repository.AddItem(newItem); } else if (Command == "list") { Console.Clear(); foreach (MenuItem Item in Repository.GetMenuItems()) { Console.WriteLine($"[{Item.OrderNumber}]: {Item.OrderName}, \n {Item.Description}, \n {Item.Ingredients}, \n ${Item.Price}"); } Console.WriteLine("Press Enter to continue."); Console.Read(); } else if (Command == "delete") { Console.Clear(); Console.WriteLine("What Order Number would you like to remove?"); int OrderNumber = Int32.Parse(Console.ReadLine()); Repository.RemoveItem(OrderNumber); Console.WriteLine("Item Removed. Press Enter to continue."); Console.Read(); } } }
public void Run() { List <string> exampleIngredients = new List <string>(); exampleIngredients.Add("example1"); exampleIngredients.Add("example2"); exampleIngredients.Add("example3"); exampleIngredients.Add("example4"); var menuItems = new List <Menu>() { new Menu("Cheeseburger", 1, exampleIngredients, "Basic Cheeseburger", 2.99m), new Menu("Chicken Nuggets", 2, exampleIngredients, "5 piece chicken nuggets", 1.99m), new Menu("Garden Salad", 3, exampleIngredients, "Salad with ranch dressing", 3.99m), }; _menuRepo.AddItems(menuItems); while (loop) { string menuInput = ConsoleMenu(); switch (menuInput) { case "1": Menu Item = AddToMenu(); _menuRepo.AddItem(Item); Console.Clear(); break; case "2": List <Menu> OrderedList = _menuRepo.SortedMenu(); MenuSetup(OrderedList); Console.WriteLine("Press any key to continue"); Console.ReadKey(); Console.Clear(); break; case "3": Console.WriteLine("Enter the number of the item you would like to remove:"); int itemNumber = int.Parse(Console.ReadLine()); _menuRepo.RemoveItem(itemNumber); Console.Clear(); break; case "X": loop = false; break; default: Console.Clear(); Console.WriteLine("Unknown Input"); Console.WriteLine("Press any key to continue"); Console.ReadKey(); Console.Clear(); break; } } }
static void Main(string[] args) { MenuRepository menuRepo = new MenuRepository(); List <Menu> menu = menuRepo.DisplayList(); string outPut = null; int itemCount = 0; while (true) { //Menu Console.Clear(); Console.Write($"{outPut}" + $"What action would you like to do?\n" + $"1. Add Item to Menu\n" + $"2. View List\n" + $"3. Remove Item\n" + $"4. Exit\n" + $" "); outPut = null; string response = Console.ReadLine(); //AddItem if (response == "1") { Console.Clear(); Console.Write("Enter the name of the item: "); string newName = Console.ReadLine(); Console.Write($"Enter the description for the {newName}: "); string newDesc = Console.ReadLine(); Console.Write($"Enter the list of ingredients for the {newName}: "); string newIngredients = Console.ReadLine(); Console.Write($"Enter the price for the {newName}: "); decimal newPrice = 0m; bool valid = false; while (!valid) { string input = Console.ReadLine(); if (decimal.TryParse(input, out newPrice)) { valid = true; } else { Console.WriteLine("Invalid input, please enter a number."); } } menuRepo.AddItem(newName, newDesc, newIngredients, newPrice); itemCount++; outPut = $"{newName} has been added to the menu as item number {itemCount}.\n"; } //View List else if (response == "2") { Console.Clear(); foreach (var item in menu) { Console.WriteLine($"{item.MealNumber}. {item.MealName}\n" + $" Description: {item.MealDescription}\n" + $" Ingredients: {item.MealIngredients}\n" + $" Price: ${item.MealPrice}\n"); } if (menu.Count() == 0) { Console.WriteLine("The Menu is currently empty."); } Console.ReadLine(); } //Remove Item else if (response == "3") { Console.Clear(); if (menu.Count() == 0) { Console.WriteLine("The Menu is currently empty."); Console.ReadLine(); } else { int num; Console.Write("Enter the menu item number you want to remove: "); bool isNumber = Int32.TryParse(Console.ReadLine(), out num); if (isNumber) { foreach (Menu item in menu) { if (num == item.MealNumber) { Console.Write($"Are you sure you would like to delete {item.MealName} from the menu?\n" + $"(Y/N): "); string delResponse = Console.ReadLine().ToLower(); if (delResponse == "y") { num--; menuRepo.RemoveItem(menu[num]); outPut = $"{item.MealName} has been removed to the menu.\n"; foreach (Menu oldItem in menu) { int spot = menu.IndexOf(oldItem); spot++; oldItem.MealNumber = spot; } itemCount--; } break; } } } else { Console.WriteLine("Invalid input, please enter the menu item ID number"); Console.ReadLine(); } } } else if (response == "4") { break; } else { outPut = "Improper input. Please try again.\n"; } } }