private void AddNewEntryToTransaction() { foreach (var line in _parentVM.DisplayedLines) { if (!_newEntryItem.ID.Equals(line.Item.ID) || !_newEntryWarehouse.ID.Equals(line.Warehouse.ID) || !_newEntryPrice.Equals(line.PurchasePrice) || !_newEntryDiscount.Equals(line.Discount)) { continue; } Debug.Assert(_newEntryQuantity != null, "_newEntryQuantity != null"); line.Quantity += (int)_newEntryQuantity; ResetEntryFields(); return; } Debug.Assert(_newEntryQuantity != null, "_newEntryQuantity != null"); var newEntryLine = new PurchaseTransactionLine { Quantity = (int)_newEntryQuantity, PurchasePrice = _newEntryPrice, Discount = _newEntryDiscount, Item = _newEntryItem.Model, Warehouse = _newEntryWarehouse.Model, SoldOrReturned = 0, PurchaseTransaction = _parentVM.Model, Total = (int)_newEntryQuantity * (_newEntryPrice - _newEntryDiscount) }; var lineVM = new PurchaseTransactionLineVM { Model = newEntryLine }; _parentVM.DisplayedLines.Add(lineVM); }
private static void IncreaseLineItemStockInDatabaseContext(ERPContext context, PurchaseTransactionLine line) { var stockFromDatabase = context.Stocks.SingleOrDefault( stock => stock.ItemID.Equals(line.Item.ID) && stock.WarehouseID.Equals(line.Warehouse.ID)); if (stockFromDatabase == null) { context.Stocks.Add(new Stock { Item = line.Item, Warehouse = line.Warehouse, Pieces = line.Quantity }); context.SaveChanges(); } else stockFromDatabase.Pieces += line.Quantity; }
private static void AddLineToStockAdjustmentPurchaseTransaction(StockAdjustmentTransactionLine line, PurchaseTransaction stockAdjustmentPurchaseTransaction) { var stockAdjustmentPurchaseLine = new PurchaseTransactionLine { PurchaseTransaction = stockAdjustmentPurchaseTransaction, Item = line.Item, Warehouse = line.Warehouse, PurchasePrice = 0, Discount = 0, Quantity = line.Quantity, Total = 0, SoldOrReturned = 0 }; stockAdjustmentPurchaseTransaction.PurchaseTransactionLines.Add(stockAdjustmentPurchaseLine); }
private void AddNewEntryToTransaction() { foreach (var line in _parentVM.DisplayedLines) { if (!_newEntryItem.ID.Equals(line.Item.ID) || !_newEntryWarehouse.ID.Equals(line.Warehouse.ID) || !_newEntryPrice.Equals(line.PurchasePrice) || !_newEntryDiscount.Equals(line.Discount)) continue; Debug.Assert(_newEntryQuantity != null, "_newEntryQuantity != null"); line.Quantity += (int) _newEntryQuantity; ResetEntryFields(); return; } Debug.Assert(_newEntryQuantity != null, "_newEntryQuantity != null"); var newEntryLine = new PurchaseTransactionLine { Quantity = (int)_newEntryQuantity, PurchasePrice = _newEntryPrice, Discount = _newEntryDiscount, Item = _newEntryItem.Model, Warehouse = _newEntryWarehouse.Model, SoldOrReturned = 0, PurchaseTransaction = _parentVM.Model, Total = (int)_newEntryQuantity * (_newEntryPrice - _newEntryDiscount) }; var lineVM = new PurchaseTransactionLineVM { Model = newEntryLine }; _parentVM.DisplayedLines.Add(lineVM); }
private static void AttachPurchaseTransactionLineToDatabaseContext(ERPContext context, PurchaseTransactionLine line) { line.Item = context.Inventory.Single(item => item.ID.Equals(line.Item.ID)); line.Warehouse = context.Warehouses.Single(warehouse => warehouse.ID.Equals(line.Warehouse.ID)); }
private static void IncreaseLineItemStockInDatabaseContext(ERPContext context, PurchaseTransactionLine line) { var stockFromDatabase = context.Stocks.SingleOrDefault( stock => stock.ItemID.Equals(line.Item.ID) && stock.WarehouseID.Equals(line.Warehouse.ID)); if (stockFromDatabase == null) { context.Stocks.Add(new Stock { Item = line.Item, Warehouse = line.Warehouse, Pieces = line.Quantity }); context.SaveChanges(); } else { stockFromDatabase.Pieces += line.Quantity; } }