コード例 #1
0
        private void Application_Startup(object sender, StartupEventArgs e)
        {
            try
            {
                var url  = "&mac=" + (new SystemInfo().MacAddress);
                var list = Getway.LoadPcInfo(url);

                if (list.Count > 0)
                {
                    Tracer.Append($"Информация получена. Всего {list.Count} записей.");
                    var pcInfo = list?.First() ?? null;
                    if (pcInfo != null)
                    {
                        if (pcInfo.status == "IS_APPLY")
                        {
                            Getway.Log(pcInfo); //Данные по компьютеру уже приняты
                            Tracer.Append($"Данные по компьютеру уже приняты");
                            Current.Shutdown(); // Проигнорировать и отправить SystemInfo
                        }
                        else if (pcInfo.status == "PROCESSING")
                        {
                            Getway.Log(pcInfo);
                            if (MessageBox.Show("Данные по вашему компьютеру находятся на обработке.\nВы хотите отредактировать какие либо значения?", "", MessageBoxButton.YesNo, MessageBoxImage.Question) == MessageBoxResult.Yes)
                            {
                                ShowView(pcInfo);                    // данные есть, но статус не подтвержден
                                ARMInfo.MainWindow.MayIGoOut = true; // сделать загрузку данных. (заполнение интерфейса)
                            }
                            else
                            {
                                Current.Shutdown();
                            }
                        }
                        else
                        {
                            ShowView();
                        }
                    }
                    else
                    {
                        ShowView();// нет никаких данных о компе
                    }
                }
                else
                {
                    Tracer.Append($"Нет данных о компьютере. Открываю интерфейс пользователя.");
                    var newPc = new PCInfo();
                    newPc.SetUp(new SystemInfo(), new PersonalInfo());
                    Getway.Log(newPc);
                    ShowView(); // нет никаких данных о компе
                }
            }
            catch (Exception err)
            {
                ARMInfo.MainWindow.MayIGoOut = true;
                MessageBox.Show(err.Message, "", MessageBoxButton.OK, MessageBoxImage.Error);

                Tracer.Append(err.Message);
                Current.Shutdown();
            }
        }
コード例 #2
0
        public MainViewModel(IPCInfo pc)
        {
            OVDList = Getway.LoadOvdInfo();

            if (OVDList.Count == 0)
            {
                MainWindow.MayIGoOut = true;
            }

            ListPcInfo              = new ObservableCollection <IPCInfo>(Getway.LoadPcInfo());
            this.SystemParameters   = new SystemInfo();
            this.PersonalParameters = pc.GetPersonalInfo();
            SelectedOVD             = OVDList.First(x => x.Id == pc.ovd);
            if (pc.department != null)
            {
                SelectedDepartment = SelectedOVD.Departments?.First(x => x.Id == pc.department);
            }
            var obj = OVD.AllObjects.First(x => x.id == pc.@object);

            SelectedAttestObject = obj;
            FilterText           = PersonalParameters.InventoryNumber;
            SelectedPc           = pc;
            IsDropDownPcList     = false;
        }
コード例 #3
0
 public MainViewModel(ISystemInfo sp, IPersonalInfo pi)
 {
     this.SystemParameters   = sp;
     this.PersonalParameters = pi;
     ListPcInfo = new ObservableCollection <IPCInfo>(Getway.LoadPcInfo());
 }