feat(templateGeneratorWorker): добавлена проверка на существование шаблона пришедшего на создание
This commit is contained in:
@@ -38,6 +38,7 @@ namespace PARR.DAL.DomainServices.Implementations
|
||||
.ThenInclude(t => t.FieldFilters)
|
||||
.Include(t => t.UnitFilters)
|
||||
.ThenInclude(t => t.RelationshipFilters)
|
||||
.Include(t => t.Group)
|
||||
.FirstOrDefaultAsync(t => t.Id == jobId);
|
||||
|
||||
if (job == null)
|
||||
@@ -94,6 +95,10 @@ namespace PARR.DAL.DomainServices.Implementations
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if (job.Group?.IsUmbrella == true)
|
||||
query = query.Where(t => t.ChildUnits.Count() >= job.MinValueRelationships && t.ChildUnits.Count() <= job.MaxValueRelationships);
|
||||
|
||||
var newUnits = await query.Select(t => t.Id).ToListAsync();
|
||||
result.AddRange(newUnits);
|
||||
}
|
||||
|
||||
@@ -48,16 +48,28 @@ namespace PARR.TemplateGeneratorWorker
|
||||
if (query == null)
|
||||
return;
|
||||
|
||||
var isTemplateExist = templateService.Get()
|
||||
.AsNoTracking()
|
||||
.Any(t => t.JobId == query.JobId && t.UnitId == query.UnitId);
|
||||
|
||||
if (!await validatorService.IsValidAsync(query.JobId, query.UnitId))
|
||||
{
|
||||
logger.LogError($"Некорректные параметры регламентной работы или Unit {nameof(Job)}: {query.JobId}, {nameof(Unit)}: {query.UnitId}");
|
||||
return;
|
||||
}
|
||||
|
||||
if (isTemplateExist)
|
||||
{
|
||||
logger.LogWarning($"Шаблон с JobId={query.JobId} и UnitId={query.UnitId} уже существует");
|
||||
return;
|
||||
}
|
||||
|
||||
var job = await jobService
|
||||
.Get().AsNoTracking()
|
||||
.FirstOrDefaultAsync(t => t.Id == query.JobId);
|
||||
|
||||
|
||||
|
||||
var templateName = await shortcodesService.ApplyShortcodesAsync(job!.TemplateNameMask!, query.UnitId, query.JobId);
|
||||
|
||||
var template = new Template
|
||||
|
||||
Reference in New Issue
Block a user