feat(aihtLoader): добавлены процедуры загрузки данных по направлению СТО и ОРГВОПРОСЫ
This commit is contained in:
@@ -125,7 +125,9 @@ namespace PARR.AIHITMainLoader
|
|||||||
{
|
{
|
||||||
service.GetCvkData,
|
service.GetCvkData,
|
||||||
service.GetPtkData,
|
service.GetPtkData,
|
||||||
service.GetRegionalEKData
|
service.GetRegionalEKData,
|
||||||
|
service.GetStoData,
|
||||||
|
service.GetOrgData
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -12,6 +12,8 @@ namespace PARR.AIHITMainLoader.Context
|
|||||||
public DbSet<CvkData> CvkDatas { get; set; }
|
public DbSet<CvkData> CvkDatas { get; set; }
|
||||||
public DbSet<PtkData> PtkDatas { get; set; }
|
public DbSet<PtkData> PtkDatas { get; set; }
|
||||||
public DbSet<PtkData> RegEKDatas { get; set; }
|
public DbSet<PtkData> RegEKDatas { get; set; }
|
||||||
|
public DbSet<PtkData> StoDatas { get; set; }
|
||||||
|
public DbSet<PtkData> OrgDatas { get; set; }
|
||||||
|
|
||||||
protected override void OnModelCreating(ModelBuilder modelBuilder)
|
protected override void OnModelCreating(ModelBuilder modelBuilder)
|
||||||
{
|
{
|
||||||
@@ -34,6 +36,16 @@ namespace PARR.AIHITMainLoader.Context
|
|||||||
entity.HasNoKey();
|
entity.HasNoKey();
|
||||||
entity.ToView(null);
|
entity.ToView(null);
|
||||||
});
|
});
|
||||||
|
modelBuilder.Entity<StoData>(entity =>
|
||||||
|
{
|
||||||
|
entity.HasNoKey();
|
||||||
|
entity.ToView(null);
|
||||||
|
});
|
||||||
|
modelBuilder.Entity<OrgData>(entity =>
|
||||||
|
{
|
||||||
|
entity.HasNoKey();
|
||||||
|
entity.ToView(null);
|
||||||
|
});
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -60,6 +60,8 @@ namespace PARR.AIHITMainLoader.Models
|
|||||||
|
|
||||||
[Column("ЗО_РГ")]
|
[Column("ЗО_РГ")]
|
||||||
public string? WorkGroupResponseArea { get; set; }
|
public string? WorkGroupResponseArea { get; set; }
|
||||||
|
[Column("ДОПОЛНИТЕЛЬНАЯ_ИНФОРМАЦИЯ")]
|
||||||
|
public string? AdditionalInformation { get; set; }
|
||||||
|
|
||||||
|
|
||||||
public AihitMainDataMq ToMainData()
|
public AihitMainDataMq ToMainData()
|
||||||
@@ -86,6 +88,7 @@ namespace PARR.AIHITMainLoader.Models
|
|||||||
{"АКТИВЕН", Active.ToString() },
|
{"АКТИВЕН", Active.ToString() },
|
||||||
{"НЕУНИКАЛЬНЫЙ_ЭК", IsNotUnique.ToString() },
|
{"НЕУНИКАЛЬНЫЙ_ЭК", IsNotUnique.ToString() },
|
||||||
{"ЗО_РГ", WorkGroupResponseArea },
|
{"ЗО_РГ", WorkGroupResponseArea },
|
||||||
|
{"ДОПОЛНИТЕЛЬНАЯ_ИНФОРМАЦИЯ", AdditionalInformation }
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|||||||
98
PARR.AIHITMainLoader/Models/OrgData.cs
Normal file
98
PARR.AIHITMainLoader/Models/OrgData.cs
Normal file
@@ -0,0 +1,98 @@
|
|||||||
|
using PARR.BLL.Domain.Mq;
|
||||||
|
using System.ComponentModel.DataAnnotations;
|
||||||
|
using System.ComponentModel.DataAnnotations.Schema;
|
||||||
|
|
||||||
|
namespace PARR.AIHITMainLoader.Models
|
||||||
|
{
|
||||||
|
public class OrgData : IMainData
|
||||||
|
{
|
||||||
|
[Column("ЗОНА_ОТВЕТСТВЕННОСТИ")]
|
||||||
|
public string? ResponseArea { get; set; }
|
||||||
|
|
||||||
|
[Column("КАТЕГОРИЯ_ЭК")]
|
||||||
|
public string? EKCategory { get; set; }
|
||||||
|
|
||||||
|
[Key]
|
||||||
|
[Column("КОД_ПОИСКА_ЭК")]
|
||||||
|
public string? EKFindCode { get; set; }
|
||||||
|
|
||||||
|
[Column("КРАТКОЕ_НАИМЕНОВАНИЕ")]
|
||||||
|
public string? ShortName { get; set; }
|
||||||
|
|
||||||
|
[Column("МВЗ")]
|
||||||
|
public string? MVZ { get; set; }
|
||||||
|
|
||||||
|
[Column("МОДЕЛЬ")]
|
||||||
|
public string? Model { get; set; }
|
||||||
|
|
||||||
|
[Column("ОТВЕТСТВЕННЫЙ_ЗА_ЭК")]
|
||||||
|
public string? ResponsibleByEK { get; set; }
|
||||||
|
|
||||||
|
[Column("ПОДКАТЕГОРИЯ_ЭК")]
|
||||||
|
public string? EKSubCategory { get; set; }
|
||||||
|
|
||||||
|
[Column("ПРОИЗВОДИТЕЛЬ_РАЗРАБОТЧИК")]
|
||||||
|
public string? Developer { get; set; }
|
||||||
|
|
||||||
|
[Column("РАБОЧАЯ_ГР_ОТВ_ЗА_ЭК")]
|
||||||
|
public string? WorkGroup { get; set; }
|
||||||
|
|
||||||
|
[Column("СТАТУС")]
|
||||||
|
public string? Status { get; set; }
|
||||||
|
|
||||||
|
[Column("ТИП_ЭК")]
|
||||||
|
public string? EKType { get; set; }
|
||||||
|
|
||||||
|
[Column("РГ_смены")]
|
||||||
|
public string? ShiftWorkGroup { get; set; }
|
||||||
|
|
||||||
|
[Column("Сервер СПД")]
|
||||||
|
public string? SPDServerType { get; set; }
|
||||||
|
|
||||||
|
[Column("Сервер БИР")]
|
||||||
|
public string? BIRServerType { get; set; }
|
||||||
|
|
||||||
|
[Column("АКТИВЕН")]
|
||||||
|
public int Active { get; set; }
|
||||||
|
|
||||||
|
[Column("НЕУНИКАЛЬНЫЙ_ЭК")]
|
||||||
|
public int IsNotUnique { get; set; }
|
||||||
|
|
||||||
|
[Column("ЗО_РГ")]
|
||||||
|
public string? WorkGroupResponseArea { get; set; }
|
||||||
|
[Column("ДОПОЛНИТЕЛЬНАЯ_ИНФОРМАЦИЯ")]
|
||||||
|
public string? AdditionalInformation { get; set; }
|
||||||
|
|
||||||
|
|
||||||
|
public AihitMainDataMq ToMainData()
|
||||||
|
{
|
||||||
|
return new AihitMainDataMq
|
||||||
|
{
|
||||||
|
Name = EKFindCode!,//TODO Ты прям уверен???
|
||||||
|
Properties = new Dictionary<string, string?>
|
||||||
|
{
|
||||||
|
{"ЗОНА_ОТВЕТСТВЕННОСТИ", ResponseArea },
|
||||||
|
{"КАТЕГОРИЯ_ЭК", EKCategory },
|
||||||
|
{"КРАТКОЕ_НАИМЕНОВАНИЕ", ShortName },
|
||||||
|
{"MVZ", MVZ },
|
||||||
|
{"МОДЕЛЬ", Model },
|
||||||
|
{"ОТВЕТСТВЕННЫЙ_ЗА_ЭК", ResponsibleByEK },
|
||||||
|
{"ПОДКАТЕГОРИЯ_ЭК", EKSubCategory },
|
||||||
|
{"ПРОИЗВОДИТЕЛЬ_РАЗРАБОТЧИК", Developer },
|
||||||
|
{"РАБОЧАЯ_ГР_ОТВ_ЗА_ЭК", WorkGroup },
|
||||||
|
{"СТАТУС", Status },
|
||||||
|
{"ТИП_ЭК", EKType },
|
||||||
|
{"РГ_смены", ShiftWorkGroup },
|
||||||
|
{"Сервер СПД", SPDServerType },
|
||||||
|
{"Сервер БИР", BIRServerType },
|
||||||
|
{"АКТИВЕН", Active.ToString() },
|
||||||
|
{"НЕУНИКАЛЬНЫЙ_ЭК", IsNotUnique.ToString() },
|
||||||
|
{"ЗО_РГ", WorkGroupResponseArea },
|
||||||
|
{"ДОПОЛНИТЕЛЬНАЯ_ИНФОРМАЦИЯ", AdditionalInformation }
|
||||||
|
}
|
||||||
|
};
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
98
PARR.AIHITMainLoader/Models/StoData.cs
Normal file
98
PARR.AIHITMainLoader/Models/StoData.cs
Normal file
@@ -0,0 +1,98 @@
|
|||||||
|
using PARR.BLL.Domain.Mq;
|
||||||
|
using System.ComponentModel.DataAnnotations;
|
||||||
|
using System.ComponentModel.DataAnnotations.Schema;
|
||||||
|
|
||||||
|
namespace PARR.AIHITMainLoader.Models
|
||||||
|
{
|
||||||
|
public class StoData : IMainData
|
||||||
|
{
|
||||||
|
[Column("ЗОНА_ОТВЕТСТВЕННОСТИ")]
|
||||||
|
public string? ResponseArea { get; set; }
|
||||||
|
|
||||||
|
[Column("КАТЕГОРИЯ_ЭК")]
|
||||||
|
public string? EKCategory { get; set; }
|
||||||
|
|
||||||
|
[Key]
|
||||||
|
[Column("КОД_ПОИСКА_ЭК")]
|
||||||
|
public string? EKFindCode { get; set; }
|
||||||
|
|
||||||
|
[Column("КРАТКОЕ_НАИМЕНОВАНИЕ")]
|
||||||
|
public string? ShortName { get; set; }
|
||||||
|
|
||||||
|
[Column("МВЗ")]
|
||||||
|
public string? MVZ { get; set; }
|
||||||
|
|
||||||
|
[Column("МОДЕЛЬ")]
|
||||||
|
public string? Model { get; set; }
|
||||||
|
|
||||||
|
[Column("ОТВЕТСТВЕННЫЙ_ЗА_ЭК")]
|
||||||
|
public string? ResponsibleByEK { get; set; }
|
||||||
|
|
||||||
|
[Column("ПОДКАТЕГОРИЯ_ЭК")]
|
||||||
|
public string? EKSubCategory { get; set; }
|
||||||
|
|
||||||
|
[Column("ПРОИЗВОДИТЕЛЬ_РАЗРАБОТЧИК")]
|
||||||
|
public string? Developer { get; set; }
|
||||||
|
|
||||||
|
[Column("РАБОЧАЯ_ГР_ОТВ_ЗА_ЭК")]
|
||||||
|
public string? WorkGroup { get; set; }
|
||||||
|
|
||||||
|
[Column("СТАТУС")]
|
||||||
|
public string? Status { get; set; }
|
||||||
|
|
||||||
|
[Column("ТИП_ЭК")]
|
||||||
|
public string? EKType { get; set; }
|
||||||
|
|
||||||
|
[Column("РГ_смены")]
|
||||||
|
public string? ShiftWorkGroup { get; set; }
|
||||||
|
|
||||||
|
[Column("Сервер СПД")]
|
||||||
|
public string? SPDServerType { get; set; }
|
||||||
|
|
||||||
|
[Column("Сервер БИР")]
|
||||||
|
public string? BIRServerType { get; set; }
|
||||||
|
|
||||||
|
[Column("АКТИВЕН")]
|
||||||
|
public int Active { get; set; }
|
||||||
|
|
||||||
|
[Column("НЕУНИКАЛЬНЫЙ_ЭК")]
|
||||||
|
public int IsNotUnique { get; set; }
|
||||||
|
|
||||||
|
[Column("ЗО_РГ")]
|
||||||
|
public string? WorkGroupResponseArea { get; set; }
|
||||||
|
[Column("ДОПОЛНИТЕЛЬНАЯ_ИНФОРМАЦИЯ")]
|
||||||
|
public string? AdditionalInformation { get; set; }
|
||||||
|
|
||||||
|
|
||||||
|
public AihitMainDataMq ToMainData()
|
||||||
|
{
|
||||||
|
return new AihitMainDataMq
|
||||||
|
{
|
||||||
|
Name = EKFindCode!,//TODO Ты прям уверен???
|
||||||
|
Properties = new Dictionary<string, string?>
|
||||||
|
{
|
||||||
|
{"ЗОНА_ОТВЕТСТВЕННОСТИ", ResponseArea },
|
||||||
|
{"КАТЕГОРИЯ_ЭК", EKCategory },
|
||||||
|
{"КРАТКОЕ_НАИМЕНОВАНИЕ", ShortName },
|
||||||
|
{"MVZ", MVZ },
|
||||||
|
{"МОДЕЛЬ", Model },
|
||||||
|
{"ОТВЕТСТВЕННЫЙ_ЗА_ЭК", ResponsibleByEK },
|
||||||
|
{"ПОДКАТЕГОРИЯ_ЭК", EKSubCategory },
|
||||||
|
{"ПРОИЗВОДИТЕЛЬ_РАЗРАБОТЧИК", Developer },
|
||||||
|
{"РАБОЧАЯ_ГР_ОТВ_ЗА_ЭК", WorkGroup },
|
||||||
|
{"СТАТУС", Status },
|
||||||
|
{"ТИП_ЭК", EKType },
|
||||||
|
{"РГ_смены", ShiftWorkGroup },
|
||||||
|
{"Сервер СПД", SPDServerType },
|
||||||
|
{"Сервер БИР", BIRServerType },
|
||||||
|
{"АКТИВЕН", Active.ToString() },
|
||||||
|
{"НЕУНИКАЛЬНЫЙ_ЭК", IsNotUnique.ToString() },
|
||||||
|
{"ЗО_РГ", WorkGroupResponseArea },
|
||||||
|
{"ДОПОЛНИТЕЛЬНАЯ_ИНФОРМАЦИЯ", AdditionalInformation }
|
||||||
|
}
|
||||||
|
};
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -92,5 +92,53 @@ namespace PARR.AIHITMainLoader.Services
|
|||||||
|
|
||||||
return new List<IMainData>();
|
return new List<IMainData>();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
public IEnumerable<IMainData>? GetStoData(string respArea)
|
||||||
|
{
|
||||||
|
var parameters = new List<SqlParameter>() { new SqlParameter("@зо", respArea) };
|
||||||
|
|
||||||
|
try
|
||||||
|
{
|
||||||
|
var result = context.Set<StoData>().FromSqlRaw($"EXEC mao2.dbo.sp_IPP_PARR_PTK_get_EK_STO @зо", parameters.ToArray()).AsEnumerable();
|
||||||
|
|
||||||
|
if (result == null || !result.Any())
|
||||||
|
{
|
||||||
|
logger.LogWarning($"Процедура sp_IPP_PARR_PTK_get_EK_STO вернула пустой список ЭК");
|
||||||
|
}
|
||||||
|
|
||||||
|
return result;
|
||||||
|
}
|
||||||
|
catch (Exception ex)
|
||||||
|
{
|
||||||
|
logger.LogError(ex, $"Ошибка при выполнении ХП sp_IPP_PARR_PTK_get_EK_STO({respArea})");
|
||||||
|
}
|
||||||
|
|
||||||
|
return new List<IMainData>();
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
public IEnumerable<IMainData>? GetOrgData(string respArea)
|
||||||
|
{
|
||||||
|
var parameters = new List<SqlParameter>() { new SqlParameter("@зо", respArea) };
|
||||||
|
|
||||||
|
try
|
||||||
|
{
|
||||||
|
var result = context.Set<StoData>().FromSqlRaw($"EXEC mao2.dbo.sp_IPP_PARR_PTK_get_EK_ORG @зо", parameters.ToArray()).AsEnumerable();
|
||||||
|
|
||||||
|
if (result == null || !result.Any())
|
||||||
|
{
|
||||||
|
logger.LogWarning($"Процедура sp_IPP_PARR_PTK_get_EK_ORG вернула пустой список ЭК");
|
||||||
|
}
|
||||||
|
|
||||||
|
return result;
|
||||||
|
}
|
||||||
|
catch (Exception ex)
|
||||||
|
{
|
||||||
|
logger.LogError(ex, $"Ошибка при выполнении ХП sp_IPP_PARR_PTK_get_EK_ORG({respArea})");
|
||||||
|
}
|
||||||
|
|
||||||
|
return new List<IMainData>();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -6,6 +6,8 @@ namespace PARR.AIHITMainLoader.Services
|
|||||||
{
|
{
|
||||||
IEnumerable<IMainData>? GetPtkData(string respArea);
|
IEnumerable<IMainData>? GetPtkData(string respArea);
|
||||||
IEnumerable<IMainData>? GetCvkData(string respArea);
|
IEnumerable<IMainData>? GetCvkData(string respArea);
|
||||||
|
IEnumerable<IMainData>? GetStoData(string respArea);
|
||||||
|
IEnumerable<IMainData>? GetOrgData(string respArea);
|
||||||
IEnumerable<IMainData>? GetRegionalEKData(string respArea);
|
IEnumerable<IMainData>? GetRegionalEKData(string respArea);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user