private void GetOrder(int order_key)
        {
            ExecuteFaultHandledOperation(() =>
            {
                IOrderService order_service = service_factory.CreateClient <IOrderService>();
                using (order_service)
                {
                    Order           = new OrderWrapper(order_service.GetOrder(order_key));
                    AccountContacts = new ObservableCollection <AccountPerson>(Order.Account.Model.Employees.Where(item =>
                                                                                                                   item.CompanyRoleType == QIQOPersonType.AccountContact).ToList());
                    Order.PropertyChanged += Context_PropertyChanged;
                    Order.AcceptChanges();
                    _currentAccount = Order.Account.Model;
                }

                DefaultBillingAddress  = Order.OrderItems[0].OrderItemBillToAddress;
                DefaultShippingAddress = Order.OrderItems[0].OrderItemShipToAddress;
                ViewTitle     = Order.OrderNumber;
                GridIsEnabled = Order.OrderStatus != QIQOOrderStatus.Complete ? true : false;
                //AccountContacts = new ObservableCollection<AccountPerson>(Order.Account.Model.Employees.Where(item =>
                //                                                            item.CompanyRoleType == QIQOPersonType.AccountContact).ToList());
                event_aggregator.GetEvent <GeneralMessageEvent>().Publish($"Order {Order.OrderNumber} loaded successfully");
                event_aggregator.GetEvent <OrderLoadedEvent>().Publish(Order.OrderNumber);
            });
        }
        private void InitNewOrder()
        {
            Order new_order = new Order() //*** GET this initializatoin stuff into the objects themselves!! (complete)
            {
                OrderEntryDate  = DateTime.Now,
                OrderStatusDate = DateTime.Now,
                DeliverByDate   = DateTime.Now.AddDays(7), // think about a defaul lead time for each account
                SalesRep        = SalesRepList[0],
                AccountRep      = AccountRepList[0]
            };

            new_order.OrderItems.Add(InitNewOrderItem(1));
            SelectedOrderItemIndex = 0;

            Order = new OrderWrapper(new_order);
            DefaultBillingAddress  = new AddressWrapper(new Address());
            DefaultShippingAddress = new AddressWrapper(new Address());
            Order.PropertyChanged += Context_PropertyChanged;
            Order.AcceptChanges();
            GridIsEnabled = false;
        }