Ejemplo n.º 1
0
        public decimal getTotalCost()
        {
            decimal totalCost = 0;
            int     amount    = _count;

            while (amount > 0)
            {
                if (_isOnPromotion && _promotionInfo.isMetPromoRequirements(amount))
                {
                    totalCost += _promotionInfo.getTotalPriceForQuantityMet();
                    amount    -= _promotionInfo.getQuantityToGetPromoPrice();
                }
                else
                {
                    totalCost += _regularPrice;
                    amount    -= 1;
                }
            }
            return(totalCost);
        }
Ejemplo n.º 2
0
 private static void displayPromoInfoToConsole(GroceryItemData item, IPromotion promoInfo)
 {
     if (promoInfo.getQuantityToGetPromoPrice() == 1)
     {
         Console.WriteLine(item.Name + " \t" + MoneyDisplayUtil.formatMoneyDisplay(promoInfo.getTotalPriceForQuantityMet()));
     }
     else
     {
         Console.WriteLine(item.Name + " (X" + promoInfo.getQuantityToGetPromoPrice() + ") " + MoneyDisplayUtil.formatMoneyDisplay(promoInfo.getTotalPriceForQuantityMet()));
     }
     Console.WriteLine("\t" + item.PromotionInfo.getPromoDisplayInfo());
     Console.WriteLine("\tsavings " + MoneyDisplayUtil.formatMoneyDisplay(item.PromotionInfo.getSavings()));
 }