fix(mining-wallet-service): 修复模块依赖注入问题

将 Kafka consumers 从 InfrastructureModule 移到 ApplicationModule,
因为 consumers 依赖 application 层的服务 (ContributionWalletService, SystemAccountService)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
hailin 2026-01-12 06:20:32 -08:00
parent 7fe954e563
commit 025cc6871b
2 changed files with 9 additions and 5 deletions

View File

@ -12,6 +12,10 @@ import { ContributionWalletService } from './services/contribution-wallet.servic
import { OutboxScheduler } from './schedulers/outbox.scheduler';
import { ContributionExpiryScheduler } from './schedulers/contribution-expiry.scheduler';
// Consumers (从 InfrastructureModule 移过来,因为依赖应用服务)
import { ContributionDistributionConsumer } from '../infrastructure/kafka/consumers/contribution-distribution.consumer';
import { UserRegisteredConsumer } from '../infrastructure/kafka/consumers/user-registered.consumer';
@Module({
imports: [ScheduleModule.forRoot()],
providers: [
@ -24,6 +28,9 @@ import { ContributionExpiryScheduler } from './schedulers/contribution-expiry.sc
// Schedulers
OutboxScheduler,
ContributionExpiryScheduler,
// Consumers
ContributionDistributionConsumer,
UserRegisteredConsumer,
],
exports: [
SystemAccountService,

View File

@ -12,8 +12,7 @@ import { ProcessedEventRepository } from './persistence/repositories/processed-e
import { RedisService } from './redis/redis.service';
import { KafkaProducerService } from './kafka/kafka-producer.service';
import { KavaBlockchainService } from './blockchain/kava-blockchain.service';
import { ContributionDistributionConsumer } from './kafka/consumers/contribution-distribution.consumer';
import { UserRegisteredConsumer } from './kafka/consumers/user-registered.consumer';
// 注意: Consumers 移到 ApplicationModule 中,因为它们依赖应用服务
@Global()
@Module({
@ -56,9 +55,7 @@ import { UserRegisteredConsumer } from './kafka/consumers/user-registered.consum
// Services
KafkaProducerService,
KavaBlockchainService,
// Consumers
ContributionDistributionConsumer,
UserRegisteredConsumer,
// Consumers 已移到 ApplicationModule
{
provide: 'REDIS_OPTIONS',
useFactory: (configService: ConfigService) => ({