BR 2.6 — Admin Franchise (фронтенд)
Репозиторий
nearbyErp/erp-admin-bff (BFF + React SPA)
Контекст
Нужно убедиться что в UI управления ролями (раздел «Настройки → Роли») появляются 6 новых ключей gensvc.*. Это зависит от того, как устроен список permissions в UI:
Вариант A (вероятный): Список permissions подтягивается из User Service
Если фронт запрашивает каталог permissions через API (GET /api/v1/permissions или аналог), то добавление ключей в код User Service автоматически сделает их видимыми в UI. Задач по фронту минимум.
Вариант B: Список permissions захардкожен во фронте Нужно добавить категорию «AI Студия» вручную в компонент выбора permissions.
Задачи
1. Определить, откуда UI берёт список permissions
- Найти компонент управления ролями в репозитории фронта (предположительно
RoleFormили аналог) - Проверить — делает ли компонент API-запрос для получения списка permission-ключей или использует локальный список
- Если API: перейти к п.3 (только smoke-test). Если захардкожено: выполнить п.2.
2. [Только если захардкожено] Добавить категорию «AI Студия»
- Найти файл со списком permission-ключей в коде фронта
- Добавить категорию «AI Студия» с 6 ключами:
{
category: 'AI Студия',
permissions: [
{ key: 'gensvc.access', label: 'Базовый доступ к AI Студии' },
{ key: 'gensvc.photo.create', label: 'Создание заданий на генерацию' },
{ key: 'gensvc.history.read', label: 'Просмотр своей истории' },
{ key: 'gensvc.history.read.all', label: 'Просмотр истории всех сотрудников' },
{ key: 'gensvc.delete', label: 'Удаление заданий' },
{ key: 'gensvc.preset.admin', label: 'Управление системными пресетами' },
]
}- Добавить русские подписи (label) для каждого ключа
3. Smoke-test: проверка UI
- Открыть «Настройки → Роли → Создать роль»
- Убедиться что в списке permissions видна категория «AI Студия» с 6 опциями
- Создать тестовую роль «Контент-менеджер AI» с ключами:
gensvc.access,gensvc.photo.create,gensvc.history.read - Назначить роль тестовому сотруднику
- Залогиниться как тестовый сотрудник, проверить что токен содержит нужные permissions через
GET /auth/me
4. [Опционально] Проверить описание permissions в UI
- Если в UI есть tooltips или описания для permissions — добавить описания для
gensvc.*ключей (взять из Permissions AI Студии)
5. Кнопка перехода в AI Студию из Админки Франшизы
Принято 2026-05-07
AI Студия — отдельный SPA на
photo.nirbi.ru. В основном фронте Админки добавляется только пункт навигации, а не embed.
- Добавить пункт «AI Студия» в боковом меню (или верхнем nav) — между существующими разделами. Иконка:
sparklesили аналог. - Видимость пункта — только если у юзера есть permission
gensvc.access. Использовать существующий хукuseHasPermission(). - Клик → новая вкладка
https://photo.nirbi.ru/?erp_token={current_jwt}(передача access_token через query).- Альтернатива:
window.open(...)+postMessageдля передачи токена. Решить на этапе реализации.
- Альтернатива:
- Убедиться что фронт AI Студии корректно подхватывает токен и валидирует через introspection (это уже реализовано, нужен smoke).
- Smoke-test: войти как сотрудник с/без
gensvc.access— пункт виден/скрыт корректно; клик по пункту открывает рабочий фронт.