Esempio n. 1
0
        public IActionResult Add([FromBody] BasketUpdateModel basketUpdateModel)
        {
            Basket basket            = _basketService.GetOrAddBasket("basket");
            var    basketItemsLookup = basket.BasketItems.ToDictionary(b => b.ProductId, b => b);

            if (!basketItemsLookup.ContainsKey(basketUpdateModel.ProductId))
            {
                basket.BasketItems.Add(new BasketItem
                {
                    ProductId = basketUpdateModel.ProductId,
                    Quanitity = 1
                });
            }
            else
            {
                basketItemsLookup[basketUpdateModel.ProductId].Quanitity++;
            }

            _basketService.SaveBasket("basket", basket);

            return(Ok());
        }
Esempio n. 2
0
        public ActionResult Remove([FromBody] BasketUpdateModel basketUpdateModel)
        {
            Basket basket            = _basketService.GetOrAddBasket("basket");
            var    basketItemsLookup = basket.BasketItems.ToDictionary(b => b.ProductId, b => b);

            if (!basketItemsLookup.ContainsKey(basketUpdateModel.ProductId))
            {
                return(NotFound());
            }

            var basketItem = basketItemsLookup[basketUpdateModel.ProductId];

            basketItem.Quanitity--;

            if (basketItem.Quanitity <= 0)
            {
                basket.BasketItems.Remove(basketItem);
            }

            _basketService.SaveBasket("basket", basket);

            return(Ok());
        }