refactor:将 ZulipAccountsModule 改为全局单例模块
- 在 AppModule 中统一导入 ZulipAccountsModule.forRoot() - 移除 admin.module、auth.module、zulip.module 中的重复导入 - 添加数据库 charset: utf8mb4 配置,支持中文和 emoji
This commit is contained in:
@@ -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, // 聊天网关模块
|
||||
|
||||
@@ -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])
|
||||
],
|
||||
|
||||
@@ -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: [
|
||||
|
||||
@@ -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,
|
||||
// 日志模块
|
||||
|
||||
Reference in New Issue
Block a user