From 4dc89ffd2d13439d0d33bcbed53cd7d1ab055f49 Mon Sep 17 00:00:00 2001 From: Mikhail Kuznetsov Date: Thu, 14 May 2026 18:06:19 +1000 Subject: [PATCH] =?UTF-8?q?fix(templateGenerator):=20=D0=98=D1=81=D0=BF?= =?UTF-8?q?=D1=80=D0=B0=D0=B2=D0=BB=D0=B5=D0=BD=D0=B0=20=D0=BE=D1=88=D0=B8?= =?UTF-8?q?=D0=B1=D0=BA=D0=B0=20=D0=BF=D1=80=D0=B5=D0=BE=D0=B1=D1=80=D0=B0?= =?UTF-8?q?=D0=B7=D0=BE=D0=B2=D0=B0=D0=BD=D0=B8=D1=8F=20=D1=81=D0=BE=D0=BE?= =?UTF-8?q?=D0=B1=D1=89=D0=B5=D0=BD=D0=B8=D0=B9=20=D0=B8=D0=B7=20RabbitMq?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Services/IValidatorService.cs | 2 +- .../TemplateGenerator.cs | 17 +++++------------ 2 files changed, 6 insertions(+), 13 deletions(-) diff --git a/PARR.TemplateGeneratorWorker/Services/IValidatorService.cs b/PARR.TemplateGeneratorWorker/Services/IValidatorService.cs index 3d70937b..5209f054 100644 --- a/PARR.TemplateGeneratorWorker/Services/IValidatorService.cs +++ b/PARR.TemplateGeneratorWorker/Services/IValidatorService.cs @@ -2,6 +2,6 @@ { public interface IValidatorService { - Task IsValidAsync(Guid jobId, Guid unitId, int? index, List? unitsInTemplate = null); + Task IsValidAsync(Guid jobId, Guid unitId, int? index, List<(Guid UnitId, Guid UnitFieldValueId)>? unitsInTemplate = null); } } diff --git a/PARR.TemplateGeneratorWorker/TemplateGenerator.cs b/PARR.TemplateGeneratorWorker/TemplateGenerator.cs index 9f71acb6..50226b2a 100644 --- a/PARR.TemplateGeneratorWorker/TemplateGenerator.cs +++ b/PARR.TemplateGeneratorWorker/TemplateGenerator.cs @@ -23,9 +23,6 @@ namespace PARR.TemplateGeneratorWorker private readonly ITemplateRepository templateService; private readonly INextRunService nextRunService; - //private readonly INextRunService nextRunService; - - //private readonly IEsppScheduleTransformService esppScheduleTransformService; public TemplateGenerator( ILogger logger, @@ -35,8 +32,6 @@ namespace PARR.TemplateGeneratorWorker IShortcodesService shortcodesService, ITemplateRepository templateService, INextRunService nextRunService - //INextRunService nextRunService - //IEsppScheduleTransformService esppScheduleTransformService ) { this.logger = logger; @@ -46,10 +41,9 @@ namespace PARR.TemplateGeneratorWorker this.shortcodesService = shortcodesService; this.templateService = templateService; this.nextRunService = nextRunService; - //this.nextRunService = nextRunService; - //this.esppScheduleTransformService = esppScheduleTransformService; } + public async Task GenerateTemplateAsync(string msg) { logger.LogInformation($"Получили запрос: {msg}"); @@ -63,7 +57,8 @@ namespace PARR.TemplateGeneratorWorker } // Проверяем всё - if (!await validatorService.IsValidAsync(query.JobId, query.UnitId, query.Index, query.UnitsInTemplate)) + var unitsInTemplate = query.UnitsInTemplate.Select(s => (s.UnitId, s.UnitFieldValueId)).ToList(); + if (!await validatorService.IsValidAsync(query.JobId, query.UnitId, query.Index, unitsInTemplate)) { logger.LogError($"Параметры запроса не прошли валидацию: JobId={query.JobId}, UnitId={query.UnitId}, Index={query.Index}, UnitsInTemplateCount={query.UnitsInTemplate?.Count ?? 0}"); return; @@ -98,15 +93,13 @@ namespace PARR.TemplateGeneratorWorker Index = query.Index, Job = job, Unit = null, // ShortcodesService сам догрузит при необходимости - UnitsInTemplate = query.UnitsInTemplate?.Select(unitId => new UnitsInTemplate { UnitId = unitId }).ToList() ?? new List() + UnitsInTemplate = query.UnitsInTemplate?.Select(uit => new UnitsInTemplate { UnitId = uit.UnitId, UnitFieldValueId = uit.UnitFieldValueId }).ToList() ?? new List() }; var templateName = await shortcodesService.ApplyShortcodesAsync(job.TemplateNameMask!, tempTemplateForShortcodes); var responseArea = await shortcodesService.ApplyShortcodesAsync(job.ResponseAreaMask, tempTemplateForShortcodes); var workGroup = await shortcodesService.ApplyShortcodesAsync(job.WorkGroupMask, tempTemplateForShortcodes); - //var nextRun = await esppScheduleTransformService.GetNextDateAsync(job.GroupId, job.Group!.ReferenceDate); - //var nextRun = await nextRunService.GetNextRunForNewTemplateAsync(job.GroupId, responseArea); var nextRun = await nextRunService.GetNextRunForNewTemplateAsync(job.GroupId, workGroup, responseArea); if (!nextRun.HasValue) @@ -128,7 +121,7 @@ namespace PARR.TemplateGeneratorWorker InitiatorComment = query.HistoryInitiator?.InitiatorComment, InitiatorParrComponentId = query.HistoryInitiator?.InitiatorParrComponentId, Index = query.Index, - UnitsInTemplate = query.UnitsInTemplate?.Select(unitId => new UnitsInTemplate { UnitId = unitId }).ToList() ?? new List() + UnitsInTemplate = query.UnitsInTemplate?.Select(uit => new UnitsInTemplate { UnitId = uit.UnitId, UnitFieldValueId = uit.UnitFieldValueId }).ToList() ?? new List() }; if (await templateService.CreateAsync(template) && await templateService.CommitAsync(new HistoryInitiator { InitiatorComment = "Запрос на генерацию с тестового шаблона", InitiatorParrComponentId = ParrComponentsEnum.TemplateTaskGenerator }))