public ActionResult AddToCart([FromBody] PizzaToAddCartDto pizzaDto) { var cart = _cartSessionService.GetCart(); decimal pizzaTypePrice = _pizzaTypeRepository.GetPizzaTypePrice(pizzaDto.PizzaTypeId); decimal sizeMultiplier = _sizeRepository.GetSizeMultiplier(pizzaDto.SizeId); decimal price = _pizzaPriceCalculater.Calculate(sizeMultiplier, pizzaTypePrice, pizzaDto.EdgeTypeId, pizzaDto.NumberOfPizza); string pizzaName = _pizzaTypeRepository.GetPizzaTypeName(pizzaDto.PizzaTypeId); PizzaToAddCart pizzaToAddCart = new PizzaToAddCart { Id = pizzaDto.PizzaTypeId, PizzaName = pizzaName, NumberOfPizza = pizzaDto.NumberOfPizza, Price = price, Toppings = pizzaDto.Toppings }; _cartService.AddTocart(cart, pizzaToAddCart); _cartSessionService.SetCart(cart); var cartFromSession = _cartSessionService.GetCart(); int totalPizzas = cartFromSession.TotalQuantity; return(Ok(totalPizzas)); }
public void AddTocart(Cart cart, PizzaToAddCart pizza) { CartLine cartLine = cart.CartLines.FirstOrDefault(cl => cl.Pizza.Id == pizza.Id); //if (cartLine!=null) //{ // cartLine.Quantity++; // return; //} cart.CartLines.Add(new CartLine { Pizza = pizza, Quantity = pizza.NumberOfPizza }); }
public ActionResult AddToCart() { var cart = _cartSessionService.GetCart(); PizzaToAddCart pizzaToAddCart = new PizzaToAddCart { Id = 1, PizzaName = "", NumberOfPizza = 2, Price = 25, Toppings = new List <string>() }; _cartService.AddTocart(cart, pizzaToAddCart); _cartSessionService.SetCart(cart); var cart2 = _cartSessionService.GetCart(); return(Ok(pizzaToAddCart)); }