/// <summary>
        /// Системные действия во время пустой очереди
        /// </summary>
        private async Task ActionsInEmptyQueue()
        {
            await ConvertingTimeActions.SignaturesOnDataBase(_projectSettings, _messagingService, _loggerService);

            await ConvertingTimeActions.CheckAndDeleteUnusedPackagesOnDataBase(_convertingServerServiceFactory, _messagingService, _loggerService);

            await ConvertingTimeActions.DeleteAllUnusedDataOnDisk(_fileSystemOperations, _messagingService, _loggerService);

            await QueueIsEmpty();
        }
 /// <summary>
 /// Конвертировать пакет
 /// </summary>
 private async Task ConvertingPackage(IPackageServer packageServer) =>
 await packageServer.
 WhereContinueAsyncBind(package => package.IsValid,
                        okFunc : package => package.
                        Void(_ => _messagingService.ShowMessage($"Конвертация пакета {package.Id}")).
                        Void(_ => _loggerService.LogByObject(LoggerLevel.Info, LoggerAction.Operation,
                                                             ReflectionInfo.GetMethodBase(this), packageServer.Id.ToString())).
                        Void(_ => ConvertingTimeActions.KillPreviousRunProcesses()).
                        Map(_ => ConvertingFilesData(package)).
                        MapAsync(ReplyPackageIsComplete),
                        badFunc : package => Task.FromResult(ReplyPackageIsInvalid(package))).
 VoidAsync(_ => _convertingFileData.CloseApplication()).
 VoidBindAsync(SendResponse);
        public void StartConverting()
        {
            if (!ConvertingValidation.CheckSignatures(_projectSettings, _messagingService) ||
                !ConvertingValidation.CheckPrinters(_projectSettings, _messagingService))
            {
                return;
            }

            _messagingService.ShowMessage("Запуск процесса конвертирования...");
            ConvertingTimeActions.KillPreviousRunProcesses();

            SubscribeToDataBase();
        }