diff --git a/backend/services/reward-service/src/application/application.module.ts b/backend/services/reward-service/src/application/application.module.ts index 60c1bbbc..587a96c6 100644 --- a/backend/services/reward-service/src/application/application.module.ts +++ b/backend/services/reward-service/src/application/application.module.ts @@ -1,4 +1,4 @@ -import { Module } from '@nestjs/common'; +import { Module, forwardRef } from '@nestjs/common'; import { ScheduleModule } from '@nestjs/schedule'; import { RewardApplicationService } from './services/reward-application.service'; import { RewardExpirationScheduler } from './schedulers/reward-expiration.scheduler'; @@ -9,7 +9,7 @@ import { InfrastructureModule } from '../infrastructure/infrastructure.module'; imports: [ ScheduleModule.forRoot(), DomainModule, - InfrastructureModule, + forwardRef(() => InfrastructureModule), ], providers: [ RewardApplicationService, diff --git a/backend/services/reward-service/src/infrastructure/kafka/kafka.module.ts b/backend/services/reward-service/src/infrastructure/kafka/kafka.module.ts index 4317b731..0f0442fb 100644 --- a/backend/services/reward-service/src/infrastructure/kafka/kafka.module.ts +++ b/backend/services/reward-service/src/infrastructure/kafka/kafka.module.ts @@ -1,10 +1,14 @@ -import { Module } from '@nestjs/common'; +import { Module, forwardRef } from '@nestjs/common'; import { ConfigModule, ConfigService } from '@nestjs/config'; import { ClientsModule, Transport } from '@nestjs/microservices'; import { EventPublisherService } from './event-publisher.service'; +import { EventConsumerController } from './event-consumer.controller'; +import { EventAckPublisher } from './event-ack.publisher'; +import { ApplicationModule } from '../../application/application.module'; @Module({ imports: [ + forwardRef(() => ApplicationModule), ClientsModule.registerAsync([ { name: 'KAFKA_SERVICE', @@ -25,7 +29,8 @@ import { EventPublisherService } from './event-publisher.service'; }, ]), ], - providers: [EventPublisherService], - exports: [EventPublisherService, ClientsModule], + controllers: [EventConsumerController], + providers: [EventPublisherService, EventAckPublisher], + exports: [EventPublisherService, EventAckPublisher, ClientsModule], }) export class KafkaModule {}