# Слой `chk` — функции ## Список функций | Сущность | Функция | Статус | Параметры | Возвращает | Функция | Репозиторий | Комментарий | |---|---|---|---|---|---|---|---| | chk_type | chk_type_select | DEV | — | TABLE — строки справочника | CODE | REQ | код: `functions/chk_type_select.sql`; тесты: `tests/test_chk_type_select.psql`; репозиторий: `MT.Checks/Repository/ChkTypeRepository.cs` | | chk_status | chk_status_select | DEV | — | TABLE — строки справочника | CODE | REQ | код: `functions/chk_status_select.sql`; тесты: `tests/test_chk_status_select.psql`; репозиторий: `MT.Checks/Repository/ChkStatusRepository.cs` | | chk_check | chk_check_insert | DEV | p_check_date, p_chk_type_id, p_chk_status_id, p_smev_message_id, p_rr_organization_id, p_params (JSON), p_parent_check_id | int — id проверки | CODE | REQ | код: `functions/chk_check_insert.sql`; тесты: `tests/test_chk_check_insert.psql`; репозиторий: `MT.Checks/Repository/ChkCheckRepository.cs` | | chk_check | chk_check_update | DEV | p_id + все поля записи | int — число строк (db-m-3) | CODE | REQ | полная запись объекта (db-m-8); код: `functions/chk_check_update.sql`; тесты: `tests/test_chk_check_update.psql` | | chk_check | chk_check_delete | DEV | p_id | int — число строк | CODE | REQ | код: `functions/chk_check_delete.sql`; тесты: `tests/test_chk_check_delete.psql` | | chk_check | chk_check_select | DEV | p_check_date, p_chk_type_id, p_chk_status_id, p_rr_organization_id | TABLE — строки chk_check | CODE | REQ | NULL параметра = фильтр не применяется; код: `functions/chk_check_select.sql`; тесты: `tests/test_chk_check_select.psql` | | chk_check | chk_check_get | DEV | p_id | TABLE — строка chk_check | CODE | REQ | код: `functions/chk_check_get.sql`; тесты: `tests/test_chk_check_get.psql` | Спецификации функций и тест-планы: `func_specs/{функция}.md` (d-db-9). Код функций: `functions/{сущность}_{действие}.sql` (db-func-4, расширение `.sql` — соглашение репозитория). psql-тесты: `tests/test_{сущность}_{действие}.psql` (db-tst), нумерация проверок = строкам таблиц «Тесты» спецификаций. Выполнение тестов — на тестовой базе (db-tst-4): `psql -d <база> -f tests/test_*.psql`. Статусы (d-dev-1, d-dev-2, d-dev-5): `Статус` = `DEV` (реализация начата); колонка «Функция» = `CODE` (код и тесты написаны; `DONE` — после утверждения пользователем); «Репозиторий» = `REQ`. Примечание к колонке «Репозиторий» (2026-09-08, решение пользователя): unit-тесты репозиториев не создаются вовсе; спецификации тестов сохранены как документация ожидаемого поведения — `1-docs/2-core/chk/repository_tests/`. Код репозиториев написан (проект `MT.Checks`); статус `CODE` по d-dev-3 неприменим, т.к. требует наличия тестов.