diff --git a/PARR.AIHIT/AIHIT/Syncher.cs b/PARR.AIHIT/AIHIT/Syncher.cs index c9dfc794..4c87dcdc 100644 --- a/PARR.AIHIT/AIHIT/Syncher.cs +++ b/PARR.AIHIT/AIHIT/Syncher.cs @@ -63,7 +63,7 @@ namespace PARR.AIHIT var respAreas = await settingService.Get() .Where(ra => ra.Group == AIHTITSettings.RespAreaGroupName) .ToListAsync(); -//#if !DEBUG +#if !DEBUG //Запускаем хранимую процедуру в АИХ ИТ и складываем в таблицу RawDataEKs, предварительно почистив старые данные foreach (var respArea in respAreas) { @@ -109,7 +109,7 @@ namespace PARR.AIHIT logger.LogDebug($"-= Конец синхронизации данных об ЭК зоны ответственности {respArea.Name} =-"); } -//#endif +#endif //Разбираем сырые данные //Получаем интересующие статусы ЭК @@ -123,7 +123,7 @@ namespace PARR.AIHIT //Берём только активные ЭК var eks = await rawDataEKService.Get() - .Where(e => e.IsActive == "t" && (e.Status != null && statusList.Contains(e.Status.Trim()))) + .Where(e => e.IsActive == "t" && (e.Status != null && statusList.Contains(e.Status.Trim())) && e.EKFindCode.StartsWith("ВРТ-")) .ToListAsync(); foreach (var ek in eks) @@ -210,17 +210,20 @@ namespace PARR.AIHIT foreach (var app in host.ApplicationsInHosts) { - var appToRemove = hostApplications.FirstOrDefault(a => a.Id == app.Id); + var appToRemove = hostApplications.FirstOrDefault(a => a.Id == app.ApplicationId); if (appToRemove == null) { //todo remove appToRemove - var obj = await appInHostService.Get().FirstOrDefaultAsync(t => t.ApplicationId == app.Id && t.HostId == host.Id); + var obj = await appInHostService.Get().FirstOrDefaultAsync(t => t.ApplicationId == app.ApplicationId && t.HostId == host.Id); if (obj != null) { logger.LogInformation($"Host: {host.Ek}({host.IP}), удаление неактуального приложения Application {app.Application?.Name}"); appInHostService.Delete(obj); + if (!await hostService.CommitAsync()) + logger.LogError($"Не удалось удалить Application {app.Application?.Name} узла {host.Ek}({host.IP})"); + isUpdated = true; } } @@ -239,7 +242,7 @@ namespace PARR.AIHIT private async Task> GetAndFillApplicationsAsync(RawDataEK vm) { - logger.LogDebug($"Начало парсинга данных о программном обеспечении(СП, БД, ОС) из АИХ ИТ"); + //logger.LogDebug($"Начало парсинга данных о программном обеспечении(СП, БД, ОС) из АИХ ИТ"); var applications = new List(); if (vm.APPType != null) @@ -273,7 +276,7 @@ namespace PARR.AIHIT } } - logger.LogDebug($"Конец парсинга данных о программном обеспечении(СП, БД, ОС) из АИХ ИТ"); + //logger.LogDebug($"Конец парсинга данных о программном обеспечении(СП, БД, ОС) из АИХ ИТ"); return applications; }