/// <summary> /// Загрузить файл и сохранить в папку для обработки /// </summary> private IResultValue <IDocumentLibrary> LoadAndSaveDocument(IFilePath filePath) => new ResultError(). ResultVoidOk(_ => _messagingService.ShowMessage("Загрузка файла")). ResultVoidOk(_ => _loggerService.LogByObject(LoggerLevel.Info, LoggerAction.Operation, ReflectionInfo.GetMethodBase(this), filePath.FileNameServer)). ResultValueOk(_ => ConvertingFilePath.CreateSavingPath(filePath.FilePathServer, filePath.FileExtensionType, _fileSystemOperations)). ResultValueOkBind(savingPath => _fileSystemOperations.CopyFile(filePath.FilePathServer, savingPath)). ResultValueOkBind(_ => _applicationConverting.OpenDocument(filePath.FilePathServer)). Void(result => _messagingService.ShowAndLogErrors(result.Errors));
/// <summary> /// Экспортировать в другие форматы /// </summary> private IResultValue <IFileDataSourceServer> ExportFile(IDocumentLibrary documentLibrary, IFilePath filePath, StampDocumentType stampDocumentType) => new ResultError(). ResultVoidOk(_ => _messagingService.ShowMessage("Экспорт файла")). ResultVoidOk(_ => _loggerService.LogByObject(LoggerLevel.Info, LoggerAction.Operation, ReflectionInfo.GetMethodBase(this), filePath.FileNameServer)). ResultValueOk(_ => ConvertingFilePath.CreateSavingPath(filePath.FilePathServer, _applicationConverting.GetExportFileExtension(filePath.FileExtensionType), _fileSystemOperations)). ResultValueOkBind(fileExportPath => _applicationConverting.CreateExportFile(documentLibrary, filePath.ChangeServerPath(fileExportPath), stampDocumentType)). Void(result => _messagingService.ShowErrors(result.Errors));
/// <summary> /// Создать PDF /// </summary> private IResultCollection <IFileDataSourceServer> CreateProcessingFile(IDocumentLibrary documentLibrary, IFileDataServer fileDataServer, IConvertingSettings convertingSettings) => new ResultError(). ResultVoidOk(_ => _messagingService.ShowMessage("Создание файлов PDF и печать")). ResultVoidOk(_ => _loggerService.LogByObject(LoggerLevel.Info, LoggerAction.Operation, ReflectionInfo.GetMethodBase(this), fileDataServer.FileNameServer)). ResultValueOkBind(_ => _applicationConverting. CreateProcessingFile(documentLibrary, ConvertingFilePath.GetFilePathCollection(fileDataServer, _fileSystemOperations), convertingSettings, fileDataServer.ColorPrintType)). Void(result => _messagingService.ShowAndLogErrors(result.Errors)). ToResultCollection();