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); } }
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(); }