api/src/modules/scenario-interventions/scenario-interventions.module.ts
import { Module } from '@nestjs/common';
import { TypeOrmModule } from '@nestjs/typeorm';
import { GeoCodingModule } from 'modules/geo-coding/geo-coding.module';
import { ScenarioIntervention } from 'modules/scenario-interventions/scenario-intervention.entity';
import { ScenarioInterventionsService } from 'modules/scenario-interventions/scenario-interventions.service';
import { SourcingLocationsModule } from 'modules/sourcing-locations/sourcing-locations.module';
import { IndicatorRecordsModule } from 'modules/indicator-records/indicator-records.module';
import { MaterialsModule } from 'modules/materials/materials.module';
import { BusinessUnitsModule } from 'modules/business-units/business-units.module';
import { AdminRegionsModule } from 'modules/admin-regions/admin-regions.module';
import { SuppliersModule } from 'modules/suppliers/suppliers.module';
import { InterventionBuilder } from 'modules/scenario-interventions/services/intervention-builder.service';
import { NewMaterialIntervention } from 'modules/scenario-interventions/strategies/new-material.intervention.strategy';
import { NewSupplierLocationIntervention } from 'modules/scenario-interventions/strategies/new-supplier-location.intervention.strategy';
import { ChangeProductionEfficiencyIntervention } from 'modules/scenario-interventions/strategies/change-production-efficiency.intervention.strategy';
import { ScenarioInterventionsController } from 'modules/scenario-interventions/scenario-interventions.controller';
import { ActiveIndicatorValidator } from 'modules/indicators/validators/active-indicator.validator';
import { ScenarioInterventionRepository } from 'modules/scenario-interventions/scenario-intervention.repository';
import { AuthorizationModule } from 'modules/authorization/authorization.module';
import { MaterialsService } from 'modules/materials/materials.service';
import { ImpactModule } from 'modules/impact/impact.module';
@Module({
imports: [
TypeOrmModule.forFeature([ScenarioIntervention]),
ImpactModule,
IndicatorRecordsModule,
GeoCodingModule,
SourcingLocationsModule,
MaterialsModule,
BusinessUnitsModule,
AdminRegionsModule,
SuppliersModule,
AuthorizationModule,
],
controllers: [ScenarioInterventionsController],
providers: [
ScenarioInterventionRepository,
ScenarioInterventionsService,
InterventionBuilder,
NewMaterialIntervention,
NewSupplierLocationIntervention,
ChangeProductionEfficiencyIntervention,
ActiveIndicatorValidator,
MaterialsService,
],
exports: [ScenarioInterventionRepository, ScenarioInterventionsService],
})
export class ScenarioInterventionsModule {}