Пример #1
0
        private bool EnqueueCustomer(Customer customer)
        {
            ICashier selectedCashier = customer.ChooseCashier(_cashiers);

            if (selectedCashier == null)
            {
                return(false);
            }

            int cashierRemainingProcessingTime = selectedCashier.EnqueueCustomer(customer);

            if (_maxProcessingTimeFromStart == 0)
            {
                _maxProcessingTimeFromStart = customer.ArrivalTime + cashierRemainingProcessingTime;
            }
            else
            {
                if ((customer.ArrivalTime + cashierRemainingProcessingTime) > _maxProcessingTimeFromStart)
                {
                    _maxProcessingTimeFromStart = customer.ArrivalTime + cashierRemainingProcessingTime;
                }
            }
            return(true);
        }