示例#1
0
 public void Run()
 {
     _warehouse.AddProduct(new Product("Banana", (decimal)1.5, 3));
     _warehouse.AddProduct(new Product("Apple", (decimal)0.7, 10));
     _warehouse.AddProduct(new Product("Orange", (decimal)1.2, 15));
     _buyer.PutInBasket("Banana", 2);
     _buyer.PutInBasket("Apple", 5);
     _buyer.PutInBasket("Orange", 7);
     _buyer.CheckOut();
 }
示例#2
0
        public void HandleCustomer()
        {
            _salesman.WelcomeCustomer();

            while (true)
            {
                try
                {
                    switch (_salesman.AskAboutAction())
                    {
                    case SalesmanAction.AddProduct:
                        _warehouse.AddProduct(_salesman.ReadProductInformation(true, true));
                        break;

                    case SalesmanAction.CheckState:
                        _salesman.ShowAvailableProducts(_warehouse.GetAvailableProducts());
                        break;

                    case SalesmanAction.SellProduct:
                        _warehouse.TryGetProduct(_salesman.ReadProductInformation(false, true));
                        break;
                    }

                    if (_salesman.Finish())
                    {
                        return;
                    }
                }
                catch (Exception exception)
                {
                    _salesman.ShowError(exception.Message);
                }
            }
        }
 public void AddProduct(Product product)
 {
     warehouse.AddProduct(product);
 }