예제 #1
0
        static void Main(string[] args)
        {
            Category category1 = new Category("category1");
            Category category2 = new Category("category2");


            Product product1 = new Product("Product1", 100, category1);
            Product product2 = new Product("Product2", 50, category1);
            Product product3 = new Product("Product3", 40, category2);



            ICampaign rateCampaign   = new RateCampaign(20.0, 5, category1);
            ICampaign amountCampaing = new AmountCampaign(10.0, category2);

            IShoppingCart shoppingcart = new ShoppingCart(new DeliveryCost(1.5, 10));

            shoppingcart.AddProduct(product1, 12);
            shoppingcart.AddProduct(product2, 10);
            shoppingcart.AddProduct(product3, 11);

            List <ICampaign> campaigns = new List <ICampaign>();

            campaigns.Add(rateCampaign);
            campaigns.Add(amountCampaing);
            ICoupon rateCoupon = new RateCoupon(5.0, 3);

            shoppingcart.AddCampaign(campaigns);
            shoppingcart.AddCoupon(rateCoupon);
            double totalAmount = shoppingcart.GetTotalAmountAfterDiscounts();

            System.Console.WriteLine(shoppingcart.Print());
            System.Console.ReadLine();
        }