Fix RabbitMQ запись в БД. Репо перенастроен на harbor

This commit is contained in:
Mikhail Trubnikov
2023-09-04 12:17:50 +10:00
parent af21530d01
commit bd73c77027
14 changed files with 127 additions and 107 deletions

View File

@@ -1,6 +1,5 @@
using Microsoft.Extensions.DependencyInjection;
using Microsoft.Extensions.Logging;
using PARR.DAL.Context;
using PARR.DAL.Models;
using PARR.DAL.Services.Interfaces;
@@ -11,25 +10,18 @@ namespace PARR.EsppTemplateSync.Services
private readonly ILogger<Manager> logger;
private readonly IServiceProvider serviceProvider;
private readonly IParserService parserService;
// private readonly ITemplateService templateService;
public Manager(
ILogger<Manager> logger,
IServiceProvider serviceProvider,
IParserService parserService//,
// ITemplateService templateService
IParserService parserService
)
{
this.logger = logger;
this.serviceProvider = serviceProvider;
this.parserService = parserService;
// this.templateService = templateService;
//using var scope = serviceProvider.CreateScope();
//var services = scope.ServiceProvider;
//var templateService = services.GetService<ITemplateService>();
}
public Task<bool> ManageFileAsync(string path)
{
throw new NotImplementedException();
@@ -37,18 +29,40 @@ namespace PARR.EsppTemplateSync.Services
public async Task<bool> ManageStringAsync(string str)
{
bool isSuccess = true;
//TOD if (str == null || str.Length <= 2)
////TODO: if (str == null || str.Length <= 2)
// тут обязательно нужна проверка, если str не того формата, возникает exception в ParseStringAsync
var template = await parserService.ParseStringAsync(str);
////TODO: а если template==null???
await CheckChangesAsync(template);
//todo: only true?????
return isSuccess;
}
private async Task CheckChangesAsync(Template esppTemplate)
{
// --- test ---
using (var scope = serviceProvider.CreateScope())
{
var services = scope.ServiceProvider;
var templateService = services.GetService<ITemplateService>();
if (templateService == null)
{
return;
}
var resCreate = await templateService.CreateAsync(esppTemplate);
var resCommit = await templateService.CommitAsync();
}
// === end test ===
//if (!await templateService.CreateAsync(esppTemplate) || !await templateService.CommitAsync())
//{
// logger.LogError($"Не удалось создать запись Template {esppTemplate.EK}({esppTemplate.ShortDescription})");
@@ -68,27 +82,27 @@ namespace PARR.EsppTemplateSync.Services
// -----------------
using (var scope = serviceProvider.CreateScope())
{
var services = scope.ServiceProvider;
var templateService = services.GetService<ITemplateService>();
//using (var scope = serviceProvider.CreateScope())
//{
// var services = scope.ServiceProvider;
// var templateService = services.GetService<ITemplateService>();
if (templateService == null)
return;
// if (templateService == null)
// return;
var template = await templateService.GetTemplateByNameAsync(esppTemplate.EK);
if (template == null)
{
esppTemplate.Status = "New";
logger.LogInformation($"В ЕСПП активирован неизвестной шаблон: {esppTemplate.EK} секунд. краткое описание: {esppTemplate.ShortDescription}");
if (!await templateService.CreateAsync(esppTemplate) || !await templateService.CommitAsync())
{
logger.LogError($"Не удалось создать запись Template {esppTemplate.EK}({esppTemplate.ShortDescription})");
}
else
logger.LogInformation($"----- Создана запись Template {esppTemplate.EK}({esppTemplate.ShortDescription}) -----");
}
}
// var template = await templateService.GetTemplateByNameAsync(esppTemplate.EK);
// if (template == null)
// {
// esppTemplate.Status = "New";
// logger.LogInformation($"В ЕСПП активирован неизвестной шаблон: {esppTemplate.EK} секунд. краткое описание: {esppTemplate.ShortDescription}");
// if (!await templateService.CreateAsync(esppTemplate) || !await templateService.CommitAsync())
// {
// logger.LogError($"Не удалось создать запись Template {esppTemplate.EK}({esppTemplate.ShortDescription})");
// }
// else
// logger.LogInformation($"----- Создана запись Template {esppTemplate.EK}({esppTemplate.ShortDescription}) -----");
// }
//}
}
}