Игнорируемые поля при сравнении Template в ЕСПП и ПАРР вынесены в настройки
This commit is contained in:
@@ -1,8 +1,10 @@
|
||||
using Microsoft.Extensions.DependencyInjection;
|
||||
using Microsoft.Extensions.Logging;
|
||||
using PARR.BLL.Settings;
|
||||
using PARR.DAL.Contracts;
|
||||
using PARR.DAL.Models;
|
||||
using PARR.DAL.Services.Interfaces;
|
||||
using PARR.EsppTemplateSync.Settings;
|
||||
|
||||
namespace PARR.EsppTemplateSync.Services
|
||||
{
|
||||
@@ -11,16 +13,19 @@ namespace PARR.EsppTemplateSync.Services
|
||||
private readonly ILogger<Manager> logger;
|
||||
private readonly IServiceProvider serviceProvider;
|
||||
private readonly IParserService parserService;
|
||||
private readonly GlobalSettings globalSettings;
|
||||
|
||||
public Manager(
|
||||
ILogger<Manager> logger,
|
||||
IServiceProvider serviceProvider,
|
||||
IParserService parserService
|
||||
IParserService parserService,
|
||||
GlobalSettings globalSettings
|
||||
)
|
||||
{
|
||||
this.logger = logger;
|
||||
this.serviceProvider = serviceProvider;
|
||||
this.parserService = parserService;
|
||||
this.globalSettings = globalSettings;
|
||||
}
|
||||
|
||||
public Task<bool> ManageFileAsync(string path)
|
||||
@@ -98,17 +103,19 @@ namespace PARR.EsppTemplateSync.Services
|
||||
else
|
||||
{
|
||||
var isChanged = false;
|
||||
var ignoreTemplateFieldsList = globalSettings.IgnoreTemplateFields?.Split(",").ToList().Select(t => t.Trim().ToLower());
|
||||
|
||||
foreach (var prop in template.GetType().GetProperties())
|
||||
{
|
||||
if (prop == null) continue;
|
||||
|
||||
if (prop.Name == "Id" ||
|
||||
prop.Name == "Status" ||
|
||||
prop.Name == "DateCreated" ||
|
||||
prop.Name == "DateModified" ||
|
||||
prop.Name == "StatusCode"
|
||||
) continue;
|
||||
if (ignoreTemplateFieldsList != null && ignoreTemplateFieldsList.Contains(prop.Name.Trim().ToLower())) continue;
|
||||
//if (prop.Name == "Id" ||
|
||||
// prop.Name == "Status" ||
|
||||
// prop.Name == "DateCreated" ||
|
||||
// prop.Name == "DateModified" ||
|
||||
// prop.Name == "StatusCode"
|
||||
// ) continue;
|
||||
|
||||
var parrValue = template.GetType().GetProperty(prop.Name)?.GetValue(template, null);
|
||||
var esppValue = esppTemplate.GetType().GetProperty(prop.Name)?.GetValue(esppTemplate, null);
|
||||
|
||||
@@ -5,6 +5,7 @@
|
||||
public MqSettings? MqSettings { get; set; }
|
||||
|
||||
public StorageSettings? StorageSettings { get; set; }
|
||||
public string? IgnoreTemplateFields { get; set; }
|
||||
}
|
||||
|
||||
internal class MqSettings
|
||||
|
||||
Reference in New Issue
Block a user