public IList <CartItem> Remove(string productId, int quantity, out IList <CartItemDetail> shoppingCartItemDetailsRemoved) { IList <CartItem> itemRemoves = new List <CartItem>(); shoppingCartItemDetailsRemoved = new List <CartItemDetail>(); bool isRemove = false; for (int i = 0; i < quantity; i++) { var item = CartItems.FirstOrDefault(p => p.ProductId == productId); if (item != null) { CartItems.Remove(item); isRemove = true; itemRemoves.Add(item); } } if (isRemove) { var item = CartItems.FirstOrDefault(p => p.ProductId == productId); if (item == null) { if (CartItemDetails.ContainsKey(productId)) { shoppingCartItemDetailsRemoved.Add(CartItemDetails[productId]); CartItemDetails.Remove(productId); } } } RemoveItemEvent(itemRemoves, shoppingCartItemDetailsRemoved); return(itemRemoves); }
public List <CartItemDetails> checkquantity([FromBody] List <CartItemDetails> products) { List <CartItemDetails> cartitemList = new List <CartItemDetails>(); cartproductlist = icheckoutService.checkProductAvailabilty(products); if (cartproductlist != null) { foreach (var cartproduct in cartproductlist) { CartItemDetails cartItemDetails = new CartItemDetails() { ProductId = cartproduct.ProductId, ProductName = cartproduct.ProductName, Quantity = cartproduct.Quantity, Image = cartproduct.Image, Description = cartproduct.Description, UnitPrice = cartproduct.UnitPrice, Availability = cartproduct.Availability, Discount = cartproduct.Discount, }; cartitemList.Add(cartItemDetails); } } //return productlist; return(cartitemList.ToList()); }
public CartCacheAddEvent ToAddOrChangeEvent() { return(new CartCacheAddEvent() { Id = this.Id, Status = this.Status, Code = this.Code, Version = this.Version + 1, ClientId = this.ClientId, ShardId = this.ShardId, LanguageId = this.LanguageId, CreatedUid = this.CreatedUid, StoreId = this.StoreId, UpdatedDateUtc = this.UpdatedDateUtc, UpdatedUid = this.UpdatedUid, CreatedDateUtc = this.CreatedDateUtc, CartItems = CartItems?.Select(p => p.ToAddOrChangeEvent()).ToArray(), CartItemDetails = CartItemDetails?.Select(p => p.Value.ToAddOrChangeEvent()).ToArray(), }); }
public CartItem[] Add(CartItem shoppingCartItem, CartItemDetail shoppingCartItemDetail, int quantity, out CartItemDetail newCartItemDetail) { newCartItemDetail = null; IList <CartItem> cartItems = new List <CartItem>(); for (int i = 0; i < quantity; i++) { CartItems.Add(shoppingCartItem); cartItems.Add(shoppingCartItem); } if (newCartItemDetail != null) { if (!CartItemDetails.ContainsKey(shoppingCartItemDetail.ProductId)) { CartItemDetails.Add(shoppingCartItemDetail.ProductId, shoppingCartItemDetail); newCartItemDetail = shoppingCartItemDetail; } } CreateAddEvent(); return(cartItems.ToArray()); }