2.4 KiB
2.4 KiB
ER-диаграмма: auth schema (Kit.Auth.Db)
erDiagram
%% Таблица пользователей
auth.user {
int id PK "serial"
text outer_user_id "идентификатор во внешней системе"
text login "логин (NOT NULL)"
text password "хеш PBKDF2"
text password_temp "DEPRECATED: временный пароль"
text first_name "имя"
text middle_name "отчество"
text last_name "фамилия"
text email "электронная почта"
text phone "телефон"
bool sex "пол"
datetime date_created "дата создания"
bool is_blocked "флаг блокировки"
bool is_deleted "мягкое удаление"
datetime date_deleted "дата удаления"
}
%% LEGACY: Кабинет
auth.cabinet {
int id PK "serial"
text title "название кабинета"
text organization_inn "ИНН организации"
text organization_name "название организации"
datetime date_created "дата создания"
bool is_deleted "мягкое удаление"
datetime date_deleted "дата удаления"
}
%% LEGACY: Связь пользователь ↔ кабинет
auth.user_cabinet {
int user_id FK "→ auth.user.id"
int cabinet_id FK "→ auth.cabinet.id"
}
%% Связи
auth.user ||--o{ auth.user_cabinet : "имеет кабинеты"
auth.cabinet ||--o{ auth.user_cabinet : "принадлежит пользователям"
Описание связей
| Связь | Тип | Описание |
|---|---|---|
auth.user → auth.user_cabinet |
1:M | Пользователь может иметь несколько кабинетов |
auth.cabinet → auth.user_cabinet |
1:M | Кабинет может принадлежать нескольким пользователям |
Примечания
auth.user_cabinet— LEGACY-таблица без PK и FK (совместимость со старым кодом)auth.cabinet— LEGACY-таблица, будет убрана в будущем- Состояние аутентификации и сессии вынесены в
Kit.Auth.Token.Db(схемаtoken)