public AirOrdersViewModel()
        {
            Logger logger = LogManager.GetCurrentClassLogger();

            EnableCollectionSynchronization();
            AirOrdersModelSingleton.Instance.OnOrderAdded += new AirOrdersModelSingleton.OrderAddedHandler(ord => { AfterAddOrder(); });
            AddNewOrderCommand = new DelegateCommand(_ => { MainClass.ShowUC(UI.UIModify.GetCtrlAddOrder()); });
            EditOrderCommand   = new DelegateCommand(_ =>
            {
                //thread


                if (CurentOrder != null)
                {
                    if (!CanEditCurentOrder)
                    {
                        return;
                    }

                    MainClass.StartBusy();
                    MainClass.ShowUC(UI.UIModify.GetCtrlAddOrder(CurentOrder));
                    MainClass.StopBusy();
                }
            });
            CopyOrderCommand = new DelegateCommand(_ =>
            {
                if (CurentOrder != null)
                {
                    MainClass.StartBusy();
                    var CopyOrder = (OrderFlight)CurentOrder.Clone();
                    MainClass.ShowUC(UI.UIModify.GetCtrlAddOrder(CopyOrder));
                    MainClass.StopBusy();
                }
            });

            CloseOrderCommand = new DelegateCommand(_ =>
            {
                if (CurentOrder != null)
                {
                    MainClass.CloseSingleCheck(CurentOrder);
                    RaisePropertyChanged("CanEditCurentOrder");
                    RaisePropertyChanged("CanCloseCurentOrder");
                }
            });
            DeleteOrderCommand = new DelegateCommand(_ =>
            {
                try
                {
                    logger.Debug($"DeleteOrderCommand ToFly");

                    if (CurentOrder != null)
                    {
                        logger.Debug($"DeleteOrderCommand ToFly Id: {CurentOrder.Id}");
                        var delres = UI.UIModify.ShowPromt($"Вы уверены, что хотите удалить заказ №{CurentOrder.Id + Environment.NewLine}. Если да, то введите номер заказа.",
                                                           "Удалить", "Отмена", "Удаление заказа");

                        if (delres != null && delres.DialogResult.GetValueOrDefault())
                        {
                            if (delres.PromptResult != null && (delres.PromptResult.Trim() == CurentOrder.Id.ToString()))
                            {
                                AirOrdersModelSingleton.Instance.DeleteOrder(CurentOrder);
                            }
                        }
                    }
                }
                catch (Exception e)
                {
                    logger.Error($"DeleteOrderCommand error : {e.Message}");
                }
            });

            RefreshCommand = new DelegateCommand(_ =>
            {
                if (!MainClass.AddAirOrderPaneOpen())
                {
                    AirOrdersModelSingleton.Instance.RefreshOrdersRange();
                }
                else
                {
                    UI.UIModify.ShowAlert($"Для обновления данных по заказам ToFly {Environment.NewLine} необходимо закрыть все вкладки {Environment.NewLine}с добавление либо изменением заказа ToFly.");
                }
            });

            SetSendStatusCommand = new DelegateCommand(_ =>
            {
                if (CurentOrder != null)
                {
                    logger.Debug($"SetSendStatusCommand {CurentOrder.Id}");
                    CurentOrder.SendById = Authorization.CurentUser.Id;
                    CurentOrder.SendBy   = Authorization.CurentUser;
                    if (curentOrder.OrderStatus == OrderStatus.InWork)
                    {
                        CurentOrder.OrderStatus = OrderStatus.Sent;
                        SH.SHWrapper.CreateSalesInvoiceSync(CurentOrder, out string err);
                    }
                    else if (curentOrder.OrderStatus == OrderStatus.Sent)
                    {
                        CurentOrder.OrderStatus = OrderStatus.InWork;
                    }

                    Models.AirOrdersModelSingleton.Instance.UpdateOrder(CurentOrder);

                    logger.Debug($"SetSendStatusCommand end {CurentOrder.Id}");

                    RaisePropertyChanged("SetSendStatusBntName");
                }
            });


            PrintLabelCommand = new DelegateCommand(_ => { UI.UIModify.ShowWndPrintLabels(CurentOrder); });
        }