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.AddAutoMapper(AppDomain.CurrentDomain.GetAssemblies());
//services.AddTransient<ITemplateSyncer, TemplateFileSyncer>();
services.AddTransient<ITemplateSyncer, TemplateMQSyncer>();
services.AddTransient<IParserService, ParserService>();
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 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<ParserService> logger;
private readonly GlobalSettings globalSettings;
private readonly SettingsFromDb settingsFromDb;
public ParserService(
ILogger<ParserService> logger,
GlobalSettings globalSettings
GlobalSettings globalSettings,
SettingsFromDb settingsFromDb
)
{
this.logger = logger;
this.globalSettings = globalSettings;
this.settingsFromDb = settingsFromDb;
}
public async Task<bool> 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;
}

View File

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

View File

@@ -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<Worker>();
})
.UseSerilog((hostContext, services, config) =>
builder.Services.AddLogging(config =>
{
if (hostContext.HostingEnvironment.IsProduction())
config.WriteTo.Console(new EcsTextFormatter());
config.ClearProviders();
var logger = new LoggerConfiguration();
if (builder.Environment.IsProduction())
logger.WriteTo.Console(new EcsTextFormatter());
else
config.WriteTo.Console();
logger.WriteTo.Console();
config.ReadFrom.Configuration(hostContext.Configuration);
})
.Build();
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();

View File

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