Разделы модуля
Обзор — сводка по заявкам и договорам (KPI: всего, на согласовании, активные, истекающие; доходные vs расходные).
Заявки на договор — инициация договора и его согласование до заключения.
Реестр — список договоров с фильтрами по статусу, типу и направлению; учитывает юрлицо в шапке («Все ЮЛ»).
Согласование — отдельные инбоксы для заявок и для договоров.
Канонические URL — `/contracts/*`. Карточка договора: `/contracts/[id]`. Legacy `/procurement/contracts/[id]` редиректит на канон (bookmarks OK).
Правильный порядок работы
В системе договор не появляется «из воздуха» — он рождается из согласованной заявки на договор.
- Создаётся заявка на договор (инициатор описывает потребность).
- Заявка согласуется по маршруту.
- Из согласованной заявки создаётся сам договор.
- Договор исполняется: график платежей, факт оплат, бюджет/факт.
Бюджет и факт по договору
В карточке договора блок «Бюджет/факт» показывает плановую сумму, оплачено (по привязанным заявкам) и остаток.
Факт растёт по мере проведения платежей с привязкой к этому договору.
Экспорт в PDF и CSV
Карточка каждого договора — кнопка «Скачать PDF» экспортирует юридические реквизиты, стороны, суммы, статус и историю согласования одним файлом.
Реестр договоров и реестр заявок на договор — кнопка «Экспорт CSV» выгружает список с применёнными фильтрами (статус, тип, направление, поиск).
- Реестр: `/contracts/registry` → отфильтруйте (например, Активные + Расходные) → «Экспорт CSV».
- Карточка: `/contracts/[id]` → «Скачать PDF» в правом верхнем углу.
- Аналогично для заявок на договор: `/contracts/requests` → «Экспорт CSV» с фильтрами, карточка заявки → «Скачать PDF».
