MT.Checks/DB/chk/tables.md

73 lines
3.6 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# Слой `chk` — таблицы
Слой проверок организаций. Источник требований: `DB/task.md`.
## Список таблиц
| Таблица | Тип | Набор функций | Функции | Комментарий |
|---|---|---|---|---|
| `chk_type` | системный справочник | chk_type_select | SELECT | функции в `functions/`, статус DEV/CODE (functions.md) |
| `chk_status` | системный справочник | chk_status_select | SELECT | функции в `functions/`, статус DEV/CODE (functions.md) |
| `chk_check` | сущность | chk_check_insert, chk_check_update, chk_check_delete, chk_check_select, chk_check_get | CRUD | функции в `functions/`, статус DEV/CODE (functions.md) |
## chk_type — типы проверок
Справочник типов проверок. Файл DDL: `tables/chk_type.sql`.
| Поле | Тип | Ограничения | Описание |
|---|---|---|---|
| `id` | int | PK | идентификатор типа |
| `name` | text | NOT NULL | наименование типа |
Значения:
| id | name |
|---|---|
| 1 | Запрос изменений (дельты) ЕГРЮЛ |
| 2 | Запрос изменений (дельты) ЕГРИП |
| 3 | Отправка запроса в ЕГРЮЛ |
| 4 | Отправка запроса в ЕГРИП |
| 5 | Актуализация организации ОТ |
| 6 | Актуализация организации СОУТ |
## chk_status — статусы проверок
Справочник статусов проверок. Файл DDL: `tables/chk_status.sql`.
| Поле | Тип | Ограничения | Описание |
|---|---|---|---|
| `id` | int | PK | идентификатор статуса |
| `name` | text | NOT NULL | наименование статуса |
Значения:
| id | name |
|---|---|
| 1 | Запрос отправлен |
| 2 | Ответ получен |
| 3 | Ответ успешно обработан |
| 4 | Ошибка при обработке |
## chk_check — проверки
Основная таблица проверок. Файл DDL: `tables/chk_check.sql`.
| Поле | Тип | Ограничения | Описание |
|---|---|---|---|
| `id` | serial | PK | идентификатор проверки |
| `check_date` | date | NOT NULL | день (дата) проверки |
| `chk_type_id` | int | NOT NULL, FK → `chk.chk_type(id)` | тип проверки |
| `chk_status_id` | int | NOT NULL, FK → `chk.chk_status(id)` | статус проверки |
| `smev_message_id` | text | — | идентификатор сообщения СМЭВ |
| `rr_organization_id` | text | — | идентификатор организации РР |
| `params` | jsonb | — | параметры: результаты проверок (например, сколько организаций получено из дельты ЕГРЮЛ и сколько сформировано запросов); состав не фиксирован |
| `parent_check_id` | int | nullable, FK → `chk.chk_check(id)` | идентификатор родительской проверки; в задаче помечен «не уверен что нужно» — включён nullable |
Индексы (FK в PostgreSQL автоматически не индексируются):
| Индекс | Колонки |
|---|---|
| `idx_chk_check_type` | `chk_type_id` |
| `idx_chk_check_status` | `chk_status_id` |
| `idx_chk_check_parent` | `parent_check_id` |