diff --git a/PARR.EsppTemplateSync/EsppTemplateSyncInstaller.cs b/PARR.EsppTemplateSync/EsppTemplateSyncInstaller.cs index 0adbbf08..8e598819 100644 --- a/PARR.EsppTemplateSync/EsppTemplateSyncInstaller.cs +++ b/PARR.EsppTemplateSync/EsppTemplateSyncInstaller.cs @@ -19,10 +19,21 @@ namespace PARR.EsppTemplateSync services.AddSingleton(globalSettings); services.AddAutoMapper(AppDomain.CurrentDomain.GetAssemblies()); - //services.AddTransient(); services.AddTransient(); services.AddTransient(); services.AddTransient(); } + + public static IConfigurationBuilder AddEsppTemplateConfigurations(this IConfigurationBuilder builder, IServiceCollection services) + { + builder.AddDalConfigurations(services); + + return builder; + } + + public static void AddEsppTemplateSettings(this IServiceCollection services, IConfiguration configuration) + { + services.AddDallSettings(configuration); + } } } diff --git a/PARR.EsppTemplateSync/Services/ParserService.cs b/PARR.EsppTemplateSync/Services/ParserService.cs index 2ae6286b..fc306217 100644 --- a/PARR.EsppTemplateSync/Services/ParserService.cs +++ b/PARR.EsppTemplateSync/Services/ParserService.cs @@ -1,4 +1,5 @@ using Microsoft.Extensions.Logging; +using PARR.DAL.Contracts; using PARR.EsppTemplateSync.Domain; using PARR.EsppTemplateSync.Settings; using System.Globalization; @@ -9,14 +10,17 @@ namespace PARR.EsppTemplateSync.Services { private readonly ILogger logger; private readonly GlobalSettings globalSettings; + private readonly SettingsFromDb settingsFromDb; public ParserService( ILogger logger, - GlobalSettings globalSettings + GlobalSettings globalSettings, + SettingsFromDb settingsFromDb ) { this.logger = logger; this.globalSettings = globalSettings; + this.settingsFromDb = settingsFromDb; } public async Task ParseFileAsync(string path) { @@ -41,11 +45,11 @@ namespace PARR.EsppTemplateSync.Services var name = splittedContent[0].Trim(); CultureInfo currentCulture = Thread.CurrentThread.CurrentCulture; - if (globalSettings.TemplatePrefix.Trim().Length > 0 - && !name.StartsWith(globalSettings.TemplatePrefix, true, currentCulture) + if (!string.IsNullOrEmpty(settingsFromDb.TemplatePrefixName) + && !name.StartsWith(settingsFromDb.TemplatePrefixName, true, currentCulture) ) { - logger.LogWarning($"Имя шаблона не соответствует обязательному префиксу({globalSettings.TemplatePrefix}). Шаблон {name} игнорирован"); + logger.LogWarning($"Имя шаблона не соответствует обязательному префиксу({settingsFromDb.TemplatePrefixName}). Шаблон {name} игнорирован"); return null; } diff --git a/PARR.EsppTemplateSync/Settings/GlobalSettings.cs b/PARR.EsppTemplateSync/Settings/GlobalSettings.cs index 03725fed..7a6fd582 100644 --- a/PARR.EsppTemplateSync/Settings/GlobalSettings.cs +++ b/PARR.EsppTemplateSync/Settings/GlobalSettings.cs @@ -9,7 +9,6 @@ namespace PARR.EsppTemplateSync.Settings public StorageSettings? StorageSettings { get; set; } public List? IgnoreTemplateFields { get; set; } public string ParsingSeparator { get; set; } = "<|>"; - public string TemplatePrefix { get; set; } } internal class MqSettings : IMqSettings diff --git a/PARR.EsppTemplateSyncWorker/Program.cs b/PARR.EsppTemplateSyncWorker/Program.cs index 5f071e17..7f428e72 100644 --- a/PARR.EsppTemplateSyncWorker/Program.cs +++ b/PARR.EsppTemplateSyncWorker/Program.cs @@ -3,22 +3,44 @@ using PARR.EsppTemplateSync; using PARR.EsppTemplateSyncWorker; using Serilog; -IHost host = Host.CreateDefaultBuilder(args) - .ConfigureServices((hostContext, services) => - { - services.InstallEsppTemplateSyncServices(hostContext.Configuration); +var builder = Host.CreateApplicationBuilder(); - services.AddHostedService(); - }) - .UseSerilog((hostContext, services, config) => - { - if (hostContext.HostingEnvironment.IsProduction()) - config.WriteTo.Console(new EcsTextFormatter()); - else - config.WriteTo.Console(); +builder.Services.AddLogging(config => +{ + config.ClearProviders(); - config.ReadFrom.Configuration(hostContext.Configuration); - }) - .Build(); + var logger = new LoggerConfiguration(); + if (builder.Environment.IsProduction()) + logger.WriteTo.Console(new EcsTextFormatter()); + else + logger.WriteTo.Console(); + + logger.ReadFrom.Configuration(builder.Configuration); + + config.AddSerilog(logger.CreateLogger()); +}); +//IHost host = Host.CreateDefaultBuilder(args) +// .ConfigureServices((hostContext, services) => +// { +// services.InstallEsppTemplateSyncServices(hostContext.Configuration); + +// services.AddHostedService(); +// }) +// .UseSerilog((hostContext, services, config) => +// { +// if (hostContext.HostingEnvironment.IsProduction()) +// config.WriteTo.Console(new EcsTextFormatter()); +// else +// config.WriteTo.Console(); + +// config.ReadFrom.Configuration(hostContext.Configuration); +// }) +// .Build(); +builder.Services.InstallEsppTemplateSyncServices(builder.Configuration); +builder.Configuration.AddEsppTemplateConfigurations(builder.Services); +builder.Services.AddEsppTemplateSettings(builder.Configuration); +builder.Services.AddHostedService(); + +var host = builder.Build(); host.Run(); diff --git a/PARR.EsppTemplateSyncWorker/appsettings.json b/PARR.EsppTemplateSyncWorker/appsettings.json index 7f332692..8fc66da7 100644 --- a/PARR.EsppTemplateSyncWorker/appsettings.json +++ b/PARR.EsppTemplateSyncWorker/appsettings.json @@ -45,7 +45,6 @@ "CheckIntervalSeconds": 30 }, "IgnoreTemplateFields": [ "Id", "Status", "Name", "DateCreated", "DateModified", "StatusCode" ], - "ParsingSeparator": "<|>", - "TemplatePrefix": "ПАРР-ДВС-ПТК__" + "ParsingSeparator": "<|>" } }