feat(reports): stabilize on-demand generation, live presence and 1C fallback
This commit is contained in:
@@ -2,6 +2,24 @@
|
||||
|
||||
Все важные изменения проекта документируются в этом файле.
|
||||
|
||||
## [3.4.0] — 2026-09-25
|
||||
|
||||
### ✨ Добавлено (Added)
|
||||
- **Оперативная On-Demand генерация отчетов из сайдбара:**
|
||||
- Мгновенная сборка книги «Ежедневная сводка» по последнему зафиксированному в SQLite срезу СКУД (без ожидания внешнего опроса Орион).
|
||||
- Строгое разграничение временных рамок отчетов: «Сводка» формируется на текущую смену, а «Детальный» и «Упрощенный» отчеты — строго за прошедшую смену (ВЧЕРА / прошлая пятница) по итоговому срезу `Y`.
|
||||
- **Фоновая полудневная синхронизация 1С (cron):**
|
||||
- Интеграция вызова `copy_1c_files_from_share()` и опроса кадровых отсутствий из базы ЗУП (`ACCOUNT-01`) в цикл получасовых срезов.
|
||||
|
||||
### 🛡️ Исправлено (Fixed)
|
||||
- **Ошибка 404 при скачивании отчетов (`download_report_direct`):**
|
||||
- Добавлен рекурсивный поиск файлов в подпапках `output/reports/{ГОД}/{МЕСЯЦ}/` и декодирование процент-кодированных кириллических имен из URL.
|
||||
- **Ошибки 500 и 0 по штату 1С при создании сводки:**
|
||||
- Реализован каскадный fallback: если файл штата на текущий день еще не выложен на шару, данные штата берутся из последнего сохраненного среза `zup_staff` в SQLite (устранено ложное попадание всех сотрудников в «Нет в ЗУП»).
|
||||
- Исправлены `NameError` импортов (`load_best_snapshot_for_date`, `load_1c_data_smart`).
|
||||
- **Сбои инспекции срезов (`OperationalError: no such column: hoz_organ`):**
|
||||
- Переход на динамический `SELECT *` в роутере инспекции срезов и расчет реального времени в здании до момента фиксации снапшота.
|
||||
|
||||
## [3.3.0] — 2026-09-24
|
||||
|
||||
### ✨ Добавлено (Added)
|
||||
|
||||
Reference in New Issue
Block a user