diff --git a/src/app.module.ts b/src/app.module.ts index aac72a6..d707bb1 100644 --- a/src/app.module.ts +++ b/src/app.module.ts @@ -6,6 +6,7 @@ import { AppController } from './app.controller'; import { AppService } from './app.service'; import { LoggerModule } from './core/utils/logger/logger.module'; import { UsersModule } from './core/db/users/users.module'; +import { ZulipAccountsModule } from './core/db/zulip_accounts/zulip_accounts.module'; import { LoginCoreModule } from './core/login_core/login_core.module'; import { AuthGatewayModule } from './gateway/auth/auth.gateway.module'; import { ChatGatewayModule } from './gateway/chat/chat.gateway.module'; @@ -62,6 +63,8 @@ function isDatabaseConfigured(): boolean { database: process.env.DB_NAME, entities: [__dirname + '/**/*.entity{.ts,.js}'], synchronize: false, + // 字符集配置 - 支持中文和emoji + charset: 'utf8mb4', // 添加连接超时和重试配置 connectTimeout: 10000, retryAttempts: 3, @@ -70,6 +73,8 @@ function isDatabaseConfigured(): boolean { ] : []), // 根据数据库配置选择用户模块模式 isDatabaseConfigured() ? UsersModule.forDatabase() : UsersModule.forMemory(), + // Zulip账号关联模块 - 全局单例,其他模块无需重复导入 + ZulipAccountsModule.forRoot(), LoginCoreModule, AuthGatewayModule, // 认证网关模块 ChatGatewayModule, // 聊天网关模块 diff --git a/src/business/admin/admin.module.ts b/src/business/admin/admin.module.ts index c8b808d..2e9f02e 100644 --- a/src/business/admin/admin.module.ts +++ b/src/business/admin/admin.module.ts @@ -27,7 +27,6 @@ import { AdminCoreModule } from '../../core/admin_core/admin_core.module'; import { LoggerModule } from '../../core/utils/logger/logger.module'; import { UsersModule } from '../../core/db/users/users.module'; import { UserProfilesModule } from '../../core/db/user_profiles/user_profiles.module'; -import { ZulipAccountsModule } from '../../core/db/zulip_accounts/zulip_accounts.module'; import { AdminController } from './admin.controller'; import { AdminService } from './admin.service'; import { AdminDatabaseController } from './admin_database.controller'; @@ -55,8 +54,7 @@ function isDatabaseConfigured(): boolean { UsersModule, // 根据数据库配置选择UserProfiles模块模式 isDatabaseConfigured() ? UserProfilesModule.forDatabase() : UserProfilesModule.forMemory(), - // 根据数据库配置选择ZulipAccounts模块模式 - isDatabaseConfigured() ? ZulipAccountsModule.forDatabase() : ZulipAccountsModule.forMemory(), + // 注意:ZulipAccountsModule 是全局模块,已在 AppModule 中导入,无需重复导入 // 注册AdminOperationLog实体 TypeOrmModule.forFeature([AdminOperationLog]) ], diff --git a/src/business/auth/auth.module.ts b/src/business/auth/auth.module.ts index 782b9f5..733e326 100644 --- a/src/business/auth/auth.module.ts +++ b/src/business/auth/auth.module.ts @@ -36,7 +36,6 @@ import { LoginService } from './login.service'; import { RegisterService } from './register.service'; import { LoginCoreModule } from '../../core/login_core/login_core.module'; import { ZulipCoreModule } from '../../core/zulip_core/zulip_core.module'; -import { ZulipAccountsModule } from '../../core/db/zulip_accounts/zulip_accounts.module'; import { UsersModule } from '../../core/db/users/users.module'; @Module({ @@ -44,7 +43,7 @@ import { UsersModule } from '../../core/db/users/users.module'; // 导入核心层模块 LoginCoreModule, ZulipCoreModule, - ZulipAccountsModule.forRoot(), + // 注意:ZulipAccountsModule 是全局模块,已在 AppModule 中导入,无需重复导入 UsersModule, ], providers: [ diff --git a/src/business/zulip/zulip.module.ts b/src/business/zulip/zulip.module.ts index a5e9f3e..ceed582 100644 --- a/src/business/zulip/zulip.module.ts +++ b/src/business/zulip/zulip.module.ts @@ -36,7 +36,6 @@ import { ZulipEventProcessorService } from './services/zulip_event_processor.ser import { ZulipAccountsBusinessService } from './services/zulip_accounts_business.service'; // 依赖模块 import { ZulipCoreModule } from '../../core/zulip_core/zulip_core.module'; -import { ZulipAccountsModule } from '../../core/db/zulip_accounts/zulip_accounts.module'; import { RedisModule } from '../../core/redis/redis.module'; import { LoggerModule } from '../../core/utils/logger/logger.module'; import { LoginCoreModule } from '../../core/login_core/login_core.module'; @@ -50,8 +49,7 @@ import { ChatModule } from '../chat/chat.module'; CacheModule.register(), // Zulip核心服务模块 ZulipCoreModule, - // Zulip账号关联模块 - ZulipAccountsModule.forRoot(), + // 注意:ZulipAccountsModule 是全局模块,已在 AppModule 中导入,无需重复导入 // Redis模块 RedisModule, // 日志模块