private decimal CalculateDrinkCost(string ingredientName, int units)
        {
            var inventory = new InventoryControl()
                                    .GetCurrentInventory()
                                    .Where(x => x.ItemName == ingredientName)
                                    .FirstOrDefault();


            return inventory.ItemPrice * units;
        }
Esempio n. 2
0
        static void Main(string[] args)
        {
            ConsoleKeyInfo command;

            InventoryControl inventoryControl = new InventoryControl();
            Menu currentMenu = new Menu();

            var currentInventory = inventoryControl.CreateResetInventory();
            InitializeMenu(currentMenu);

            inventoryControl.DisplayInventoryLevels();
            currentMenu.DisplayMenu(inventoryControl);

            command = Console.ReadKey(true);

            while (command.Key != ConsoleKey.Q)
            {
                if (command.Key == ConsoleKey.R)
                {
                    currentInventory = inventoryControl.CreateResetInventory();

                    Console.WriteLine();
                    inventoryControl.DisplayInventoryLevels();
                    currentMenu.DisplayMenu(inventoryControl);
                }
                else
                {
                    int selection;
                    bool menuItemSelected = Int32.TryParse(command.KeyChar.ToString(), out selection);
                    if (menuItemSelected)
                    {
                        DrinkMaker drinkMaker = new DrinkMaker();
                        var currentMenuDrink = currentMenu.GetMenuDrink(selection);

                        if (currentMenuDrink != null)
                        {
                            drinkMaker.MakeDrink(currentMenu.GetMenuDrink(selection), inventoryControl);

                            inventoryControl.DisplayInventoryLevels();
                            currentMenu.DisplayMenu(inventoryControl);
                        }
                        else
                        {
                            Console.WriteLine("\nInvalid selection: {0}", command.KeyChar);
                        }                        
                    }
                    else
                    {
                       Console.WriteLine("\nInvalid selection: {0}", command.KeyChar);
                    }
                }

                command = Console.ReadKey(true);
            } 
        }