Commit Graph

65 Commits

Author SHA1 Message Date
Mikhail Kuznetsov
fb9578fec0 feat(templateMatcher): В синхронизацию неиспользуемых шаблонов добавлена метрика времени выполнения 2026-07-03 14:01:56 +10:00
Mikhail Kuznetsov
9c27f81fe8 feat(templateMatcher): Приоритет автоконтроля JobGroup>Job при создании/переиспользовании шаблона 2026-07-03 11:59:46 +10:00
Mikhail Kuznetsov
1affa34b07 fix(core, api, templateMatcher, nextRun, templateDestributor, jobAutoControl): Исправление using после предыдущего рафакторинга 2026-07-03 11:25:39 +10:00
Mikhail Kuznetsov
3c9e03adbb refactor(dal,api,templateMatcher,templateGenerator,templateActivator): Немного порядка в namespaceах 2026-07-03 11:17:48 +10:00
Mikhail Trubnikov
108eb05853 feat(dal,domain): Таблицы для JobGroup фильтров. 2026-06-15 16:56:23 +10:00
Mikhail Kuznetsov
a438f18480 refactor(templateMatcher): Переход на Pipeline-архитектуру для SimpleSync и GroupedSync.
- SimpleTemplateSynchronizer и GroupedTemplateSynchronizer переведены на паттерн Pipeline с разделением на Read/Write этапы
- Выделены контракты этапов (ISimpleSyncStage, IGroupedSyncStage) и контексты (SimpleSyncContext, GroupedSyncContext)
- Read-этапы безопасны для тестов (не пишут в БД/MQ), Write-этапы изолированы через отдельные интерфейсы
- Добавлено [Perf]-логирование каждого этапа с метриками времени выполнения
- Логи приведены к человекочитаемому формату 'Имя' (ID) для Job, JobGroup и Unit
- Устранено дублирование данных в контекстах (FilteredUnits перезаписывается, TemplateGroups строго типизирован)
- Константы неиспользуемых шаблонов вынесены в UnusedTemplateConstants
- Структура проекта реорганизована: SimpleSync, GroupedSync, Implementations, Interfaces
2026-06-11 15:09:46 +10:00
Mikhail Kuznetsov
a64ab59de1 feat(templateMatcher): Для синхронизации негруппированных работ добавлены метрики для мониторинга основных этапов. 2026-06-10 12:08:07 +10:00
Mikhail Kuznetsov
535e87ec21 refactor(unitFilterService): Этапы фильтрации вынесены в отдельные классы 2026-06-09 17:46:43 +10:00
Mikhail Kuznetsov
51bb383d06 feat(templateMatcher): Убран хардкод РАБОЧАЯ_ГР_ОТВ_ЗА_ЭК при формировании шаблонов; добавлен метод для поиска аттрибутов ЭК по значению Code. 2026-05-28 16:54:51 +10:00
Mikhail Kuznetsov
ac363ff7fa fix(templateMatcher): Устранено лишнее обновление шаблонов из-за нестабильной сортировки юнитов 2026-05-21 10:46:40 +10:00
Mikhail Kuznetsov
6fc2fc22ac fix(api): Исправлена ошибка асинхронной валидации FluentValidation
- удалён устаревший пакет FluentValidation.AspNetCore, вызывавший конфликт версий (NU1605)
- реализован глобальный фильтр AsyncValidationFilter для поддержки MustAsync-правил
2026-05-21 10:21:00 +10:00
Mikhail Kuznetsov
513e5f869a fix(templateMatcher): Исправление ошибок в именах шаблонов и рефакторинг синхронизации
- Устранена ошибка, когда при переиспользовании шаблона для шорткодов передавался ЭК "КОМПЛЕКСЫ-[ЗО]" вместо целевого ЭК шаблона.
- Проведен небольшой рефакторинг общих процессов синхронизации различных типов групп работ.
2026-05-20 17:59:06 +10:00
Mikhail Trubnikov
75e791bd8c feat(all): Обновление до netCore 9.0 2026-05-19 11:43:05 +10:00
Mikhail Kuznetsov
3f3ab8617d feat(templateMatcher): Отключены промежуточные статусы синхронизации неиспользуемых шаблонов и добавлен словарь выборки ЭК КОМПЛЕКСЫ-[ЗО] для снижения нагрузки на базу данных 2026-05-18 12:29:55 +10:00
Mikhail Kuznetsov
90e6352117 feat(templateMatcher): Рефакторинг, основной метод синхронизации GroupedTemplateSynchronizer разбит на отдельные классы; Неиспользуемые шаблоны теперь привязываются к ЭК КОСМПЛЕКСЫ-[ЗО]. 2026-05-14 16:47:27 +10:00
Mikhail Trubnikov
e5900be547 feat(dal, domain): Для таблице UnitInTemplates добавлена связь с UnitFieldValues. В таблице Templates убраны значения по умолчанию для поле JobId, UnitId. 2026-05-12 16:34:31 +10:00
Mikhail Kuznetsov
0cc7b0dfbb feat(templateMatcher): Добавлена проверка принадлежности связанного ЭК к КИИ, который имеет больший приоритет. 2026-05-12 11:24:17 +10:00
Mikhail Kuznetsov
1233d9b4fe fix(core, templateMatcher): Исправлен метод ApplyRelationshipFiltersToUnitsAsync - неверно фильтровались ЭК при одновременно включенном IsFullMatch и IsInverse, теперь учитываются все связи; В GroupedTemplateSynchronizer изменен порядок индексации шаблонов. 2026-05-06 13:54:41 +10:00
Mikhail Trubnikov
a89605d02a feat(dal,core): Перенесены оставшиеся объекты из dal в core. 2026-05-04 11:55:07 +10:00
Mikhail Trubnikov
eb78dfd6a8 feat: Из dal перенесены все модели в Domain. Из dal переименованы service в repository, вынесены в Core. 2026-04-30 10:35:31 +10:00
Mikhail Kuznetsov
4cc1269554 feat(dal): Результат работы ShortcodesService весь записывается в Redis 2026-04-21 14:36:24 +10:00
Mikhail Kuznetsov
be1599aa25 feat(dal): Добавлены 2 новых шорткода %ИД% и %СВЯЗЬ:ИМЯ АТРИБУТА% 2026-04-20 12:02:46 +10:00
Mikhail Trubnikov
188ebc20a0 feat: Перенесены внешние сервисы в Infrastructure. Удалены лишние проекты. 2026-04-14 16:27:27 +10:00
Mikhail Trubnikov
e892aa12d3 feat: Сервисы и модели RabbitMq разнесены согласно архитектуры 2026-04-14 12:01:49 +10:00
Mikhail Trubnikov
da83aff19c feat: создана структура проекта, core, domain, infrastructure. Перенесены enum и task согласно архитектуры 2026-04-13 16:58:30 +10:00
Mikhail Kuznetsov
7c7c56eb93 feat(templateMatcher): Рефакторинг 2026-03-27 17:36:16 +10:00
Mikhail Kuznetsov
01cb312ea5 feat(dal): В TemplateService.ReserveUnusedTemplateAsync больше не передаем JobId при захвате неиспользуемого шаблона. 2026-03-27 15:02:36 +10:00
Mikhail Kuznetsov
3800cac97a feat(templateUpdater): Добавлена предварительная запись в базу данных обновляемой информации шаблона для корректного расчета даты и времени следующего запуска в группированных работах 2026-03-27 11:58:03 +10:00
Mikhail Kuznetsov
73d7f4b200 feat(templateMatcher): Убрана избыточная проверка связанных юнитов, теперь это выполняется в UnitFilter. Добавлена группировка по рабочей группе или ответственному за ЭК 2026-03-26 18:08:13 +10:00
Mikhail Trubnikov
c718a4b406 feat(bll, dal, templateGenertartor, templateMatcher, templateUpdater): интеграция с INextRunServiceV2 2026-02-26 14:42:53 +10:00
Mikhail Kuznetsov
114f7ec083 feat(dal): в методе получения Id неиспользуемого шаблона добавлена проверка на Ok статус, чтобы не давать роботу ошибочные задания. 2026-02-20 15:57:51 +10:00
Mikhail Kuznetsov
7dd40d1701 feat(esppOrderLoader): изменено журналирвоание 2026-02-09 12:00:46 +10:00
Mikhail Kuznetsov
5c5d30900e feat(templateMatcher): в процесс синхронизации неиспользованных шаблонов добавлены шаблоны со статусом Error, чтобы поведение было схожим. 2026-01-26 15:13:32 +10:00
Mikhail Kuznetsov
53b6f037b8 fix(templateMatcher): при каждой синхронизации неиспользуемых шаблонов шорткод %ТИКТАК% генерировал новое имя шаблона, что создавало лишнюю роботу роботам. 2026-01-26 10:13:42 +10:00
Mikhail Kuznetsov
b3de8bfe4e fix(templateMatcher): ошибка компиляции из-за отсутствующего ; в конце строки 2026-01-23 11:47:19 +10:00
Mikhail Kuznetsov
23e6b9f308 feat(dal, templateMatcher): небольшое улучшение быстродействия синхронизации, ShortcodesService добавлен проброс unitInTemplates для корректного подстановки шорткода %МАКС:...% 2026-01-23 11:29:42 +10:00
Mikhail Trubnikov
1845154b26 feat(templateGenerator, templateMatcher, dal): INextRunService прикручен к Matcher + Syncer. 2026-01-22 12:06:57 +10:00
Mikhail Kuznetsov
555b946daa feat(dal, templateMatcher): UnitFilterService теперь возвращает модель Dto а не только Id 2026-01-21 18:25:09 +10:00
Mikhail Kuznetsov
01f51f7893 fix(templateMatcher): Добавлена сортировка связанных ЭК при сравнении группированных шаблонов. 2026-01-20 14:23:02 +10:00
Mikhail Kuznetsov
4d9d06e671 fix(templateMatcher): добавлена деактивация шаблонов если после устранения конфликтов связанный эк остался без ВРТ. 2026-01-19 18:27:04 +10:00
Mikhail Kuznetsov
91fa14f3f2 feat(templateMatcher): добавлена обработка работы с неимпользуемыми шаблонами. 2026-01-17 09:32:34 +10:00
Mikhail Kuznetsov
5eb0ab81b9 feat(tempateMatcher): в матчеры добавлено взаимодействие с MatchingStatusService, для отображения статуса операции 2026-01-16 19:45:38 +10:00
Mikhail Kuznetsov
d91877453a feat(dal, templateMatcher): изменена логика работы Shortcodes сервиса в сторону самостоятельной дозагрузки данных из БД, в Template сервис добавлен метод атомарного резервирования шаблона для TemplateMatcher 2026-01-16 18:26:06 +10:00
Mikhail Kuznetsov
d89347787e fix(templateMatcher): при синхронизация добавлена логика актуализации имени шаблона. 2026-01-14 10:59:17 +10:00
Mikhail Kuznetsov
0925c97e6b feat(dal,templateMatcher): добавлена сортировка связанных юнитов группированного типа групп работ 2026-01-12 15:28:28 +10:00
Mikhail Kuznetsov
ec53638c58 feat(dal,templateMatcher): уточнена логика UnitFilterService, в TemplateMatcher добавлены методы синхронизации и обновлению существующих шаблонов по группе 2025-12-30 14:27:59 +10:00
Mikhail Kuznetsov
e8db55400c feat(templateMatcher): refactoring 2025-12-26 21:47:53 +10:00
Mikhail Kuznetsov
2af8ed26d8 feat(tempateMatcher,aihitLoader,dal): В UnitFilter добавлен Cache; в данные по ПТК добавлены аттрибуты "Холодный резерв" и "ДОПОЛНИТЕЛЬНАЯ_ИНФОРМАЦИЯ"; в синхронизаторах устанавливается неактуальная работа при деактивации 2025-12-25 21:16:20 +10:00
Mikhail Kuznetsov
dbb7dee4b4 fix(templateMatcher): Добавлена проверка на уже деактивированный статус шаблона. 2025-12-25 16:05:55 +10:00
Mikhail Kuznetsov
8e01b0410c fix(templateMatcher): при получении Job добавлен Tnk для правильного формирования имени шаблона 2025-12-24 15:12:22 +10:00