コード例 #1
0
        private bool TryProcessOrders()
        {
            var orders = _kitchen.GetOrdersToProcess();

            if (orders.Count == 0)
            {
                return(false);
            }
            var ingredients = orders.SelectMany(s => s.Orders.SelectMany(ss => ss.Ingredients)).OrderByDescending(o => o.NeedsCooking).ThenBy(o => o.ToString()).ToList();

            _kitchen.EnqueueIngredients(ingredients);
            foreach (var order in orders)
            {
                Console.ForegroundColor = ConsoleColor.Green;
                Console.WriteLine($"[{_watch.Elapsed}] {_name}: {order.Name} processed");
            }
            return(true);
        }