feat(dal,templateMatcher): UnitFilterService переписан, теперь при подсчете количества связей для групп работ зонтик учитываются relationshipFilter. В TemplateMatcher добавлено изменение имени Unused шаблонов в конце имени добавляется DateTimeOffset.UtcNow.ToUnixTimeSeconds() для уникальности неиспользуемых шаблонов. Актуализированы unit-тесты
This commit is contained in:
@@ -105,7 +105,7 @@ namespace PARR.TemplateMatcher
|
||||
TemplateId = template.Id,
|
||||
JobId = jobId,
|
||||
UnitId = template.UnitId,
|
||||
Name = template.Name,
|
||||
Name = GetTemplateNameForUnsed(template.Name),
|
||||
IsActiveTemplate = DefaultUnusedTemplateState,
|
||||
IsActiveSchedule = DefaultUnusedScheduleState,
|
||||
LastRun = template.LastRun,
|
||||
@@ -232,6 +232,7 @@ namespace PARR.TemplateMatcher
|
||||
logger.LogInformation("Синхронизация завершена для JobId {JobId}.", jobId);
|
||||
}
|
||||
|
||||
|
||||
public async Task UpdateTemplatesForJob(Guid jobId, HistoryInitiator initiator)
|
||||
{
|
||||
logger.LogDebug("Начало обновления шаблонов для JobId {JobId}", jobId);
|
||||
@@ -271,6 +272,7 @@ namespace PARR.TemplateMatcher
|
||||
targetStatus = TemplateStatusTypeEnum.Unused;
|
||||
targetIsActiveTemplate = DefaultUnusedTemplateState;
|
||||
targetIsActiveSchedule = DefaultUnusedScheduleState;
|
||||
expectedName = GetTemplateNameForUnsed(expectedName);
|
||||
logger.LogInformation("Шаблон {TemplateId} (UnitId {UnitId}) → деактивация.", template.Id, template.UnitId);
|
||||
}
|
||||
|
||||
@@ -403,6 +405,11 @@ namespace PARR.TemplateMatcher
|
||||
return null;
|
||||
}
|
||||
|
||||
private string GetTemplateNameForUnsed(string templateName)
|
||||
{
|
||||
return templateName + "_" + DateTimeOffset.UtcNow.ToUnixTimeSeconds();
|
||||
}
|
||||
|
||||
|
||||
private async Task<Job?> GetJobWithGroupAndAutoControlAsync(Guid jobId)
|
||||
{
|
||||
|
||||
Reference in New Issue
Block a user