static void Main(string[] args) { IPromotion promotion = null; promotion = new Promotion1(); PromotionResult promotionResult = new PromotionResult(promotion); promotionResult.Items.Add(new ItemA() { NoOfItems = 3, Cost = 50 }); promotionResult.Items.Add(new ItemB() { NoOfItems = 2, Cost = 30 }); promotionResult.Items.Add(new ItemC() { NoOfItems = 2, Cost = 20 }); promotionResult.Items.Add(new ItemD() { NoOfItems = 2, Cost = 15 }); Console.WriteLine(promotionResult.Calculate()); Console.ReadLine(); }
static void Main(string[] args) { List <Product> products = new List <Product> { new Product { SKUName = "A", SKUPrice = 50 }, new Product { SKUName = "B", SKUPrice = 30 }, new Product { SKUName = "C", SKUPrice = 20 }, new Product { SKUName = "D", SKUPrice = 15 }, }; List <Cart> cartItems = new List <Cart>(); Console.WriteLine("***********************Promotion Engine***********************"); Console.WriteLine("***********************SKU List***********************"); Console.WriteLine("\n"); foreach (var item in products) { Console.WriteLine("SKU: " + item.SKUName + " Price: " + item.SKUPrice); } Console.WriteLine("\n"); Console.WriteLine("***********************Building Shopping Cart***********************"); foreach (var item in products) { string userInput; Console.WriteLine("Enter SKU " + item.SKUName + " Quantity:"); userInput = Console.ReadLine(); int SKUQuantity; while (!int.TryParse(userInput, out SKUQuantity)) { Console.WriteLine("Please enter integer value only"); Console.WriteLine("Enter SKU " + item.SKUName + " Quantity:"); userInput = Console.ReadLine(); } Cart cartItem = new Cart() { SKUName = item.SKUName, SKUQuantity = SKUQuantity }; cartItems.Add(cartItem); } Console.WriteLine("\n"); Console.WriteLine("***********************Cart Summary***********************"); foreach (var item in cartItems) { Console.WriteLine("SKU Name: " + item.SKUName + " SKU Quantity: " + item.SKUQuantity); } Promotion1 obj = new Promotion1(products, cartItems); int totalPrice = obj.ApplyPromotionAndCalculatePrice(); Console.WriteLine("Total Price: " + totalPrice); Console.ReadKey(); }