示例#1
0
        private void newOrder_btn_Click(object sender, EventArgs e)
        {
            try
            {
                currentOrder.state = Status.Pending;
                currentOrder.date  = DateTime.Now;
                int newOrderID = order_service.CreateNewOrder(currentOrder, currentUser.ID);
                currentOrder.id = newOrderID;

                OrderDetails_menuStrip.Show();
                //this will show me the overview of orders.
                flowLayoutPanelMenuItems.Controls.Clear();
                Label label = new Label();
                label.Width = 300;
                label.Text  = "Table " + currentOrder.table;
                label.Font  = titleFont;
                flowLayoutPanelMenuItems.Controls.Add(label);

                Label emptylabel = new Label();
                emptylabel.Text      = "order is " + currentOrder.state.ToString();
                emptylabel.Width     = 300;
                emptylabel.Height    = 50;
                emptylabel.TextAlign = ContentAlignment.MiddleLeft;
                flowLayoutPanelMenuItems.Controls.Add(emptylabel);
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message);
            }
        }
示例#2
0
        public void LoadTables()
        {
            isOrdersList = true;
            OrderDetails_menuStrip.Hide();
            flowLayoutPanelMenuItems.Controls.Clear();
            flowLayoutPanelMenuItems.WrapContents = true;
            AddOrdersToTables();

            foreach (Table table in tables)
            {
                TableView tableView = new TableView(table, this);
                tableView.table.status = tableView.CheckState(table.order.state);
                tableView.changestate();
                flowLayoutPanelMenuItems.Controls.Add(tableView);
            }
        }
示例#3
0
        public void ShowOrderDetails(Order order)
        {
            isOrdersList = false;
            currentOrder = order;
            //
            order_service.currentOrder = order;
            OrderDetails_menuStrip.Show();
            //this will show me the overview of orders.
            flowLayoutPanelMenuItems.Controls.Clear();
            Label label = new Label();

            label.Width = 300;
            label.Text  = "Table " + currentOrder.table;
            label.Font  = titleFont;
            flowLayoutPanelMenuItems.Controls.Add(label);

            if (currentOrder.state == Status.Pending || currentOrder.state == Status.Processing || currentOrder.state == Status.Ready)
            {
                //Retrieve all orders from the the model, and show it in the flowlayoutpanel
                foreach (OrderItem item in currentOrder.OrderItems)
                {
                    if (item.quantity != 0)
                    {
                        MenuViewLine menuViewLine = new MenuViewLine(item, this);
                        // We are creating a line for the order details section:
                        // We want these menu view lines to be removed when clicking "X", so mark them
                        menuViewLine.MarkedForClear = true;
                        flowLayoutPanelMenuItems.Controls.Add(menuViewLine);
                    }
                }

                Button btnSendOrder = new Button();
                btnSendOrder.Text = "Send Order";
                flowLayoutPanelMenuItems.Controls.Add(btnSendOrder);
                btnSendOrder.Click += BtnSendOrder_Click;

                Button btnPay = new Button();
                btnPay.Text = "Pay";
                flowLayoutPanelMenuItems.Controls.Add(btnPay);
                btnPay.Click += btnPay_Click;
            }
            else
            {
                Label emptylabel = new Label();
                emptylabel.Text      = "order is " + currentOrder.state.ToString();
                emptylabel.Width     = 300;
                emptylabel.Height    = 50;
                emptylabel.TextAlign = ContentAlignment.MiddleLeft;
                flowLayoutPanelMenuItems.Controls.Add(emptylabel);

                Button newOrder_btn = new Button();
                newOrder_btn.Text = "new order";
                flowLayoutPanelMenuItems.Controls.Add(newOrder_btn);
                newOrder_btn.Click += newOrder_btn_Click;
            }
            if (currentOrder.state == Status.Empty)
            {
                Button occupy_btn = new Button();
                occupy_btn.Text = "occupied";
                flowLayoutPanelMenuItems.Controls.Add(occupy_btn);
                occupy_btn.Click += occupy_btn_Click;
            }
            else if (currentOrder.state == Status.Occupied)
            {
                Button free_btn = new Button();
                free_btn.Text = "free table";
                flowLayoutPanelMenuItems.Controls.Add(free_btn);
                free_btn.Click += free_btn_Click;
            }
        }