179 Commits

Author SHA1 Message Date
aep
15c6402ad3 Merge pull request 'AURORA-1832: aware-даты этапов форм и проектов (часовой пояс)' (#228) from feat/208-aurora-1832-phase-dates-tz into test 2026-11-01 09:43:46 +03:00
aep
f1b4f6d306 Merge pull request 'AURORA-1848: тяжёлые GET — готовый JSON из Postgres без pydantic-модели на строку (A)' (#239) from feat/233-aurora-1848-sheet-json-no-pydantic into test 2026-11-01 09:42:06 +03:00
aep
dc82239770 Merge pull request 'AURORA-1845: кэш user/формы на время WS-соединения' (#238) from feat/237-aurora-1845-ws-connection-cache into test 2026-11-01 09:41:43 +03:00
Andrey Epifancev
604e277371 perf(api): отчёты и сводные проектов отдают готовый JSON из Postgres
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-28 21:24:14 +04:00
Andrey Epifancev
ca7160124a perf(api): GET сводов 1 и 2 отдают готовый JSON из Postgres
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-28 21:16:36 +04:00
Andrey Epifancev
d8dba2f7be perf(api): GET листа отдаёт готовый JSON из Postgres без SheetResponse на строку
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-28 21:12:09 +04:00
Andrey Epifancev
7094fe839f perf(api): хелпер ответа из готовых JSON-строк и SQL-выражение строки
Добавлены list_json_response (обёртка BaseListResponse из готовых строк),
ROW_COLUMNS, row_json_select и fetch_row_texts для тяжёлых GET (AURORA-1848).

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-28 21:07:40 +04:00
Andrey Epifancev
1a3d25afce perf(ws): кэш пользователя и доступа к форме на время соединения листа формы
AURORA-1845. process() больше не читает user_service.get / bf_service.get на
каждое сообщение: результат кэшируется в ConnectionCache (TTL 30 с, только
положительные результаты).

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-28 20:17:56 +04:00
Andrey Epifancev
bc89789026 fix(stages): нормализовать aware-даты этапов к поясу оргединицы
asyncpg не принимает aware-datetime для CAST AS TIMESTAMP WITHOUT TIME ZONE (400).
Даты переводятся в пояс оргединицы и становятся naive, SQL приписывает тот же offset.
timezone_from_offset вынесен в src/core/timezones.py, добавлен to_org_local_naive.
Aware-дата при NULL utc_offset оргединицы даёт 422.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-28 18:13:13 +04:00
Andrey Epifancev
2dc9b4df03 fix(users): выходные схемы пользователя без входных ограничений (/users/me 500 на .local)
UserInDB наследует новую UserReadBase (email/username/full_name без
валидации формата). Вход (UserBase/UserCreate/UserUpdate) не менялся.

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-28 18:11:06 +04:00
669e352980 indent-export: отсупы в экспорте по глубине вложенности 2026-10-21 15:46:08 +03:00
1463b3ad8b export-hierarchy: иерархия expense-item при выгрузке 2026-10-21 11:44:24 +03:00
088c72a03e export-year-fix: пофиксил год в колонках при экспорте 2026-10-19 15:04:32 +03:00
172b343c69 export-optimize-refresh: очередь загрузки при экспорте 2026-09-30 20:40:21 +03:00
d6da54ecf4 form3-expense: добавил новые статьи в форму 3, возможность удаления задач 2026-09-25 14:20:04 +03:00
7cb8072ff4 delete-sattelite-rows: нельзя удалить строку из сателитов в ахр 2026-09-24 13:19:31 +03:00
adfc2dda81 form3-pages: новая разметка третьей формы, сводные отчеты по третьей форме на бэке 2026-09-24 12:28:27 +03:00
4f0cee323c form1-sub_sub-fix: колонка название доступна для этапов формы 3 2026-09-22 12:52:51 +03:00
11e496d13c Данные из сателитныхх листов в АХР 2026-09-18 14:50:19 +03:00
96f550caed fixes-form: добавил новые статьи 2026-09-16 15:40:35 +03:00
5f887e4261 phase-template-edit: редактирование шаблонов этапов 2026-09-11 16:40:10 +03:00
0328e290e0 fixes: фикс неверной фильтрации project_reports по годам 2026-09-11 11:20:18 +03:00
4c31eab244 vsp-choice-fix: можно добавить выбор всп в этап 2026-09-09 13:47:16 +03:00
fc63ebc44e project-filters-fix: список org_unit в фильтре проектов with-reports 2026-09-08 11:58:25 +03:00
b498588dbe org-unit-limits: пагинация орг юнитов опциональна 2026-09-03 14:46:15 +03:00
a26125b439 Merge pull request 'tasks-filter: фильтры для задач форм 1 2 4 и обратная сортировка' (#143) from tasks-filters into test
Reviewed-on: #143
2026-09-02 12:31:15 +03:00
b34f1f7cad tasks-filter: фильтры для задач форм 1 2 4 и обратная сортировка 2026-09-02 12:30:14 +03:00
ce34655166 insert-new-row: ельзя вставить строку вне своего этапа, оставются ссп и рф при смене роли 2026-09-02 09:35:54 +03:00
46aaae1423 svod-roles: своды доступны всем по их ссп или рф 2026-09-01 13:48:25 +03:00
bf99a47eb8 new-role-fix: выбор ссп для дуррс фикс 2026-09-01 11:37:02 +03:00
c7d566086e new-role-fix: фикс зависимостей для новой роли 2026-09-01 10:28:18 +03:00
209e1a5fe7 phase-edit-fix: добавил право на редактирование justification в форме 4 2026-08-31 16:54:19 +03:00
d4ca6486c1 new-role: Исполнитель ДУРРС 2026-08-31 12:24:06 +03:00
46642ceb2d remove-programs: обновление и удаление програм и проектов четвертой формы 2026-08-28 17:42:12 +03:00
96ffe2da0b direction-stage-fix: в ручках этапов приходит direction 2026-08-28 10:39:51 +03:00
fdc03457d0 Merge pull request 'backslash-fix: убрал бэкслешевые ошибки' (#129) from backslash-fix into test
Reviewed-on: #129
2026-08-27 17:05:35 +03:00
28c3296828 backslash-fix: убрал бэкслешевые ошибки 2026-08-27 17:04:37 +03:00
02b746c5ad Merge pull request 'svod: свод 2' (#128) from svod into test
Reviewed-on: #128
2026-08-27 17:01:10 +03:00
4708acbd20 svod: свод 2 2026-08-27 16:52:58 +03:00
658bfe6515 Merge pull request 'добавление пагинация для архивных проектов' (#125) from server-side-archived-projects into test
Reviewed-on: #125
2026-08-26 13:59:42 +03:00
PotapovaA
f7dc90e63b добавление пагинация для архивных проектов 2026-08-26 13:52:53 +03:00
d551939e99 Merge pull request 'svod: свод 1' (#123) from svod into test
Reviewed-on: #123
2026-08-26 13:14:29 +03:00
6f6f35c8b1 svod: свод 1 2026-08-26 13:09:54 +03:00
10f975d98f Merge pull request 'projects-filters: offset, limit, status_in фильтры для проектов в ручке with-reports' (#121) from projects-filters into test
Reviewed-on: #121
2026-08-26 09:14:48 +03:00
1789f58581 projects-filters: offset, limit, status_in фильтры для проектов в ручке with-reports 2026-08-25 16:56:17 +03:00
fb37217f76 remove-row-fix: при удалении строки слвместно с другим пользователем больше не обрывается коннект 2026-08-25 16:17:51 +03:00
80ef16bd02 computed-fix: добавил поле carryover к кварталам проектов 2026-08-21 17:15:08 +03:00
6aa258d5e3 meta-form-3: возвращаем метаданные по столбцам для формы 3 2026-08-21 11:20:09 +03:00
9095cad992 project-back-fix: экпорт проектов, нельзя ставить отрицательные числа в полях проектов, создание года только на следующий год 2026-08-20 21:27:08 +03:00
4e8be39df1 tech-num-fix: поправил формирование технического номера проекта, исправил шаблоны для формы 4, поправил получение стадий у проектов 2026-08-19 17:31:58 +03:00