Example #1
0
        public static Enum DisplayMainMenu(OrderedItems order, CalculateOrderTotal calculatedOrder)
        {
            Console.Clear();

            HennyArt.DisplayHennyArt();
            MenuView.DisplayCartSummary(order, calculatedOrder);
            ConsoleColor color = ConsoleColor.Magenta;

            Console.ForegroundColor = color;
            Console.WriteLine();
            Console.WriteLine("-- Main Menu --");
            color = ConsoleColor.Yellow;
            Console.ForegroundColor = color;
            Console.WriteLine("1). Display Inventory");
            Console.WriteLine("2). Add Product to Order");
            Console.WriteLine("3). Liquor Info Center");
            Console.WriteLine("4). Cash Out");
            Console.WriteLine("5). New Order");
            Console.WriteLine("6). Quit");

            Console.WriteLine();
            Console.Write("Select an option: ");

            if (Enum.TryParse <MenuEnum>(Console.ReadLine(), out var userMenuSelection))
            {
                return(userMenuSelection);
            }
            return(null);
        }
Example #2
0
        public void AddAlcoholToOrder(OrderedItems order, Liquor alcoholPick)
        {
            Console.Write($"How many of {alcoholPick.Name} would you like? Please input a number: ");
            var quantitypick = int.Parse(Console.ReadLine());

            for (int i = 0; i < quantitypick; i++)
            {
                order.LiquorOrderList.Add(alcoholPick);
            }
        }
Example #3
0
        public static void Run()
        {
            InfoCenter          infoCenter        = new InfoCenter();
            Controller          obj               = new Controller();
            OrderedItems        customerOrder     = new OrderedItems();
            CalculateOrderTotal orderCalculations = new CalculateOrderTotal(customerOrder);

            customerOrder.SalesTaxAmount = 0.06;
            bool userWantsToQuit = false;


            do
            {
                switch (Menu.DisplayMainMenu(customerOrder, orderCalculations))
                {
                case MenuEnum.DisplayInventory:
                    var entireMenuList = new MenuView(obj.Menu);
                    entireMenuList.DisplayLiquorMenu();
                    break;

                case MenuEnum.AddProductToOrder:
                    obj.BuyProduct(obj, customerOrder);
                    customerOrder.RecalculateOrderTotals();
                    break;

                case MenuEnum.LiquorInfoCenter:
                    infoCenter.Alcohol();
                    break;

                case MenuEnum.CashOut:
                    customerOrder.RecalculateOrderTotals();
                    Receipt receiptObj = new Receipt(orderCalculations);
                    MenuView.DisplayCheckOutCart(receiptObj, orderCalculations);
                    receiptObj.SelectPaymentOption();
                    break;

                case MenuEnum.Quit:
                    Console.WriteLine("Bye!");
                    userWantsToQuit = true;
                    break;

                default:
                    Console.WriteLine("Try again");
                    break;
                }

                Console.WriteLine("\n... press any key to continue ...");
                Console.ReadKey();
            } while (userWantsToQuit.Equals(false));

            Console.ReadLine();
        }
Example #4
0
        public void BuyProduct(Controller obj, OrderedItems customerOrder)
        {
            string userInput = null;

            do
            {
                var filteredList = obj.FilterListByCategory(obj.Menu, obj.PromptUserForLiquorType());
                obj.PickLiquorFromFilteredList(filteredList);
                obj.AddAlcoholToOrder(customerOrder, obj.CurrentLiquorPick);

                Console.Write("Would you like to add more? Choose (Yes or No): ");
                userInput = Console.ReadLine();
            } while (userInput.Equals("yes", StringComparison.OrdinalIgnoreCase));
        }
Example #5
0
 public CalculateOrderTotal(OrderedItems order)
 {
     liquorOrderList = order.LiquorOrderList;
     Totals();
 }
Example #6
0
 public static void DisplayCartSummary(OrderedItems order, CalculateOrderTotal calculatedOrder)
 {
     Console.WriteLine(string.Format("{0, 70} {1} {2, 15} {3:C2}", "Items in cart: ", order.LiquorOrderList.Count, "Subtotal: ", order.SubTotal));
 }
 public CalculateOrderTotal(OrderedItems order)
 {
     LiquorOrderListForCalculations = order.LiquorOrderList;
     Totals();
 }