public void RemoveFromPOSTransaction(HttpContextBase httpContext, string itemId) { POSTransaction posTransaction = GetPOSTransaction(httpContext, true); POSTransactionItem item = posTransaction.POSTransactionItems.FirstOrDefault(p => p.Id == itemId); if (item != null) { if (item.Quantity > 1) { --item.Quantity; POSTransactionContext.Commit(); } else { posTransaction.POSTransactionItems.Remove(item); POSTransactionContext.Commit(); } } }
public void AddToPOSTransaction(HttpContextBase httpContext, string productId) { IProductRetrieveService productDataService = new ProductRetrieveService(); Product product = productDataService.GetProduct(productId); if (product == null) { throw new Exception("Product not found."); } POSTransaction posTransaction = GetPOSTransaction(httpContext, true); POSTransactionItem item = posTransaction.POSTransactionItems.FirstOrDefault(t => t.ProductId == productId); if (item == null) { item = new POSTransactionItem() { POSTransactionId = posTransaction.Id, ProductId = productId, ProductName = product.Name, ProductDescription = product.Description, Quantity = 1, Price = product.Price, ModifiedAt = DateTime.Now }; posTransaction.POSTransactionItems.Add(item); } else { ++item.Quantity; item.ModifiedAt = DateTime.Now; } POSTransactionContext.Commit(); }