public FeaturesService(ISerialNumberService serialNumberService, SerialNumberEncoder serialNumberEncoder, CloudClientService cloudClientService = null, IDataBaseInfo dataBaseInfo = null) { this.serialNumberEncoder = serialNumberEncoder ?? throw new ArgumentNullException(nameof(serialNumberEncoder)); this.cloudClientService = cloudClientService ?? throw new ArgumentNullException(nameof(cloudClientService)); this.dataBaseInfo = dataBaseInfo; if (dataBaseInfo?.IsDemo == true) { ProductEdition = 0; return; } ProductEdition = 1; if (String.IsNullOrWhiteSpace(serialNumberService.SerialNumber)) { return; } serialNumberEncoder.Number = serialNumberService.SerialNumber; if (serialNumberEncoder.IsValid) { if (serialNumberEncoder.CodeVersion == 1) { ProductEdition = 2; //Все купленные серийные номера версии 1 приравниваются к профессиональной редакции. } else if (serialNumberEncoder.CodeVersion == 2 && serialNumberEncoder.EditionId >= 1 && serialNumberEncoder.EditionId <= 3) { ProductEdition = serialNumberEncoder.EditionId; } } }
public EmployeeProcessingJournalViewModel(IUnitOfWorkFactory unitOfWorkFactory, IInteractiveService interactiveService, INavigationManager navigationManager, IDeleteEntityService deleteEntityService, ILifetimeScope autofacScope, NormRepository normRepository, BaseParameters baseParameters, IDataBaseInfo dataBaseInfo, ICurrentPermissionService currentPermissionService = null) : base(unitOfWorkFactory, interactiveService, navigationManager, deleteEntityService, currentPermissionService) { UseSlider = false; Title = "Корректировка сотрудников"; this.interactive = interactiveService ?? throw new ArgumentNullException(nameof(interactiveService)); this.normRepository = normRepository ?? throw new ArgumentNullException(nameof(normRepository)); this.baseParameters = baseParameters ?? throw new ArgumentNullException(nameof(baseParameters)); this.dataBaseInfo = dataBaseInfo ?? throw new ArgumentNullException(nameof(dataBaseInfo)); AutofacScope = autofacScope; JournalFilter = Filter = AutofacScope.Resolve <EmployeeFilterViewModel>(new TypedParameter(typeof(JournalViewModelBase), this)); //Обход проблемы с тем что SelectionMode одновременно управляет и выбором в журнале, и самим режимом журнала. //То есть создает действие выбора. Удалить после того как появится рефакторинг действий журнала. SelectionMode = JournalSelectionMode.Multiple; NodeActionsList.Clear(); CreateActions(); (DataLoader as ThreadDataLoader <EmployeeProcessingJournalNode>).PostLoadProcessingFunc = delegate(System.Collections.IList items, uint addedSince) { foreach (EmployeeProcessingJournalNode item in items) { if (Results.ContainsKey(item.Id)) { item.Result = Results[item.Id]; } } }; }
public ErrorMsgDlg(Exception exception, IApplicationInfo application, UserBase user, IErrorReportingSettings errorReportingSettings, IDataBaseInfo dataBaseInfo = null) { this.Build(); this.application = application; this.user = user; this.errorReportingSettings = errorReportingSettings ?? throw new ArgumentNullException(nameof(errorReportingSettings)); this.databaseInfo = dataBaseInfo; AppExceptions.Add(exception); OnExeptionTextUpdate(); buttonSendReport.Sensitive = false; entryEmail.Text = user?.Email; this.SetPosition(WindowPosition.CenterOnParent); textviewDescription.Buffer.Changed += InputsChanged; entryEmail.Changed += InputsChanged; }
public EmployeeNotificationJournalViewModel(IUnitOfWorkFactory unitOfWorkFactory, IInteractiveService interactiveService, INavigationManager navigationManager, IDeleteEntityService deleteEntityService, ILifetimeScope autofacScope, NotificationManagerService notificationManager, NormRepository normRepository, BaseParameters baseParameters, IDataBaseInfo dataBaseInfo, ICurrentPermissionService currentPermissionService = null) : base(unitOfWorkFactory, interactiveService, navigationManager, deleteEntityService, currentPermissionService) { UseSlider = false; Title = "Уведомление сотрудников"; this.interactive = interactiveService ?? throw new ArgumentNullException(nameof(interactiveService)); this.notificationManager = notificationManager ?? throw new ArgumentNullException(nameof(notificationManager)); this.baseParameters = baseParameters ?? throw new ArgumentNullException(nameof(baseParameters)); this.dataBaseInfo = dataBaseInfo ?? throw new ArgumentNullException(nameof(dataBaseInfo)); AutofacScope = autofacScope; JournalFilter = Filter = AutofacScope.Resolve <EmployeeNotificationFilterViewModel>(new TypedParameter(typeof(JournalViewModelBase), this)); (DataLoader as ThreadDataLoader <EmployeeNotificationJournalNode>).PostLoadProcessingFunc = HandlePostLoadProcessing; //Обход проблемы с тем что SelectionMode одновременно управляет и выбором в журнале, и самим режимом журнала. //То есть создает действие выбора. Удалить после того как появится рефакторинг действий журнала. SelectionMode = JournalSelectionMode.Multiple; NodeActionsList.Clear(); CreateActions(); }