46 lines
2.8 KiB
C#
46 lines
2.8 KiB
C#
using Microsoft.Extensions.DependencyInjection;
|
|
using Tiku.Application.PlatformAdmin;
|
|
using Tiku.Application.PlatformAdmin.Operations;
|
|
using Tiku.Application.PlatformBilling;
|
|
using Tiku.Application.Jobs;
|
|
using Tiku.Infrastructure.PlatformAdmin;
|
|
using Tiku.Infrastructure.PlatformAdmin.Operations;
|
|
using Tiku.Infrastructure.PlatformAdmin.TenantProvisioning;
|
|
using Tiku.Infrastructure.PlatformBilling;
|
|
|
|
namespace Tiku.Infrastructure;
|
|
|
|
internal static class PlatformModule
|
|
{
|
|
internal static IServiceCollection AddPlatformModule(this IServiceCollection services)
|
|
{
|
|
services.AddScoped<PlatformAdministrationDependencies>();
|
|
services.AddScoped<IPlatformDashboardService, PlatformDashboardService>();
|
|
services.AddScoped<ITenantProvisioningAdministrationService, TenantProvisioningAdministrationService>();
|
|
services.AddScoped<IPlatformTenantDomainService, PlatformTenantDomainService>();
|
|
services.AddScoped<IPlatformStaffAccessService, PlatformStaffAccessService>();
|
|
services.AddScoped<IPlatformAuditAlertService, PlatformAuditAlertService>();
|
|
services.AddScoped<IPlatformDunningService, PlatformDunningService>();
|
|
services.AddScoped<IBackgroundJobHandler, TenantExportJobHandler>();
|
|
services.AddScoped<IPlatformOperationsQueryService, PlatformOperationsQueryService>();
|
|
services.AddOptions<TenantProvisioningOptions>();
|
|
services.AddScoped<IPlatformQuestionBankService, PlatformQuestionBankService>();
|
|
services.AddScoped<IPlatformCrmAdminService, PlatformCrmAdminService>();
|
|
services.AddScoped<IPlatformSmsAdminService, PlatformSmsAdminService>();
|
|
services.AddScoped<IPlatformPaymentSettingsService, PlatformPaymentSettingsService>();
|
|
services.AddScoped<IPlatformApprovalService, PlatformApprovalService>();
|
|
services.AddScoped<IPlatformGovernanceService, PlatformGovernanceService>();
|
|
services.AddScoped<IPlatformTenantPaymentAdminService, PlatformTenantPaymentAdminService>();
|
|
services.AddScoped<ISaasCatalogAdminService, SaasCatalogAdminService>();
|
|
services.AddScoped<ITenantBillingService, TenantBillingService>();
|
|
services.AddScoped<IPlatformBillingAdminService, PlatformBillingAdminService>();
|
|
services.AddHttpClient<ICommercialBillingProcessor, CommercialBillingProcessor>();
|
|
services.AddScoped<IPlatformBillingPaymentGateway, PlatformBillingPaymentGateway>();
|
|
services.AddScoped<IPlatformBillingNotificationService, PlatformBillingNotificationService>();
|
|
services.AddScoped<IPlatformBillingSettlementService, PlatformBillingSettlementService>();
|
|
services.AddScoped<ISaasSubscriptionLifecycleService, SaasSubscriptionLifecycleService>();
|
|
services.AddOptions<SaasSubscriptionLifecycleOptions>();
|
|
return services;
|
|
}
|
|
}
|