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()); }
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()); }