Предпросмотр документов ======================== Общая информация ------------------ - Предпросмотр в браузере работает с форматами **pdf** и **изображениями**. Для этих типов никакой дополнительной логики не требуется и их предпросмотр работает в community версии. - Для содержимого, которое не соответствует поддерживаемым форматам, происходит автоматическая конвертация в **pdf** (только в enterprise версии). Подробнее см. :ref:`Механизм конвертации: Трансформация содержимого документов` - Предпросмотр автоматически генерируется для основного контента. - Основной контент - контент в атрибуте с id ‘content' или другой, но в конфигурации типа он должен быть указан в `contentConfig → path`. Подробнее см. :ref:`Конфигурация контента` Условия автоматической генерации превью ----------------------------------------- 1. Тип документа унаследован от user-base прямо или косвенно. 2. У документа есть атрибут с основным контентом. Процесс генерации ------------------ 1. В системе происходит создание сущности с основным контентом или изменение основного контента. 2. Микросервис :ref:`ecos-transformations ` подписан на события из п.1 и создает или обновляет thumbnail c форматом pdf. 3. Микросервис :ref:`ecos-transformations ` выполняет конвертацию основного контента документа в формат pdf и записывает результат в основной контент thumbnail. Thumbnail ---------- Это некоторое представление основного документа в заданном формате. Атрибуты: .. code-block:: content: CONTENT // основное сгенерированное содержимое mimeType: TEXT // MIME-тип содержимого для этого thumbnail srcSha256: TEXT // Хэш исходного контента srcAttribute: TEXT // Атрибут с исходным контентом status: TEXT // Статус обработки. Варианты: [DRAFT, PROCESSING, PROCESSED, FAILED] nextTryTime: DATETIME // Время следующей попытки сгенерировать контент в случае неудачи failsCount: NUMBER // Текущее количество неудачных попыток сгенерировать контент failDescription: TEXT // Описание последней ошибки генерации Thumbnail сущности создаются как дочерние к основному документу. Thumbnail repair job ~~~~~~~~~~~~~~~~~~~~ В микросервисе :ref:`ecos-transformations ` настроена джоба, которая занимается обработкой thumbnail'ов, которые зависли в некорректном статусе. Варианты некорректных статусов: - Статус: **PROCESSING** и время_последнего_изменения_thumbnail старше 30 минут - Статус: **FAILED** и время_в_nextTryTime меньше чем текущее время