public void UpdateCartItem(string emailAddress, UpdateCartItemModel cartItemModel) { var unitOfWork = this.unitOfWorkFactory.CreateUnitOfWork(); var repository = unitOfWork.CreateUserRepository(); var user = repository.FindByEmailAddress(emailAddress); var cartItem = user.CartItems.FirstOrDefault(c => c.Key == cartItemModel.Key); cartItem.SetQuantity(cartItemModel.Quantity); repository.Save(); }
public async Task <CartStateModel> Update( UpdateCartItemModel updateCartItemModel, CancellationToken cancellationToken) { await _commandProcessor.ProcessAsync( new AddOrUpdateProductInCart( updateCartItemModel.ProductId, updateCartItemModel.SessionId, updateCartItemModel.Count), cancellationToken); return(await ConstructCartModel(updateCartItemModel.SessionId, cancellationToken)); }
public async Task <IActionResult> Put([FromBody] UpdateCartItemModel updateCartItemModel) { var orderItem = await scvContext.OrderItems .Where(o => o.Id == updateCartItemModel.CartItemId) .Cacheable() .SingleAsync(); orderItem.Quantity = updateCartItemModel.Quantity; scvContext.OrderItems.Update(orderItem); await scvContext.SaveChangesAsync(); return(Ok(true)); }