# ER-диаграмма: auth schema (Kit.Auth.Db) ```mermaid 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`)