feat(templateMatcher): Убрана избыточная проверка связанных юнитов, теперь это выполняется в UnitFilter. Добавлена группировка по рабочей группе или ответственному за ЭК

This commit is contained in:
Mikhail Kuznetsov
2026-03-26 18:08:13 +10:00
parent 4864b9b343
commit 73d7f4b200
7 changed files with 368 additions and 429 deletions

View File

@@ -5,6 +5,19 @@ namespace PARR.TemplateMatcher.Services.Interfaces
{
public interface ITemplateReuser
{
/// <summary>
/// Пытается переиспользовать неиспользуемый шаблон для указанной работы и ЭК.
/// При резервировании шаблона для правильного расчета NextRun Id работы
/// и ЭК устанавливается при захвате.
/// </summary>
/// <param name="jobId">Id работы.</param>
/// <param name="unitId">Id ЭК.</param>
/// <param name="initiator">Данные инициатора операции.</param>
/// <param name="maxAttempts">Максимальное количество попыток (по умолчанию 3).</param>
/// <returns>
/// Зарезервированный шаблон или <see langword="null"/>,
/// если не удалось получить шаблон после всех попыток.
/// </returns>
Task<Template?> TryReuseOneUnusedTemplateAsync(
Guid jobId,
Guid unitId,