feat(aihitRelationshipsSyncer): Реализована логика синхронизации связей между Unit+CI/CD

This commit is contained in:
Mikhail Kuznetsov
2025-05-27 11:32:05 +10:00
parent cc52818d29
commit 078c8b540f
33 changed files with 4389 additions and 6 deletions

View File

@@ -0,0 +1,49 @@
using Microsoft.EntityFrameworkCore;
using Microsoft.Extensions.Configuration;
using Microsoft.Extensions.DependencyInjection;
using PARR.AIHITRelationshipsSyncer.Context;
using PARR.AIHITRelationshipsSyncer.Services.Implementations;
using PARR.AIHITRelationshipsSyncer.Services.Interfaces;
using PARR.AIHITRelationshipsSyncer.Settings;
using PARR.BLL;
using PARR.DAL;
namespace PARR.AIHITRelationshipsSyncer
{
public static class AihitRelationshpsSyncerInstaller
{
public static void InstallAihitRelationshpsSyncerServices(this IServiceCollection services, IConfiguration configuration)
{
services.InstallBllServices(configuration);
services.InstallDalServices(configuration);
var settings = new WorkerSettings();
configuration.GetSection(nameof(WorkerSettings)).Bind(settings);
services.AddSingleton(settings);
services.AddDbContext<AIHITContext>(options =>
options.UseSqlServer(
configuration.GetConnectionString("AihitConnection"),
sqlServerOptions => sqlServerOptions.CommandTimeout(1800)
));
services.AddTransient<IRelationshipsSyncer, RelationshipsSyncer>();
services.AddTransient<IAihitService, AihitService>();
services.AddTransient<IRelationshipsSyncService, RelationshipsSyncSrevice>();
}
public static IConfigurationBuilder AddAihitRelationshpsSyncerConfigurations(this IConfigurationBuilder builder, IServiceCollection services)
{
builder.AddDalConfigurations(services);
return builder;
}
public static void AddAihitRelationshpsSyncerSettings(this IServiceCollection services, IConfiguration configuration)
{
services.AddDallSettings(configuration);
}
}
}