BR 6.1 → User Service

Репозиторий: erp-user-service Контракты: Data Model

Задачи

Миграция permissions

  • Liquibase changeset NNN-marketing-permissions.xml:
    • INSERT в permission_catalog (или эквивалент — таблица permissions):
      • marketing.read (категория «Маркетинг», описание «Просмотр слайдов»)
      • marketing.write (категория «Маркетинг», описание «CRUD слайдов»)
    • INSERT в role_permissions для системной роли «Администратор» каждой франшизы обоих ключей
    • Идемпотентность: миграция должна корректно работать при rerun (INSERT ... ON CONFLICT DO NOTHING или Liquibase preconditions)

Расширение /auth/me или /roles/permission-catalog

  • GET /api/v1/roles/permission-catalog (если такой эндпоинт есть) должен теперь возвращать новые permissions с категорией «Маркетинг»
  • GET /api/v1/auth/me (или эквивалент) — permissions[] массив сотрудника должен включать marketing.read/marketing.write если у него такая роль

UI-гейтинг

  • (Опционально, в Admin) — отметить новые permissions в usePermission hook (не требует backend-изменений, только faq)

Тесты

  • Юнит-тест: после миграции системная роль «Администратор» имеет marketing.read + marketing.write
  • Юнит-тест: PermissionCatalog возвращает новые ключи

Зависимости

Без зависимостей. Можно деплоить первым в цикле BR 6.1 — разблокирует RBAC-проверки во всех остальных сервисах.

Готово когда

  • Системная роль «Администратор» имеет оба permissions в БД test VPS
  • GET /auth/me для admin@erp.local содержит marketing.read и marketing.write в permissions[]