100 Commits

Author SHA1 Message Date
Mikhail Trubnikov
bdcc858bc5 feat(core, infrastructure): UnitService - массовое получение юнитов 2026-06-01 11:58:08 +10:00
Mikhail Trubnikov
437f996ea8 feat(core): UnitService - работа с кэш 2026-05-29 17:09:36 +10:00
Mikhail Kuznetsov
5ec0e801e2 Merge branch 'dev' of http://gitlab.dvgd.oao.rzd/devptk/parr/parr_api into dev 2026-05-28 16:56:54 +10:00
Mikhail Kuznetsov
51bb383d06 feat(templateMatcher): Убран хардкод РАБОЧАЯ_ГР_ОТВ_ЗА_ЭК при формировании шаблонов; добавлен метод для поиска аттрибутов ЭК по значению Code. 2026-05-28 16:54:51 +10:00
Mikhail Trubnikov
613d4cb4f4 feat(api,core,domain): Ключи для редис 2026-05-28 15:50:14 +10:00
Mikhail Trubnikov
b4946aebd7 Merge branch 'robot-tasks' into dev 2026-05-26 11:53:40 +10:00
Mikhail Trubnikov
2024056871 feat(dal,api): В таблицу истории роботов, добавлено поле RobotId. Обновлены методы в api для ведения истории роботов. 2026-05-26 11:43:15 +10:00
Mikhail Trubnikov
856b273e6b feat(api, core): Доделал атомарный захват задачи роботом. 2026-05-26 11:26:52 +10:00
Mikhail Kuznetsov
f5e9c036f6 refactor(shortcodes): %СВЯЗЬ% теперь возвращает самое популярное значение вместо первого 2026-05-26 10:35:11 +10:00
Mikhail Trubnikov
ab563f88b9 feat(api,core,dal): RobotTasks - вынесение логики в Core, оптимизация взятия задания роботом 2026-05-25 16:59:42 +10:00
Mikhail Kuznetsov
f3183e5f68 feat(core): В ShortcodesService добавлена реализация %ТЕГ% и %ТЕГ_СВЯЗИ% для работы с тегами ЭК
- Реализован %ТЕГ:ПРЕФИКС% для извлечения значения тега текущего юнита по правилу "префикс + двоеточие".
- Реализован %ТЕГ_СВЯЗИ:ПРЕФИКС% для агрегации тегов связанных юнитов (UnitsInTemplate) с выбором самого популярного значения (сортировка по алфавиту при равенстве частоты).
- Добавлены флаги ленивой загрузки UnitTags и UnitsInTemplateTags в ShortcodeDataRequirementsEnum.
- Расширена запись TemplateForShortcode и метод PrepareTemplateDataAsync для пакетной подгрузки тегов из базы данных.
- Зарегистрированы новые хендлеры в DI-контейнере и в методе GetAvailableShortcodesAsync.
2026-05-25 16:35:37 +10:00
Mikhail Trubnikov
146e8f6f9a fix(core): Workload - исправлен метод удаления кэша отчетов 2026-05-25 12:02:36 +10:00
Mikhail Kuznetsov
4b96d1bebe merge to dev 2026-05-20 18:06:38 +10:00
Mikhail Kuznetsov
513e5f869a fix(templateMatcher): Исправление ошибок в именах шаблонов и рефакторинг синхронизации
- Устранена ошибка, когда при переиспользовании шаблона для шорткодов передавался ЭК "КОМПЛЕКСЫ-[ЗО]" вместо целевого ЭК шаблона.
- Проведен небольшой рефакторинг общих процессов синхронизации различных типов групп работ.
2026-05-20 17:59:06 +10:00
Mikhail Trubnikov
61c21e60b6 fix(api, core): Перенес пакеты asp в api 2026-05-20 16:08:45 +10:00
Mikhail Trubnikov
68808e761b feat(api, core, dal, domain): В таблицу Tasks добавлено поле процент выполнения, так же добавлено это поле в response - статус формирования отчета. Создан интерфейс для отслеживания прогресса IProgressAsync. Из сервиса WorkloadService исключен ITaskManagementService. 2026-05-20 14:26:25 +10:00
Mikhail Trubnikov
d8af0253b1 feat(api, domain, core): Глобальные модели ошибок. ConfigureValidator - валидатор контроллеров. GlobalExceptionHandler - глобальный обработчик ошибок в API. 2026-05-19 16:19:55 +10:00
Mikhail Trubnikov
75e791bd8c feat(all): Обновление до netCore 9.0 2026-05-19 11:43:05 +10:00
Mikhail Trubnikov
edc96bda33 Merge branch 'report' into dev 2026-05-19 09:51:51 +10:00
Mikhail Kuznetsov
b267dfe7c5 feat(core): Добавлены помощники по клонированию JobGroup и синхронизации Job в JobGroup по старшему MaxValueRelationships 2026-05-19 09:47:35 +10:00
Mikhail Trubnikov
178d136dba feat(docker, api, core, dal, domain, workloadBuilder): WorkloadBuillder - формирование кэша по интервалу. 2026-05-19 09:45:38 +10:00
Mikhail Trubnikov
e5535857d4 feat(api, core): Workload - статус формирования отчетности. RedisCacheService - получить первую запись из кэш типа Hash. 2026-05-18 16:46:42 +10:00
Mikhail Trubnikov
911e6febcd fix(api): Task - получение статусов задач, доработка отчетов workload 2026-05-15 16:09:49 +10:00
Mikhail Kuznetsov
a015e90fdc feat(core): ShortcodeService в классы реализации шорткодов добавлены требования по загрузке таблиц 2026-05-15 15:11:04 +10:00
Mikhail Kuznetsov
90e6352117 feat(templateMatcher): Рефакторинг, основной метод синхронизации GroupedTemplateSynchronizer разбит на отдельные классы; Неиспользуемые шаблоны теперь привязываются к ЭК КОСМПЛЕКСЫ-[ЗО]. 2026-05-14 16:47:27 +10:00
Mikhail Kuznetsov
f7a74d315a feat(core): Рефакторинг ShortcodesService, реализован паттерн стратегия 2026-05-14 16:31:03 +10:00
Mikhail Trubnikov
87db7c5fd6 fix(core): WorkloadService - исправлен расчет периода дней отчета 2026-05-13 16:37:49 +10:00
Mikhail Trubnikov
97964111c3 Merge branch 'dev' of gitlab.dvgd.oao.rzd:devptk/parr/parr_api into dev 2026-05-12 12:20:02 +10:00
Mikhail Trubnikov
5c1ba5a143 feat(api, core): WorkloadReport - добавлено поле max 2026-05-12 10:41:02 +10:00
Mikhail Kuznetsov
0235fe0028 fix(core,dal): Устранены возможные случаи реализации шорткодов по шаблону с Id 00000000-0000-0000-0000-000000000000 2026-05-07 14:35:11 +10:00
Mikhail Trubnikov
395ef6a0ea feat(core, infrastructure): IRedisCacheService - данные теперь можно архивировать 2026-05-07 12:27:57 +10:00
Mikhail Trubnikov
277bf0caa3 feat(core, api): Workload - Controller для формирования отчетов 2026-05-07 10:33:53 +10:00
Mikhail Trubnikov
eb6036f2c9 feat(core): WorkloadService - реализация логики формирования отчета 2026-05-06 17:00:08 +10:00
Mikhail Kuznetsov
1233d9b4fe fix(core, templateMatcher): Исправлен метод ApplyRelationshipFiltersToUnitsAsync - неверно фильтровались ЭК при одновременно включенном IsFullMatch и IsInverse, теперь учитываются все связи; В GroupedTemplateSynchronizer изменен порядок индексации шаблонов. 2026-05-06 13:54:41 +10:00
Mikhail Trubnikov
7d42a80556 feat(core, dal): WorkloadCacheService - методы для работы с кэшем отчетности workload 2026-05-05 14:52:17 +10:00
Mikhail Trubnikov
a89605d02a feat(dal,core): Перенесены оставшиеся объекты из dal в core. 2026-05-04 11:55:07 +10:00
Mikhail Trubnikov
238244790b feat(core): WorkloadCacheService - логика 2026-04-30 15:10:35 +10:00
Mikhail Trubnikov
eb78dfd6a8 feat: Из dal перенесены все модели в Domain. Из dal переименованы service в repository, вынесены в Core. 2026-04-30 10:35:31 +10:00
Mikhail Trubnikov
7ddc8b1bed feat(core): Заготовка WorkloadCacheService 2026-04-29 14:27:02 +10:00
Mikhail Trubnikov
ee119caf91 feat(taskReconciliation, workloadBuilder): Dockerfile, ci-cd 2026-04-24 09:49:13 +10:00
Mikhail Trubnikov
e8086b3a7d feat(api, Core, TaskReconciliationWorker): Воркер обработки зависших задач. Доработка логики. 2026-04-23 16:08:16 +10:00
Mikhail Trubnikov
7da2265d1c feat(api, Core, Domain, Dal): Для entity моделей, для DateModified создан атрибут ManualControl - отключает автоматическое управление датой. TaskReconciliationService - сервис по управлению задачами в статусах ошибки, зависла. ITaskMqSettingsProvider - провайдер для управления настройками MQ в зависимости от TaskType 2026-04-22 16:13:23 +10:00
Mikhail Trubnikov
001c09edaa feat(dal, core, workloadBuilderWorker): Сервисы по работе с очередями (задачиами). Заготовка WorkloadBuilderWorker 2026-04-21 16:54:39 +10:00
Mikhail Trubnikov
2a6fd7177d feat(core): TaskManagementService - отправка сообщений 2026-04-15 16:48:23 +10:00
Mikhail Trubnikov
50358fd5bd feat: Вынесены настройки из dal 2026-04-14 16:42:15 +10:00
Mikhail Trubnikov
188ebc20a0 feat: Перенесены внешние сервисы в Infrastructure. Удалены лишние проекты. 2026-04-14 16:27:27 +10:00
Mikhail Trubnikov
13dd2815d4 feat: Перенесен IntervalService 2026-04-14 13:49:43 +10:00
Mikhail Trubnikov
e892aa12d3 feat: Сервисы и модели RabbitMq разнесены согласно архитектуры 2026-04-14 12:01:49 +10:00
Mikhail Trubnikov
734c2e3c99 feat: разделение на repository - services 2026-04-14 09:56:31 +10:00
Mikhail Trubnikov
da83aff19c feat: создана структура проекта, core, domain, infrastructure. Перенесены enum и task согласно архитектуры 2026-04-13 16:58:30 +10:00