public void UpdateItem(Guid itemID, ProductSkuInfo productSkuInfo, decimal quantity, decimal weight, decimal price) { PurchaseOrderItem item = this.Items.FirstOrDefault(p => p.ID == itemID); if (item != null) { item.PurchaseOrder = this; item.PurchaseOrderID = this.ID; //item.ProductID = product.ProductID; item.Price = price; item.ProductSkuInfo = productSkuInfo; this.TotalQuantity += (quantity - item.Quantity); item.Quantity = quantity; this.TotalWeight += (weight - item.Weight); item.Weight = weight; if (productSkuInfo.PricingMethod == PricingMethod.PricingByQuantity) { this.TotalAmount += (quantity * price - item.Amount); item.Amount = item.Price * item.Quantity; } else { this.TotalAmount += (weight * price - item.Amount); item.Amount = item.Price * item.Weight; } } else { throw new DomainException("无此ID"); } }
public void AddItem(ProductSkuInfo productSkuInfo, decimal quantity, decimal weight, decimal price) { PurchaseOrderItem newPurchaseOrderItem = new PurchaseOrderItem(); //newPurchaseOrderItem.ProductID = product.ProductID; newPurchaseOrderItem.Quantity = quantity; newPurchaseOrderItem.Weight = weight; newPurchaseOrderItem.Price = price; //newPurchaseOrderItem.PricingMethod = pricingMethod; if (productSkuInfo.PricingMethod == PricingMethod.PricingByQuantity) { newPurchaseOrderItem.Amount = newPurchaseOrderItem.Price * newPurchaseOrderItem.Quantity; } else { newPurchaseOrderItem.Amount = newPurchaseOrderItem.Price * newPurchaseOrderItem.Weight; } //newPurchaseOrderItem.Amount = newPurchaseOrderItem.Price * newPurchaseOrderItem.PricingQuantity; newPurchaseOrderItem.PurchaseOrderID = this.ID; newPurchaseOrderItem.PurchaseOrder = this; newPurchaseOrderItem.ProductSkuInfo = ProductSkuInfo.Create(productSkuInfo.SkuID, productSkuInfo.Name, productSkuInfo.PricingMethod); Items.Add(newPurchaseOrderItem); this.TotalQuantity += newPurchaseOrderItem.Quantity; this.TotalAmount += newPurchaseOrderItem.Amount; this.TotalWeight += newPurchaseOrderItem.Weight; }
public void RemoveItem(Guid itemID) { PurchaseOrderItem item = Items.FirstOrDefault(p => p.ID == itemID); if (item == null) { throw new DomainException("无此ID"); } Items.Remove(item); }
public void AddItem(ProductSkuInfo productSkuInfo, decimal quantity, decimal weight, decimal price) { PurchaseOrderItem newPurchaseOrderItem = new PurchaseOrderItem(); //newPurchaseOrderItem.ProductID = product.ProductID; newPurchaseOrderItem.Quantity = quantity; newPurchaseOrderItem.Weight = weight; newPurchaseOrderItem.Price = price; //newPurchaseOrderItem.PricingMethod = pricingMethod; if (productSkuInfo.PricingMethod == PricingMethod.PricingByQuantity) newPurchaseOrderItem.Amount = newPurchaseOrderItem.Price * newPurchaseOrderItem.Quantity; else newPurchaseOrderItem.Amount = newPurchaseOrderItem.Price * newPurchaseOrderItem.Weight; //newPurchaseOrderItem.Amount = newPurchaseOrderItem.Price * newPurchaseOrderItem.PricingQuantity; newPurchaseOrderItem.PurchaseOrderID = this.ID; newPurchaseOrderItem.PurchaseOrder = this; newPurchaseOrderItem.ProductSkuInfo = productSkuInfo; Items.Add(newPurchaseOrderItem); this.TotalQuantity += newPurchaseOrderItem.Quantity; this.TotalAmount += newPurchaseOrderItem.Amount; this.TotalWeight += newPurchaseOrderItem.Weight; }