Сметы
Раздел Сметы — план работ и материалов и сверка с фактом (тратами).

Список смет
Клик по названию или двойной клик по строке открывает смету ниже (позиции и сверка). В списке остаётся только Удалить.
На строке: план, факт, статус (например основная).
Новая смета
| Поле | Обязательно | Правила |
|---|---|---|
| Название | да | 1–200 символов |
| Описание | нет | — |
| Сделать основной для сверки | нет | По умолчанию включено → статус активной основной сметы |
Загрузка сметы из Excel / CSV
| Поле | Обязательно | Правила |
|---|---|---|
| Название сметы | нет | Если пусто — из имени файла |
| Файл | да | .xlsx, .xls, .csv, .tsv |
| Сделать основной | нет | По умолчанию да |
| Создавать категории из файла | нет | По умолчанию да |
| Создавать комнаты из файла | нет | По умолчанию нет |
Ожидаемые колонки: Название, Количество, Ед., Цена, Сумма, Категория, Комната, Тип.
Позиция сметы
| Поле | Обязательно | Правила / связь |
|---|---|---|
| Название | да | 1–250 символов |
| Количество | нет | ≥ 0, по умолчанию 1 |
| Ед. | нет | Текст |
| Цена | нет | ≥ 0 |
| Сумма | нет | Если пусто — количество × цена |
| Тип | нет | Материал / работа / другое |
| Категория | нет | Справочник проекта |
| Комната | нет | Справочник проекта |
| Заметки | нет | — |
Клик по названию или двойной клик по строке открывает карточку просмотра: все поля формы плюс факт и число привязанных трат. В таблице позиций только Удалить. Сверху карточки — Редактировать. После сохранения просмотр открывается снова.
Сверка с тратами
- Выбор позиции сметы для траты сохраняет привязку сразу.
- Снять привязку очищает связь.
- Автопривязка трат — массовое сопоставление непривязанных трат по названию.
- Спроектировать бюджет — обновляет бюджет проекта, категорий и комнат по суммам сметы (и может создать недостающие категории).
Связи
Смета
└── Позиции ──► Категория, Комната
▲
└── Траты (estimate_item_id)
Удаление позиции сметы не удаляет траты — только снимает привязку.
