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;
        }
Esempio n. 2
0
        /// <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);
            }
        }