/// <summary> /// /// </summary> /// <param name="customer"></param> /// <param name="stockItem"></param> /// <param name="amount"></param> public void AddNewBalance(Customer customer, StockItem stockItem, decimal amount) { var tmpStockBalance = this.SingleOrDefault(W => ((W.customer.ID == customer.ID) && (W.stockItem.ID == stockItem.ID) && !W.IsDeleted)); if (tmpStockBalance != null) { tmpStockBalance.Amount += amount; //igulisxmeba rom amatebs } else { this.Add(new StockBalance(Session) { ID = ( this.Count > 0 ? this.Max(m => m.ID) + 1 : 1), stockItem = stockItem, Amount = amount, customer = customer }); } }
/// <summary> /// /// </summary> /// <param name="item"></param> /// <param name="date"></param> /// <returns></returns> public decimal CalculateBalanceForStockItemBeforeDate(StockItem item, DateTime date) { return(GetFilteredCollection(W => W.stockItem.ID == item.ID && W.Date.Date <= date.Date && !W.IsDeleted).Select(S => S.Amount).ToList().Sum()); }