Files
KArtSell.Aegis/docs/Design/kbx-foundation-v60-status-canonical-contract-hardening/backend/Shared/Excel/KbxExcelImportRegistration.cs
T
kjh2064 3f293d8aa8
deploy / deploy (push) Successful in 1m52s
deploy / notify (push) Successful in 1s
V13-FE-006: consolidate approved UI and contract hardening
2026-08-13 02:41:00 +09:00

31 lines
1.1 KiB
C#

using Modules.Common.Imports.Jobs;
using Modules.OMS.Orders.Import;
namespace Shared.Excel;
public static class KbxExcelImportRegistration
{
public static IServiceCollection AddKbxExcelImport(this IServiceCollection services)
{
services.AddSignalR();
services.AddSingleton<XlsxSafetyInspector>();
services.AddSingleton<ClosedXmlWorkbookService>();
services.AddSingleton<ImportMappingEngine>();
services.AddSingleton<ImportRepository>();
services.AddSingleton<IImportMappingSuggester, NoopImportMappingSuggester>();
services.AddSingleton<IImportDefinition, OrderImportDefinition>();
services.AddSingleton<ImportDefinitionRegistry>();
services.AddSingleton<ImportProgressPublisher>();
services.AddTransient<ValidateImportJob>();
services.AddTransient<CommitImportJob>();
services.AddTransient<PurgeExpiredImportsJob>();
return services;
}
public static IEndpointRouteBuilder MapKbxExcelImport(this IEndpointRouteBuilder endpoints)
{
endpoints.MapHub<ImportProgressHub>("/hubs/import-progress");
return endpoints;
}
}