private void RecalculateSummaryByOrders(ExecuteOrderSummaryItem rangeSummaryItem) { ExecuteOrderSummaryItem instrumentSummaryItem = this.ExecuteOrderSummaryItems.SingleOrDefault(P => P.Instrument.Id == rangeSummaryItem.Instrument.Id); instrumentSummaryItem.Update(rangeSummaryItem, false); foreach (ExecuteOrderSummaryItem orderSummaryItem in rangeSummaryItem.ChildSummaryItems) { if (rangeSummaryItem.MinNumeratorUnit > orderSummaryItem.MinNumeratorUnit) { rangeSummaryItem.MinNumeratorUnit = orderSummaryItem.MinNumeratorUnit; } if (rangeSummaryItem.MaxDenominator < orderSummaryItem.MaxDenominator) { rangeSummaryItem.MaxDenominator = orderSummaryItem.MaxDenominator; } rangeSummaryItem.Update(rangeSummaryItem, true); } }
private void AddOrderSummaryItem(ExecuteOrderSummaryItem rangeSummaryItem, Order order) { ExecuteOrderSummaryItem orderSummaryItem = rangeSummaryItem.ChildSummaryItems.SingleOrDefault(P => P.Id == order.Id.ToString()); if (orderSummaryItem == null) { orderSummaryItem = new ExecuteOrderSummaryItem(order); rangeSummaryItem.ChildSummaryItems.Add(orderSummaryItem); rangeSummaryItem.Update(orderSummaryItem, true); rangeSummaryItem.SetAvgPrice(); } }