BR 6.2: AI-постер из Photo Studio в карусель
Демо 29.05.2026 — Сценарий 2
Зависит от:
Контекст
AI Photo Studio уже интегрирован в админку как iframe-модалка на карточке товара (BR 2.6 + задачи #295–298). Сейчас результат генерации применяется к изображению продукта (product.image_url). Это первый use-case — фото блюда.
Второй use-case — постер. Тип job-а заявлен в Overview (функция #3), но конкретный flow «постер с гостем → витрина кассы» не реализован: нет шаблонов промптов под бренд Альфы, нет связки output → карусель из BR 6.1.
Что хочет бизнес
Маркетолог открывает админку, нажимает «Создать AI-постер», загружает фото (например, гостя с пончиком), выбирает один из заготовленных брендовых шаблонов («Постер Альфа ERP, портрет с предметом», «Сезонная акция», «Новинка дня»), AI генерирует постер в стиле Альфы. Маркетолог одним кликом отправляет постер в карусель конкретной ТТ — там он моментально появляется как новый слайд.
Функции «AI-постер»
- Шаблоны промптов — 3–5 предустановленных brand-aligned промптов, заданных контент-командой
- Job-type
poster— новый тип задания в AI Photo Studio (рядом сphoto-studio,enhance) - Кнопка «Добавить в карусель ТТ» — после успешной генерации, выбор ТТ → создание
marketing_slideчерез API BR 6.1 - Прослеживаемость — слайд хранит
source = 'ai_photo_studio',source_ref = { job_id, preset_id, template_id }
Пользователи
| Профиль | Кто | Permissions |
|---|---|---|
| Маркетолог | Создаёт постеры и закидывает в карусель | gensvc.photo.create, marketing.write |
| Владелец точки | Может в рамках своей ТТ | те же |
| Администратор франшизы | Управляет шаблонами промптов | + gensvc.poster.template.admin |
Сущности
poster_prompt_template (в БД gensvc)
| Поле | Тип | Описание |
|---|---|---|
id | UUID | PK |
franchise_id | UUID | Тенант |
name | VARCHAR(120) | Название («Постер с гостем», «Сезонная акция») |
prompt_text | TEXT | Тело промпта (с placeholder’ами {object}, {guest_name} и т.д.) |
cover_url | TEXT nullable | Пример результата |
active | BOOLEAN | |
created_at | TIMESTAMPTZ |
Шаблоны общие на франшизу (не per-store).
API (AI Photo Studio — расширение)
| Метод | Путь | Описание |
|---|---|---|
| GET | /v1/poster-templates | Список шаблонов франшизы |
| POST | /v1/jobs/poster | Создать job типа poster с template_id + input image |
| GET | /v1/jobs/{id} | Существующий — статус job |
API связки с каруселью
После завершения poster-job, admin-bff проксирует кнопку «Добавить в карусель»:
POST /api/v1/admin/stores/{store_id}/marketing-slides
multipart: image (скачивается с output_url AI Photo Studio)
+ JSON: { source: 'ai_photo_studio', source_ref: { job_id, preset_id, template_id } }
Новые permissions
| Ключ | Описание |
|---|---|
gensvc.poster.create | Создание postгер-job (если хотим отделить от gensvc.photo.create) |
gensvc.poster.template.admin | Управление шаблонами промптов |
Решение:
gensvc.poster.createсовмещаем с уже существующимgensvc.photo.create— не плодим. Admin шаблонов — отдельно.
Заготовленные шаблоны промптов (3–5 шт)
Минимум для демо:
- «Гость с предметом» — портрет человека с предметом в руках в фирменном стиле Альфы (для Сценария 2)
- «Сезонная акция» — постер с продуктом + текст акции
- «Новинка дня» — постер с одной фокусной позицией
Точные тексты — задача контент-команды. Создаём 3 шаблона в БД на демо-франшизу через seed.
Что НЕ входит в текущий скоуп
- Распознавание лица гостя (face-preserving generation) — Phase 2 / отдельный BR
- Видео-постеры — Phase 2
- Шаблоны от пользователя (custom prompt templates) — Phase 2
- A/B тестирование постеров — Phase 2
Затронутые сервисы и продукты
| Компонент | Что меняется |
|---|---|
| ai-photo-studio-backend | Новая таблица poster_prompt_template, эндпоинт POST /v1/jobs/poster с template_id, S3-бакет для шаблонов-превью |
| admin-bff | Прокси для template list + создание postгер-job + «Добавить в карусель ТТ» |
| erp-admin/web | В AI Photo Studio Modal новая вкладка/режим «Постер»: выбор шаблона, генерация, кнопка «Добавить в карусель ТТ» с выбором store_id |
| erp-user-service | Permission gensvc.poster.template.admin |
| erp-store-service | (без изменений — API из BR 6.1) |
Acceptance criteria для демо 29.05
- В админке открывается AI Photo Studio в режиме «Постер» с 3 готовыми шаблонами
- Загрузка фото гостя → выбор шаблона «Гость с предметом» → AI генерирует постер за ≤ 30 секунд
- После генерации показан результат + кнопка «Добавить в карусель ТТ» с дропдауном выбора ТТ
- Клик «Добавить» → постер моментально создаётся как
marketing_slide(source=ai_photo_studio) - На реальной кассе через ≤ 3 секунды появляется новый слайд (через SSE из BR 6.1)
- В админке в списке слайдов виден новый постер с тегом «AI» и
job_idв деталях
Ссылки
- HTML-превью демо
- BR 6.1 — карусель
- BR 2.6 — Photo Studio
- ADR-021
- AI Photo Studio Service
- Спека: AI Photo Studio — Постеры