Ejemplo n.º 1
0
        public float CalculateShipping(Order order)
        {
            if (order.TotalPrice < 30f)
                return order.TotalPrice * 0.15f;

            return 0;
        }
Ejemplo n.º 2
0
        public void Process(Order order)
        {
            if (order.IsShipped)
                throw new InvalidOperationException("This order is already processed.");

            order.Shipment = new Shipment
            {
                Cost = _shippingCalculator.CalculateShipping(order),
                ShippingDate = DateTime.Today.AddDays(1)
            };
        }
Ejemplo n.º 3
0
 static void Main(string[] args)
 {
     var orderProcessor = new OrderProcessor(new ShippingCalculator());
     var order = new Order {DatePlaced = DateTime.Now, TotalPrice = 100f};
     orderProcessor.Process(order);
 }