30 lines
3.5 KiB
Markdown
30 lines
3.5 KiB
Markdown
# Слой `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
|
|
неприменим, т.к. требует наличия тестов.
|