internal void Update([NotNull] IPreliminaryOrder order) { Debug.Assert(order != null); Source = order; Id = order.Id; CreateTime = order.CreateTime; Number = order.Number; OriginName = order.OriginName; products.Clear(); foreach (var product in order.Products) { products.Add(new ProductItemModel(product) { Parent = this }); } RebuildItems(); }
private void UpdateOrder(IPreliminaryOrder order) { var model = orderModels.FirstOrDefault(om => om.Id == order.Id); if (PluginContext.Operations.TryGetPreliminaryOrderById(order.Id) == null) { orderModels.Remove(model); } else { if (model == null) { model = new OrderModel(); model.Update(order); orderModels.Add(model); } else { model.Update(order); } } }