Ejemplo n.º 1
0
 public void CalculateDiscount(Order order)
 {
     if (canDiscountStrategy.CanDiscount(order))
     {
         applyDiscountStrategy.ApplyDiscount(order);
     }
 }
 public void Calculate(Visit visit)
 {
     if (canDiscountStrategy.CanDiscount(visit))
     {
         visit.Discount     = discountStrategy.Discount(visit);
         visit.DiscountName = this.ToString();
     }
 }
Ejemplo n.º 3
0
        public decimal Calculate(Order order)
        {
            if (_canDiscount.CanDiscount(order))
            {
                return(order.TotalPrice - _discount.Calculate(order));
            }

            return(order.TotalPrice);
        }
Ejemplo n.º 4
0
 public decimal CalculateDiscount(Order order)
 {
     if (canDiscountStrategy.CanDiscount(order))
     {
         return(getDiscountStrategy.GetDiscount(order));
     }
     else
     {
         return(0);
     }
 }
Ejemplo n.º 5
0
 public decimal CalculateDiscount(Order order)
 {
     if (canDiscountStrategy.CanDiscount(order))   // Predykat
     {
         return(discountStrategy.Discount(order)); // Discount
     }
     else
     {
         return(0);
     }
 }
Ejemplo n.º 6
0
 public decimal Calculate(Order order)
 {
     if (canDiscountStrategy.CanDiscount(order))
     {
         return(order.TotalAmount - discountStrategy.Discount(order));
     }
     else
     {
         return(order.TotalAmount);
     }
 }
Ejemplo n.º 7
0
 public decimal CalculateDiscount(Order order)
 {
     //1.Predykat
     if (canDiscountStrategy.CanDiscount(order))
     {
         // 2. Wartosc rabatu
         return(calculateDiscountStrategy.CalculateDiscount(order));
     }
     else
     {
         return(noDiscount);
     }
 }
        public void CalculateDiscount(Order order)
        {
            this.orderCalculator.CalculateDiscount(order);

            if (canDiscountStrategy.CanDiscount(order))
            {
                decimal discountAmount = order.DiscountAmount;

                applyDiscountStrategy.ApplyDiscount(order);

                order.DiscountAmount += discountAmount;
            }
        }
Ejemplo n.º 9
0
 public decimal CalculateDiscount(Order order)
 {
     // 1. Warunek
     if (canDiscountStrategy.CanDiscount(order))
     {
         // 2. Zniżka
         return(discountStrategy.Discount(order));
     }
     else
     {
         return(0);
     }
 }
Ejemplo n.º 10
0
        public decimal CalculateDiscount(Order order)
        {
            if (order == null)
            {
                throw new ArgumentNullException();
            }

            if (canDiscountStrategy.CanDiscount(order))
            {
                return(discountAmountStrategy.Discount(order.Total));
            }


            return(0m);
        }
        /// <summary>
        /// oblicza rabat dla danej strategii
        /// </summary>
        /// <param name="order"></param>
        /// <returns></returns>
        public decimal CalculateDiscount(Order order)
        {
            if (order == null)
            {
                throw new ArgumentNullException(nameof(order));
            }

            if (order.Total <= 0)
            {
                throw new ArgumentOutOfRangeException(nameof(order.Total));
            }

            if (canDiscountStrategy.CanDiscount(order))
            {
                Thread.Sleep(TimeSpan.FromMilliseconds(100));

                return(calculateDiscountStrategy.CalculateDiscount(order));
            }
            else
            {
                return(0m);
            }
        }