示例#1
0
        public async void GetOngoingOrders()
        {
            DatabaseList = await rep.GetOrderByStatus(0);

            OrdersOngoing.Clear();
            WaitingOrders.Clear();
            int test = 0;

            foreach (Order item in DatabaseList)
            {
                OrderModel order        = new OrderModel();
                OrderModel waitingOrder = new OrderModel();

                if (item.PizzaList.Count > 0 && test < 6)
                {
                    order           = new OrderModel();
                    order.OrderID   = item.OrderID;
                    order.PizzaList = item.PizzaList;
                    OrdersOngoing.Add(order);
                    test++;
                }
                else if (item.PizzaList.Count > 0)
                {
                    waitingOrder.OrderID = item.OrderID;
                    WaitingOrders.Add(waitingOrder);
                    test++;
                }
            }
        }
 public void StartOrder()
 {
     if ((CurrentOrder != null && !_currentOrderCompleted) || !(WaitingOrders.Count > 0))
     {
         throw new InvalidOperationException();
     }
     CurrentOrder           = WaitingOrders.Dequeue();
     _currentOrderCookTime  = CurrentOrder.MealCount * _timePerMeal;
     _currentOrderCompleted = false;
     _currentOrderDelivered = false;
 }
 public void PlaceOrder(Order order) => WaitingOrders.Enqueue(order);