diff --git a/PARR.DAL/Migrations/20230914064130_TblStatusTemplate.Designer.cs b/PARR.DAL/Migrations/20230915001323_TblStatusTemplate.Designer.cs similarity index 99% rename from PARR.DAL/Migrations/20230914064130_TblStatusTemplate.Designer.cs rename to PARR.DAL/Migrations/20230915001323_TblStatusTemplate.Designer.cs index ead8ac95..c319385c 100644 --- a/PARR.DAL/Migrations/20230914064130_TblStatusTemplate.Designer.cs +++ b/PARR.DAL/Migrations/20230915001323_TblStatusTemplate.Designer.cs @@ -12,7 +12,7 @@ using PARR.DAL.Context; namespace PARR.DAL.Migrations { [DbContext(typeof(DataContext))] - [Migration("20230914064130_TblStatusTemplate")] + [Migration("20230915001323_TblStatusTemplate")] partial class TblStatusTemplate { /// diff --git a/PARR.DAL/Migrations/20230914064130_TblStatusTemplate.cs b/PARR.DAL/Migrations/20230915001323_TblStatusTemplate.cs similarity index 100% rename from PARR.DAL/Migrations/20230914064130_TblStatusTemplate.cs rename to PARR.DAL/Migrations/20230915001323_TblStatusTemplate.cs diff --git a/PARR.DAL/Models/Template.cs b/PARR.DAL/Models/Template.cs index c0daf485..dde32902 100644 --- a/PARR.DAL/Models/Template.cs +++ b/PARR.DAL/Models/Template.cs @@ -32,7 +32,7 @@ namespace PARR.DAL.Models public int StatusCode { get; set; } [ForeignKey(nameof(StatusCode))] - public StatusTemplate StatusTemplate { get; set; } = new StatusTemplate(); + public StatusTemplate? StatusTemplate { get; set; } //public required string Status { get; set; } diff --git a/PARR.EsppTemplateSync/Services/Manager.cs b/PARR.EsppTemplateSync/Services/Manager.cs index b314435f..96fdc594 100644 --- a/PARR.EsppTemplateSync/Services/Manager.cs +++ b/PARR.EsppTemplateSync/Services/Manager.cs @@ -51,7 +51,7 @@ namespace PARR.EsppTemplateSync.Services return isSuccess; } - //TODO: !!! тут метод называет чек, но он же исохраняет. По идее надо чтобы чек че то вернул, а исходя из этого дургой метод сохранит или ченить изменит + //TODO: !!! тут метод называет чек, но он же и сохраняет. По идее надо чтобы чек че то вернул, а исходя из этого дургой метод сохранит или ченить изменит // и опять же, saccess всегда true получается??? или это норм. await CheckChangesAsync(template); } @@ -67,11 +67,13 @@ namespace PARR.EsppTemplateSync.Services using (var scope = serviceProvider.CreateScope()) { var services = scope.ServiceProvider; + var templateService = services.GetService(); if (templateService == null) { - return; + throw new Exception($"Не найден сервис: {nameof(ITemplateService)}"); + // return; } var template = await templateService.GetTemplateByNameAsync(esppTemplate.Name); @@ -79,17 +81,19 @@ namespace PARR.EsppTemplateSync.Services //TODO деактивируем и видимо ещё что-то нужно if (template == null) { - //создает запись-шаблон из ЕСПП в ПАРР. Возможно избыточно так как эталон в ПАРР - //esppTemplate.Status="Deactivating"; - //esppTemplate.isActive = false; + // создает запись-шаблон из ЕСПП в ПАРР. Возможно избыточно так как эталон в ПАРР + ////esppTemplate.StatusCode = "Deactivating"; + ////--- + //esppTemplate.StatusCode = (int)StatusTemplateEnum.Ok; + //esppTemplate.IsActive = false; //if (!await templateService.CreateAsync(esppTemplate) || !await templateService.CommitAsync()) //{ // logger.LogError($"Не удалось создать запись Template {esppTemplate.Name}({esppTemplate.ShortDescription})"); //} //else // logger.LogInformation($"----- Создана запись Template {esppTemplate.Name}({esppTemplate.ShortDescription}) -----"); + //--- logger.LogWarning($"----- Найден шаблон ЕСПП незарегистрированный в ПАРР {esppTemplate.Name}({esppTemplate.ShortDescription}) -----"); - } else { @@ -111,9 +115,7 @@ namespace PARR.EsppTemplateSync.Services if (parrValue == null || esppValue == null) continue; - if (parrValue!.ToString()!.ToLower() != - esppValue!.ToString()!.ToLower() - ) + if (parrValue!.ToString()!.ToLower() != esppValue!.ToString()!.ToLower()) { isChanged = true; break; @@ -139,6 +141,7 @@ namespace PARR.EsppTemplateSync.Services { template.DateModified = DateTimeOffset.UtcNow; template.StatusCode = (int)StatusTemplateEnum.Ok; + if (!await templateService.CommitAsync()) logger.LogInformation($"Шаблон в ЕСПП соответствует шаблону в ПАРР {esppTemplate.Name}({esppTemplate.ShortDescription}). Установлен статус {StatusTemplateEnum.Ok}"); } diff --git a/PARR.EsppTemplateSync/Services/ParserService.cs b/PARR.EsppTemplateSync/Services/ParserService.cs index 745be2bd..9c315a13 100644 --- a/PARR.EsppTemplateSync/Services/ParserService.cs +++ b/PARR.EsppTemplateSync/Services/ParserService.cs @@ -1,5 +1,7 @@ using Microsoft.Extensions.Logging; +using PARR.DAL.Contracts; using PARR.DAL.Models; +using PARR.DAL.Services.Interfaces; using System.Globalization; namespace PARR.EsppTemplateSync.Services @@ -76,7 +78,7 @@ namespace PARR.EsppTemplateSync.Services Work = work, Worker = worker, //Status = "Checking" - StatusCode = 0 + StatusCode = (int)StatusTemplateEnum.Ok }; //bool isSuccess = true;