first commit
This commit is contained in:
80
05-data-model-notes.md
Normal file
80
05-data-model-notes.md
Normal file
@@ -0,0 +1,80 @@
|
||||
# Data Model Notes
|
||||
|
||||
Это краткая карта ключевых сущностей. Полный состав — в `internal/domain/*`.
|
||||
|
||||
## Пользователь и менеджер
|
||||
|
||||
1. `users` (`domain.User`)
|
||||
Базовый профиль пользователя, язык, ник, игровые поля.
|
||||
2. `manager_accounts` (`domain.ManagerAccount`)
|
||||
Связка user <-> manager, enabled, глобальный `account_type`.
|
||||
3. `manager_user_settings` (`domain.ManagerUserSetting`)
|
||||
Персональные настройки для miniapp.
|
||||
|
||||
## Группы и callback
|
||||
|
||||
1. `manager_groups` (`domain.ManagerGroup`)
|
||||
Привязанные VK группы.
|
||||
2. `manager_group_tokens` (`domain.ManagerGroupToken`)
|
||||
Токены групп (зашифрованные).
|
||||
3. `manager_callback_endpoints` (`domain.ManagerCallbackEndpoint`)
|
||||
Параметры callback endpoint.
|
||||
4. `manager_callback_events` (`domain.ManagerCallbackEvent`)
|
||||
Лог входящих callback событий.
|
||||
5. `manager_group_settings` (`domain.ManagerGroupSetting`)
|
||||
Настройки групп в key/value.
|
||||
|
||||
## Чаты и чат-менеджер
|
||||
|
||||
1. `chats` (`domain.Chat`)
|
||||
Чаты, `peer_id`, `chat_uid`.
|
||||
2. `chat_settings` (`domain.ChatSetting`)
|
||||
Основные настройки чата.
|
||||
3. `chat_members`, `member_roles`, `roles`
|
||||
Участники и RBAC.
|
||||
4. `permission_roles`, `permission_users`
|
||||
Права команд.
|
||||
5. `sanctions`, `immunities`
|
||||
Бан/мут/пред/иммунитеты.
|
||||
6. `event_rules`, `prevent_rules`, `timer_tasks`
|
||||
Автоматизация.
|
||||
7. `audit_actions`, `command_logs`
|
||||
Журналы действий и команд.
|
||||
8. `statistics_message_daily`
|
||||
Агрегированная статистика.
|
||||
|
||||
## Аддоны
|
||||
|
||||
1. `chat_addons` (`domain.ChatAddon`)
|
||||
Установленные в чат аддоны.
|
||||
2. `chat_addon_db` / `chat_addon_shared_db`
|
||||
KV-хранилища для аддонов (локальное/shared).
|
||||
3. `chat_addon_invoke_logs`
|
||||
Логи вызовов аддонов.
|
||||
|
||||
## Каталог аддонов
|
||||
|
||||
1. `manager_addon_catalog` (`domain.ManagerAddonCatalog`)
|
||||
Карточка аддона каталога (метаданные, код, статус модерации).
|
||||
2. `manager_addon_catalog_versions` (`domain.ManagerAddonCatalogVersion`)
|
||||
Снимки версий.
|
||||
3. `manager_addon_moderation_logs` (`domain.ManagerAddonModerationLog`)
|
||||
Логи переходов статуса.
|
||||
4. `chat_addon_catalog_installs` (`domain.ChatAddonCatalogInstall`)
|
||||
Фиксация установок в чаты.
|
||||
|
||||
## Account type (глобальный уровень)
|
||||
|
||||
`manager_accounts.account_type`:
|
||||
|
||||
1. `10` regular
|
||||
2. `20` enhanced
|
||||
3. `30` maximum
|
||||
4. `40` moderator
|
||||
5. `50` administrator
|
||||
6. `60` developer
|
||||
|
||||
Применение:
|
||||
|
||||
1. доступ к модерации каталога;
|
||||
2. staff-уведомления по аддонам (уровень `> 30`).
|
||||
Reference in New Issue
Block a user