Добавлен справочник ResponseArea

This commit is contained in:
Mikhail Kuznetsov
2023-09-28 14:28:10 +10:00
parent 90c500482a
commit 7091e849a4
17 changed files with 3775 additions and 42 deletions

View File

@@ -217,37 +217,45 @@ namespace PARR.AIHIT
var respAreas = await settingService.Get()
.Where(ra => ra.Group == AIHTITSettings.RespAreaGroupName)
.ToListAsync();
#if !DEBUG
//Запускаем хранимую процедуру в АИХ ИТ и складываем в таблицу RawDataEKs, предварительно почистив старые данные
//foreach (var respArea in respAreas)
//{
// var eksFromAIHIT = aihitService.GetEKList(respArea.Value)?.ToList();
foreach (var respArea in respAreas)
{
var eksFromAIHIT = aihitService.GetEKList(respArea.Value)?.ToList();
// if (eksFromAIHIT == null)
// continue;
if (eksFromAIHIT == null)
continue;
// //Удаляем текущие данные по зоне ответственности respArea
// var toDelete = rawDataEKService.Get().Where(rd => rd.ResponseArea == respArea.Value).ToList();
// toDelete.ForEach(d => rawDataEKService.Delete(d));
//Удаляем текущие данные по зоне ответственности respArea
var toDelete = rawDataEKService.Get().Where(rd => rd.ResponseArea == respArea.Value).ToList();
toDelete.ForEach(d => rawDataEKService.Delete(d));
if(!await rawDataEKService.CommitAsync())
{
logger.LogError($"Не удалось создать удалить записи в rawDataEK зоны ответственности {respArea.Name}");
continue;
}
// foreach (var ek in eksFromAIHIT)
// {
// // создаем
// var mappedEK = mapper.Map<RawDataEK>(ek);
foreach (var ek in eksFromAIHIT)
{
// создаем
var mappedEK = mapper.Map<RawDataEK>(ek);
// mappedEK.Id = Guid.NewGuid();
// mappedEK.DateCreated = DateTimeOffset.UtcNow;
// if (!await rawDataEKService.CreateAsync(mappedEK) || !await rawDataEKService.CommitAsync())
// {
// logger.LogError($"Не удалось создать запись rawDataEK {mappedEK.ShortName}({mappedEK.IP})");
// continue;
// }
// else
// logger.LogInformation($"----- Создана запись rawDataEK {mappedEK.ShortName}({mappedEK.IP}) -----");
// }
//}
mappedEK.Id = Guid.NewGuid();
mappedEK.DateCreated = DateTimeOffset.UtcNow;
//if (!await rawDataEKService.CreateAsync(mappedEK) || !await rawDataEKService.CommitAsync())
if (!await rawDataEKService.CreateAsync(mappedEK))
{
logger.LogError($"Не удалось создать запись rawDataEK {mappedEK.ShortName}({mappedEK.IP})");
continue;
}
else
logger.LogInformation($"----- Создана запись rawDataEK {mappedEK.ShortName}({mappedEK.IP}), зона ответственности {respArea.Name} -----");
}
if (await rawDataEKService.CommitAsync())
logger.LogError($"Информация о хостах зоны ответственности {respArea.Name} не записана ");
}
#endif
//Разбираем сырые данные
//Получаем интересующие статусы ЭК
@@ -293,9 +301,9 @@ namespace PARR.AIHIT
{
// обновляем
var isChanged = false;
if (!foundHost.Status!.Equals(mappedHost.Status))
if (!foundHost.EkStatusCode!.Equals(mappedHost.EkStatusCode))
{
foundHost.Status = mappedHost.Status;
foundHost.EkStatusCode = mappedHost.EkStatusCode;
isChanged = true;
}
else if (mappedHost.WorkGroup != null && !foundHost.WorkGroup!.Equals(mappedHost.WorkGroup))