diff --git a/PARR.TemplateActivator/TemplateActivator.cs b/PARR.TemplateActivator/TemplateActivator.cs index 9b6136de..9fa117b4 100644 --- a/PARR.TemplateActivator/TemplateActivator.cs +++ b/PARR.TemplateActivator/TemplateActivator.cs @@ -73,6 +73,15 @@ internal class TemplateActivator : ITemplateActivator query = query.Where(t => !t.IsActiveTemplate && t.IsActiveSchedule); changes = await UpdateScheduleStateAsync(query, false); break; + case TemplateActivatorActionsEnum.DeactivateSchedulesWithTemplateSyncErrors: + logger.LogInformation($"Получен запрос на деактивацию всех расписаний, у которых шаблоны синхронизированы с ошибкой"); + query = query.Where(t => !t.IsActiveTemplate && + t.RobotConfigurations.Any(t => + t.RobotCode == (int) RobotsEnum.TemplateOrder && + t.RobotStatusCode == (int)RobotStatusEnum.Error) + ); + changes = await UpdateScheduleStateAsync(query, false); + break; default: break; } diff --git a/PARR.TemplateActivator/TemplateActivatorInstaller.cs b/PARR.TemplateActivator/TemplateActivatorInstaller.cs index af3b0426..2186222f 100644 --- a/PARR.TemplateActivator/TemplateActivatorInstaller.cs +++ b/PARR.TemplateActivator/TemplateActivatorInstaller.cs @@ -21,4 +21,16 @@ public static class TemplateActivatorInstaller services.AddTransient(); services.AddTransient(); } + + public static IConfigurationBuilder AddTemplateActivatorConfigurations(this IConfigurationBuilder builder, IServiceCollection services) + { + builder.AddDalConfigurations(services); + + return builder; + } + + public static void AddTemplateActivatorSettings(this IServiceCollection services, IConfiguration configuration) + { + services.AddDallSettings(configuration); + } } diff --git a/PARR.TemplateActivatorWorker/Program.cs b/PARR.TemplateActivatorWorker/Program.cs index bd6bf903..f2702cd2 100644 --- a/PARR.TemplateActivatorWorker/Program.cs +++ b/PARR.TemplateActivatorWorker/Program.cs @@ -22,6 +22,8 @@ builder.Services.AddLogging(config => }); builder.Services.InstallTemplateActivatorSerivces(builder.Configuration); +builder.Configuration.AddTemplateActivatorConfigurations(builder.Services); +builder.Services.AddTemplateActivatorSettings(builder.Configuration); builder.Services.AddHostedService();