示例#1
0
    public void SetOrderBST(string customerName, List <Item> orderItems)
    {
        int     orderId = customerName.GetHashCode();
        BSTNode node    = tree.Find(orderId);

        if (node == null)
        {
            Order order = new Order()
            {
                id         = orderId,
                clientName = customerName,
                items      = new List <Item>()
            };

            tree.Insert(orderId, order);
        }
        else
        {
            orderId = node.GetData <Order>().clientName.GetHashCode();
            node.SetData(new Order
            {
                id         = orderId,
                clientName = customerName,
                items      = orderItems
            }, orderId);
        }
        List <Order> nodes = new List <Order>();

        tree.PreorderTraversal(nodes);
        OrderDataManager.UpdateOrders(nodes);
    }
    public void Proceed()
    {
        List <Order> ordersToHistory = OrderHistoryDataManager.Orders.orders;

        ordersToHistory.AddRange(OrderDataManager.Orders.orders);

        OrderHistoryDataManager.UpdateOrders(ordersToHistory);
        OrderDataManager.UpdateOrders(new List <Order>());
        controller.ClearTree();
        foreach (var order in orderGOList)
        {
            Destroy(order);
        }
    }
示例#3
0
        public OrderEditor(Gtk.Window parent, List <string> foodList, List <string> customerList, string orderFilePath)
        {
            DIR_SEPRATOR   = System.IO.Path.DirectorySeparatorChar.ToString();
            _foodMgr       = FoodDataManager.GetInstance();
            _custMgr       = CustomerDataManager.GetInstance();
            _orderMgr      = OrderDataManager.GetInstance();
            m_allOrders    = _orderMgr.GetAllOrders();
            m_updateOrders = new List <OrderData>();
            m_deleteOrders = new List <OrderData>();
            m_addOrders    = new List <OrderData>();

            m_foodList      = foodList;
            m_customerList  = customerList;
            m_orderFilePath = orderFilePath;

            this.Build();
            this.TransientFor = parent;
            this.SetPosition(WindowPosition.CenterAlways);

            treeview_foodlist.AppendColumn("图片", new CellRendererPixbuf(), "pixbuf", 0);
            treeview_foodlist.AppendColumn("名称", new CellRendererText(), "text", 1);

            treeview_orderlist.AppendColumn("顾客", new CellRendererPixbuf(), "pixbuf", 0);
            treeview_orderlist.AppendColumn("食物", new CellRendererPixbuf(), "pixbuf", 1);

            CellRendererText cellWaitTime = new CellRendererText();

            cellWaitTime.Editable = true;
            cellWaitTime.Edited  += OnEditedWaitTime;
            treeview_orderlist.AppendColumn("等待时间", cellWaitTime, "text", 2);

            CellRendererText cellTip = new CellRendererText();

            cellTip.Editable = true;
            cellTip.Edited  += OnEditedTip;
            cellTip.Width    = 50;
            treeview_orderlist.AppendColumn("小费", cellTip, "text", 3);

            CellRendererText cellConsiderTime = new CellRendererText();

            cellConsiderTime.Editable = true;
            cellConsiderTime.Edited  += OnEditedConsiderTime;
            treeview_orderlist.AppendColumn("考虑时间", cellConsiderTime, "text", 4);
            //treeview_orderlist.AppendColumn("索引", new CellRendererText(), "text", 5);

            ReloadData();
        }