public JsonResult RemoveItem(int productId) { ModifyBasketRequest request = new ModifyBasketRequest(); request.ItemsToRemove.Add(productId); request.BasketId = base.GetBasketId(); ModifyBasketResponse reponse = _basketService.ModifyBasket(request); SaveBasketSummaryToCookie(reponse.Basket.NumberOfItems, reponse.Basket.BasketTotal); BasketDetailView basketDetailView = new BasketDetailView(); basketDetailView.BasketSummary = new BasketSummaryView() { BasketTotal = reponse.Basket.BasketTotal, NumberOfItems = reponse.Basket.NumberOfItems }; basketDetailView.Basket = reponse.Basket; basketDetailView.DeliveryOptions = _basketService.GetAllDispatchOptions().DeliveryOptions; return(Json(basketDetailView)); }
public JsonResult UpdateShipping(int shippingServiceId) { ModifyBasketRequest request = new ModifyBasketRequest(); request.SetShippingServiceIdTo = shippingServiceId; request.BasketId = base.GetBasketId(); BasketDetailView basketDetailView = new BasketDetailView(); ModifyBasketResponse reponse = _basketService.ModifyBasket(request); SaveBasketSummaryToCookie(reponse.Basket.NumberOfItems, reponse.Basket.BasketTotal); basketDetailView.BasketSummary = new BasketSummaryView() { BasketTotal = reponse.Basket.BasketTotal, NumberOfItems = reponse.Basket.NumberOfItems }; basketDetailView.Basket = reponse.Basket; basketDetailView.DeliveryOptions = _basketService.GetAllDispatchOptions().DeliveryOptions; return(Json(basketDetailView)); }
public JsonResult UpdateItems(JsonBasketQtyUpdateRequest jsonBasketQtyUpdateRequest) { ModifyBasketRequest request = new ModifyBasketRequest(); request.BasketId = base.GetBasketId(); request.ItemsToUpdate = jsonBasketQtyUpdateRequest.ConvertToBasketItemUpdateRequests();; BasketDetailView basketDetailView = new BasketDetailView(); ModifyBasketResponse reponse = _basketService.ModifyBasket(request); SaveBasketSummaryToCookie(reponse.Basket.NumberOfItems, reponse.Basket.BasketTotal); basketDetailView.BasketSummary = new BasketSummaryView() { BasketTotal = reponse.Basket.BasketTotal, NumberOfItems = reponse.Basket.NumberOfItems }; basketDetailView.Basket = reponse.Basket; basketDetailView.DeliveryOptions = _basketService .GetAllDispatchOptions().DeliveryOptions; return(Json(basketDetailView)); }
public ModifyBasketResponse ModifyBasket(ModifyBasketRequest request) { ModifyBasketResponse response = new ModifyBasketResponse(); Basket basket = _basketRepository.FindBy(request.BasketId); if (basket == null) { throw new BasketDoesNotExistException(); } AddProductsToBasket(request.ProductsToAdd, basket); UpdateLineQtys(request.ItemsToUpdate, basket); RemoveItemsFromBasket(request.ItemsToRemove, basket); if (request.SetShippingServiceIdTo != 0) { DeliveryOption deliveryOption = _deliveryOptionRepository.FindBy(request.SetShippingServiceIdTo); basket.SetDeliveryOption(deliveryOption); } ThrowExceptionIfBasketIsInvalid(basket); _basketRepository.Save(basket); _uow.Commit(); response.Basket = basket.ConvertToBasketView(); return(response); }
public BasketDetailView UpdateItems(DTOs.BasketQtyUpdateRequest basketQtyUpdateRequest) { var request = new ModifyBasketRequest(); request.BasketId = base.GetBasketId(); request.ItemsToUpdate = DTOs.DtoMapper.ConvertToBasketItemUpdateRequests( basketQtyUpdateRequest); BasketDetailView basketDetailView = new BasketDetailView(); ModifyBasketResponse reponse = _basketService.ModifyBasket(request); SaveBasketSummaryToCookie(reponse.Basket.NumberOfItems, reponse.Basket.BasketTotal); basketDetailView.BasketSummary = new BasketSummaryView() { BasketTotal = reponse.Basket.BasketTotal, NumberOfItems = reponse.Basket.NumberOfItems }; basketDetailView.Basket = reponse.Basket; basketDetailView.DeliveryOptions = _basketService .GetAllDispatchOptions().DeliveryOptions; return(basketDetailView); }
public JsonResult AddToBasket(int productId) { BasketSummaryView basketSummaryView = new BasketSummaryView(); Guid basketId = base.GetBasketId(); bool createNewBasket = basketId == Guid.Empty; if (createNewBasket == false) { ModifyBasketRequest modifyBasketRequest = new ModifyBasketRequest(); modifyBasketRequest.ProductsToAdd.Add(productId); modifyBasketRequest.BasketId = basketId; try { ModifyBasketResponse response = _basketService .ModifyBasket(modifyBasketRequest); basketSummaryView = response.Basket.ConvertToSummary(); SaveBasketSummaryToCookie(basketSummaryView.NumberOfItems, basketSummaryView.BasketTotal); } catch (BasketDoesNotExistException ex) { createNewBasket = true; } } if (createNewBasket) { CreateBasketRequest createBasketRequest = new CreateBasketRequest(); createBasketRequest.ProductsToAdd.Add(productId); CreateBasketResponse response = _basketService .CreateBasket(createBasketRequest); SaveBasketIdToCookie(response.Basket.Id); basketSummaryView = response.Basket.ConvertToSummary(); SaveBasketSummaryToCookie(basketSummaryView.NumberOfItems, basketSummaryView.BasketTotal); } return(Json(basketSummaryView)); }
public IActionResult UpdateItems([FromBody] BasketQtyUpdateRequest jsonBasketQtyUpdateRequest) { ModifyBasketRequest request = new ModifyBasketRequest(); request.BasketId = GetBasketId(); request.ItemsToUpdate = jsonBasketQtyUpdateRequest.ConvertToBasketItemUpdateRequests(); BasketDetailView basketDetailView = new BasketDetailView(); ModifyBasketResponse response = _basketService.ModifyBasket(request); basketDetailView.BasketSummary = new BasketSummaryView { BasketTotal = response.Basket.BasketTotal, NumberOfItems = response.Basket.NumberOfItems }; basketDetailView.Basket = response.Basket; basketDetailView.DeliveryOptions = _basketService.GetAllDispatchOptions().DeliveryOptions; return(Ok(basketDetailView)); }
public JsonResult AddToBasket(int productId) { BasketSummaryView basketSummaryView = new BasketSummaryView(); Guid basketId = base.GetBasketId(); bool createNewBasket = basketId == Guid.Empty; if (createNewBasket == false) { ModifyBasketRequest modifyBasketRequest = new ModifyBasketRequest(); modifyBasketRequest.ProductsToAdd.Add(productId); modifyBasketRequest.BasketId = basketId; try { ModifyBasketResponse response = _basketService.ModifyBasket(modifyBasketRequest); basketSummaryView = response.Basket.ConvertToSummary(); SaveBasketSummaryToCookie(basketSummaryView.NumberOfItems, basketSummaryView.BasketTotal); } catch (BasketDoesNotExistException ex) { createNewBasket = true; } } if (createNewBasket) { CreateBasketRequest createBasketRequest = new CreateBasketRequest(); createBasketRequest.ProductsToAdd.Add(productId); CreateBasketResponse response = _basketService.CreateBasket(createBasketRequest); SaveBasketIdToCookie(response.Basket.Id); basketSummaryView = response.Basket.ConvertToSummary(); SaveBasketSummaryToCookie(basketSummaryView.NumberOfItems, basketSummaryView.BasketTotal); } return Json(basketSummaryView); }
public BasketSummaryView AddToBasket(int productId) { BasketSummaryView basketSummaryView = new BasketSummaryView(); Guid basketId = base.GetBasketId(); bool createNewBasket = basketId == Guid.Empty; if (createNewBasket == false) { var modifyBasketRequest = new ModifyBasketRequest(); modifyBasketRequest.ProductsToAdd.Add(productId); modifyBasketRequest.BasketId = basketId; try { var response = _basketService.ModifyBasket(modifyBasketRequest); basketSummaryView = DTOs.BasketMapper.ConvertToSummary(response.Basket); SaveBasketSummaryToCookie(basketSummaryView.NumberOfItems, basketSummaryView.BasketTotal); } catch (BasketDoesNotExistException ex) { LoggingFactory.GetLogger().Log( String.Format("Creating new basket because exception. {0}", ex.ToString())); createNewBasket = true; } } if (createNewBasket) { var createBasketRequest = new CreateBasketRequest(); createBasketRequest.ProductsToAdd.Add(productId); var response = _basketService.CreateBasket(createBasketRequest); SaveBasketIdToCookie(response.Basket.Id); basketSummaryView = DTOs.BasketMapper.ConvertToSummary(response.Basket); SaveBasketSummaryToCookie(basketSummaryView.NumberOfItems, basketSummaryView.BasketTotal); } return(basketSummaryView); }
public IActionResult AddToBasket(int productId) { BasketSummaryView basketSummaryView = new BasketSummaryView(); Guid basketId = GetBasketId(); bool createNewBasket = basketId == Guid.Empty; if (!createNewBasket) { ModifyBasketRequest modifyBasketRequest = new ModifyBasketRequest(); modifyBasketRequest.ProductsToAdd.Add(productId); modifyBasketRequest.BasketId = basketId; try { ModifyBasketResponse response = _basketService.ModifyBasket(modifyBasketRequest); basketSummaryView = response.Basket.ConvertToSummary(); } catch (BasketDoesNotExistException) { createNewBasket = true; } } if (createNewBasket) { CreateBasketRequest createBasketRequest = new CreateBasketRequest(); createBasketRequest.CustomerEmail = _cookieAuthentication.GetAuthenticationToken(); createBasketRequest.ProductsToAdd.Add(productId); CreateBasketResponse response = _basketService.CreateBasket(createBasketRequest); basketSummaryView = response.Basket.ConvertToSummary(); } return(Ok(basketSummaryView)); }
public JsonResult UpdateShipping(int shippingServiceId) { ModifyBasketRequest request = new ModifyBasketRequest(); request.SetShippingServiceIdTo = shippingServiceId; request.BasketId = base.GetBasketId(); BasketDetailView basketDetailView = new BasketDetailView(); ModifyBasketResponse response = _basketService.ModifyBasket(request); SaveBasketSummaryToCookie(response.Basket.NumberOfItems, response.Basket.BasketTotal); basketDetailView.BasketSummary = new BasketSummaryView() { BasketTotal = response.Basket.BasketTotal, NumberOfItems = response.Basket.NumberOfItems }; basketDetailView.Basket = response.Basket; basketDetailView.DeliveryOptions = _basketService.GetAllDispatchOptions().DeliveryOptions; return Json(basketDetailView); }
public JsonResult UpdateItems(JsonBasketQtyUpdateRequest jsonBasketQtyUpdateRequest) { ModifyBasketRequest request = new ModifyBasketRequest(); request.BasketId = base.GetBasketId(); request.ItemsToUpdate = jsonBasketQtyUpdateRequest.ConvertToBasketItemUpdateRequests(); ; BasketDetailView basketDetailView = new BasketDetailView(); ModifyBasketResponse response = _basketService.ModifyBasket(request); SaveBasketSummaryToCookie(response.Basket.NumberOfItems, response.Basket.BasketTotal); basketDetailView.BasketSummary = new BasketSummaryView() { BasketTotal = response.Basket.BasketTotal, NumberOfItems = response.Basket.NumberOfItems }; basketDetailView.Basket = response.Basket; basketDetailView.DeliveryOptions = _basketService.GetAllDispatchOptions().DeliveryOptions; return Json(basketDetailView); }
public JsonResult RemoveItem(int productId) { ModifyBasketRequest request = new ModifyBasketRequest(); request.ItemsToRemove.Add(productId); request.BasketId = base.GetBasketId(); ModifyBasketResponse response = _basketService.ModifyBasket(request); SaveBasketSummaryToCookie(response.Basket.NumberOfItems, response.Basket.BasketTotal); BasketDetailView basketDetailView = new BasketDetailView(); basketDetailView.BasketSummary = new BasketSummaryView() { BasketTotal = response.Basket.BasketTotal, NumberOfItems = response.Basket.NumberOfItems }; basketDetailView.Basket = response.Basket; basketDetailView.DeliveryOptions = _basketService.GetAllDispatchOptions().DeliveryOptions; return Json(basketDetailView); }