Ejemplo n.º 1
0
        public ActionResult Index()
        {
            ShoppingItemProcessor objShoppingItemProcessor = new ShoppingItemProcessor();

            PromotionProcessor.PromotionProcessor objPromotionProcessor = new PromotionProcessor.PromotionProcessor();
            ViewBag.ItemList      = ToSelectList(objShoppingItemProcessor.GetShoppingItems());
            ViewBag.PromotionList = ToSelectListForPromotion(objPromotionProcessor.GetPromotionList());
            return(View());
        }
Ejemplo n.º 2
0
        public int TotalItemCostWithOrWithoutPromotion(PromotionEntity objPromotion, int itemId, int itemCount)
        {
            ShoppingItemProcessor objShoppingItemProcessor = new ShoppingItemProcessor();
            ShoppingItemEntity    objShoppingItem          = objShoppingItemProcessor.GetShoppingItems().Where(x => x.ItemId == itemId).ToList()[0];
            int promoTotalCost                = 0;
            int itemNotEligibleForDiscount    = itemCount;// if promocode is not applicable
            int itemEligibleForPromotionCount = 0;
            int totalCost = 0;

            if (objPromotion != null)
            {
                var objPromotionShopItem = objPromotion.LstPromotionItems.Where(x => x.ItemId == itemId).ToList()[0];
                itemNotEligibleForDiscount    = itemCount % objPromotionShopItem.ItemCountForPromotion;
                itemEligibleForPromotionCount = itemCount - itemNotEligibleForDiscount;
                if (itemEligibleForPromotionCount > 0)
                {
                    promoTotalCost = (itemEligibleForPromotionCount / objPromotionShopItem.ItemCountForPromotion) * objPromotion.DiscountedCost;
                }
            }
            totalCost = (itemNotEligibleForDiscount * objShoppingItem.ItemCost) + promoTotalCost;
            return(totalCost);
        }