EsppTemplateSync настройка префикса имени шаблонов берётся из BLL

This commit is contained in:
Mikhail Kuznetsov
2023-09-29 15:19:05 +10:00
parent 8164e9e8ba
commit 917c745b79
5 changed files with 58 additions and 23 deletions

View File

@@ -19,10 +19,21 @@ namespace PARR.EsppTemplateSync
services.AddSingleton(globalSettings); services.AddSingleton(globalSettings);
services.AddAutoMapper(AppDomain.CurrentDomain.GetAssemblies()); services.AddAutoMapper(AppDomain.CurrentDomain.GetAssemblies());
//services.AddTransient<ITemplateSyncer, TemplateFileSyncer>();
services.AddTransient<ITemplateSyncer, TemplateMQSyncer>(); services.AddTransient<ITemplateSyncer, TemplateMQSyncer>();
services.AddTransient<IParserService, ParserService>(); services.AddTransient<IParserService, ParserService>();
services.AddTransient<IManager, Manager>(); services.AddTransient<IManager, Manager>();
} }
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);
}
} }
} }

View File

@@ -1,4 +1,5 @@
using Microsoft.Extensions.Logging; using Microsoft.Extensions.Logging;
using PARR.DAL.Contracts;
using PARR.EsppTemplateSync.Domain; using PARR.EsppTemplateSync.Domain;
using PARR.EsppTemplateSync.Settings; using PARR.EsppTemplateSync.Settings;
using System.Globalization; using System.Globalization;
@@ -9,14 +10,17 @@ namespace PARR.EsppTemplateSync.Services
{ {
private readonly ILogger<ParserService> logger; private readonly ILogger<ParserService> logger;
private readonly GlobalSettings globalSettings; private readonly GlobalSettings globalSettings;
private readonly SettingsFromDb settingsFromDb;
public ParserService( public ParserService(
ILogger<ParserService> logger, ILogger<ParserService> logger,
GlobalSettings globalSettings GlobalSettings globalSettings,
SettingsFromDb settingsFromDb
) )
{ {
this.logger = logger; this.logger = logger;
this.globalSettings = globalSettings; this.globalSettings = globalSettings;
this.settingsFromDb = settingsFromDb;
} }
public async Task<bool> ParseFileAsync(string path) public async Task<bool> ParseFileAsync(string path)
{ {
@@ -41,11 +45,11 @@ namespace PARR.EsppTemplateSync.Services
var name = splittedContent[0].Trim(); var name = splittedContent[0].Trim();
CultureInfo currentCulture = Thread.CurrentThread.CurrentCulture; CultureInfo currentCulture = Thread.CurrentThread.CurrentCulture;
if (globalSettings.TemplatePrefix.Trim().Length > 0 if (!string.IsNullOrEmpty(settingsFromDb.TemplatePrefixName)
&& !name.StartsWith(globalSettings.TemplatePrefix, true, currentCulture) && !name.StartsWith(settingsFromDb.TemplatePrefixName, true, currentCulture)
) )
{ {
logger.LogWarning($"Имя шаблона не соответствует обязательному префиксу({globalSettings.TemplatePrefix}). Шаблон {name} игнорирован"); logger.LogWarning($"Имя шаблона не соответствует обязательному префиксу({settingsFromDb.TemplatePrefixName}). Шаблон {name} игнорирован");
return null; return null;
} }

View File

@@ -9,7 +9,6 @@ namespace PARR.EsppTemplateSync.Settings
public StorageSettings? StorageSettings { get; set; } public StorageSettings? StorageSettings { get; set; }
public List<string>? IgnoreTemplateFields { get; set; } public List<string>? IgnoreTemplateFields { get; set; }
public string ParsingSeparator { get; set; } = "<|>"; public string ParsingSeparator { get; set; } = "<|>";
public string TemplatePrefix { get; set; }
} }
internal class MqSettings : IMqSettings internal class MqSettings : IMqSettings

View File

@@ -3,22 +3,44 @@ using PARR.EsppTemplateSync;
using PARR.EsppTemplateSyncWorker; using PARR.EsppTemplateSyncWorker;
using Serilog; using Serilog;
IHost host = Host.CreateDefaultBuilder(args) var builder = Host.CreateApplicationBuilder();
.ConfigureServices((hostContext, services) =>
{
services.InstallEsppTemplateSyncServices(hostContext.Configuration);
services.AddHostedService<Worker>(); builder.Services.AddLogging(config =>
}) {
.UseSerilog((hostContext, services, config) => config.ClearProviders();
{
if (hostContext.HostingEnvironment.IsProduction())
config.WriteTo.Console(new EcsTextFormatter());
else
config.WriteTo.Console();
config.ReadFrom.Configuration(hostContext.Configuration); var logger = new LoggerConfiguration();
})
.Build();
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<Worker>();
// })
// .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<Worker>();
var host = builder.Build();
host.Run(); host.Run();

View File

@@ -45,7 +45,6 @@
"CheckIntervalSeconds": 30 "CheckIntervalSeconds": 30
}, },
"IgnoreTemplateFields": [ "Id", "Status", "Name", "DateCreated", "DateModified", "StatusCode" ], "IgnoreTemplateFields": [ "Id", "Status", "Name", "DateCreated", "DateModified", "StatusCode" ],
"ParsingSeparator": "<|>", "ParsingSeparator": "<|>"
"TemplatePrefix": "ПАРР-ДВС-ПТК__"
} }
} }