public Order(NavOrder order) { if (order.IsDelivered) this.DeliveryDate = new DateTime(order.OrderDeliveryDate.Year, order.OrderDeliveryDate.Month, order.OrderDeliveryDate.Day); else this.DeliveryDate = new DateTime(2000, 1, 1); this.OrderDate = new DateTime(order.OrderDate.Year, order.OrderDate.Month, order.OrderDate.Day); this.CustomerNo = order.CustomerNo; this.IsDelivered = order.IsDelivered; this.No = order.No; this.TotalCost = order.TotalCost; }
/// <summary> /// Loads data from local storage. /// /// if there is no products or orders it reloads data from the server. /// </summary> private void LoadLocalData() { this.Products = new ObservableCollection<NavProduct>(); this.Orders = new ObservableCollection<NavOrder>(); var products = App.ViewModel.DynDB.Products.Where(x => x.VendorNo == this.No); var orders = App.ViewModel.DynDB.Orders.Where(x => x.CustomerNo == this.No); if(products == null && orders == null) { this.ReloadData(); return; } foreach(Product p in products) { this.Products.Add(new NavProduct() { Count = p.Count, Description = p.Description, Name = p.Name, No = p.No, Price = p.Price, VendorNo = p.VendorNo }); } foreach(Order o in orders) { NavOrder order = new NavOrder() { CustomerNo = o.CustomerNo, IsDelivered = o.IsDelivered, No = o.No, OrderDate = o.OrderDate.Date, OrderDeliveryDate = o.DeliveryDate.Date, TotalCost = o.TotalCost, OrderItems = new ObservableCollection<NavOrderItem>() }; var items = App.ViewModel.DynDB.OrderItems.Where(x => x.OrderNo == o.No); foreach(OrderItem item in items) { order.OrderItems.Add(new NavOrderItem() { Cost = item.Cost, Count = item.Count, No = item.No, OrderNo = item.OrderNo, ProductNo = item.ProductNo, PurchasePrice = item.PurchasePrice }); } this.Orders.Add(order); } }