diff --git a/src/BuildFlow.Host/appsettings.json b/src/BuildFlow.Host/appsettings.json index d435cff..66de9cd 100644 --- a/src/BuildFlow.Host/appsettings.json +++ b/src/BuildFlow.Host/appsettings.json @@ -18,18 +18,15 @@ }, "AllowedHosts": "*", "ConnectionStrings": { - "Rag": "Host=localhost;Port=5432;Database=rag;Username=rag;Password=REDACTED_DEV_PASSWORD", - "File": "Host=localhost;Port=5432;Database=file_system;Username=rag;Password=REDACTED_DEV_PASSWORD", - "Im": "Host=localhost;Port=5432;Database=im_system;Username=rag;Password=REDACTED_DEV_PASSWORD", - "Workflow": "Host=localhost;Port=5432;Database=workflow;Username=rag;Password=REDACTED_DEV_PASSWORD", - "MongoDb": "mongodb://mongo:mongo123@localhost:27017/im_system?authSource=admin", - "Redis": "localhost:6379,abortConnect=false" + "Default": "Host=43.134.235.58;Port=15432;Username=rag;Password=REDACTED_PG_PASSWORD", + "MongoDb": "mongodb://rag:CHANGE_ME@43.134.235.58:27017/im_system?authSource=admin", + "Redis": "43.134.235.58:16379,password=REDACTED_REDIS_PASSWORD,abortConnect=false" }, "RabbitMq": { - "Host": "localhost", - "Port": 5672, + "Host": "43.134.235.58", + "Port": 25672, "Username": "rag", - "Password": "REDACTED_DEV_PASSWORD" + "Password": "REDACTED_RABBITMQ_PASSWORD" }, "S3": { "Endpoint": "http://43.134.235.58:39200", diff --git a/src/modules/file/Infrastructure/FileInfrastructureModule.cs b/src/modules/file/Infrastructure/FileInfrastructureModule.cs index 71c77a8..1c855f9 100644 --- a/src/modules/file/Infrastructure/FileInfrastructureModule.cs +++ b/src/modules/file/Infrastructure/FileInfrastructureModule.cs @@ -21,11 +21,11 @@ public class FileInfrastructureModule : AbpModule var services = context.Services; var config = services.GetConfiguration(); - // DbContext 挂载审计拦截器,拦截器从 DI 容器解析 ICurrentUserContext - // 连接串优先读 "File" 键(聚合 host 用,与 rag 区分);生产环境只有 "Default",走 fallback 行为不变 - var fsConnection = config.GetConnectionString("File") ?? config.GetConnectionString("Default"); + // DbContext 挂载审计拦截器,统一从 Default 连接串派生(替换 Database 名) + var baseConn = config.GetConnectionString("Default")!; + var fsConn = $"{baseConn};Database=file_system"; services.AddDbContext((sp, options) => - options.UseNpgsql(fsConnection) + options.UseNpgsql(fsConn) .AddInterceptors(sp.GetRequiredService())); // Scoped 生命周期:每个 HTTP 请求创建一个拦截器实例,确保 ICurrentUserContext 正确获取当前用户 diff --git a/src/modules/im/Infrastructure/IMInfrastructureModule.cs b/src/modules/im/Infrastructure/IMInfrastructureModule.cs index 7fec509..16e3680 100644 --- a/src/modules/im/Infrastructure/IMInfrastructureModule.cs +++ b/src/modules/im/Infrastructure/IMInfrastructureModule.cs @@ -23,11 +23,11 @@ public class IMInfrastructureModule : AbpModule var services = context.Services; var config = services.GetConfiguration(); - // PostgreSQL:会话/参与者/群组/群成员。挂载 AuditInterceptor 自动写入审计字段与软删除 - // 连接串优先读 "Im" 键(Admin Host 用,与 rag/file 区分);设计时或模块测试只有 "Default" 时走 fallback - var imConnection = config.GetConnectionString("Im") ?? config.GetConnectionString("Default"); + // PostgreSQL:会话/参与者/群组/群成员。统一从 Default 连接串派生(替换 Database 名) + var baseConn = config.GetConnectionString("Default")!; + var imConn = $"{baseConn};Database=im_system"; services.AddDbContext((sp, options) => - options.UseNpgsql(imConnection) + options.UseNpgsql(imConn) .AddInterceptors(sp.GetRequiredService())); services.AddScoped(); diff --git a/src/modules/rag/Infrastructure/RAGInfrastructureModule.cs b/src/modules/rag/Infrastructure/RAGInfrastructureModule.cs index 074b32e..cbcf539 100644 --- a/src/modules/rag/Infrastructure/RAGInfrastructureModule.cs +++ b/src/modules/rag/Infrastructure/RAGInfrastructureModule.cs @@ -27,10 +27,11 @@ public class RAGInfrastructureModule : AbpModule var config = services.GetConfiguration(); // DbContext 挂载审计拦截器,拦截器从 DI 容器解析 ICurrentUserContext - // 连接串优先读 "Rag" 键(聚合 host 用,与 file-system 区分);生产环境只有 "Default",走 fallback 行为不变 - var ragConnection = config.GetConnectionString("Rag") ?? config.GetConnectionString("Default"); + // 统一从 Default 连接串派生(替换 Database 名),改一处连接信息全模块生效 + var baseConn = config.GetConnectionString("Default")!; + var ragConn = $"{baseConn};Database=rag"; services.AddDbContext((sp, options) => - options.UseNpgsql(ragConnection, o => o.UseVector()) + options.UseNpgsql(ragConn, o => o.UseVector()) .AddInterceptors(sp.GetRequiredService())); // Scoped 生命周期:每个 HTTP 请求创建一个拦截器实例,确保 ICurrentUserContext 正确获取当前用户 diff --git a/src/modules/workflow/Infrastructure/WorkflowInfrastructureModule.cs b/src/modules/workflow/Infrastructure/WorkflowInfrastructureModule.cs index efe1532..39c8953 100644 --- a/src/modules/workflow/Infrastructure/WorkflowInfrastructureModule.cs +++ b/src/modules/workflow/Infrastructure/WorkflowInfrastructureModule.cs @@ -19,11 +19,12 @@ public class WorkflowInfrastructureModule : AbpModule var services = context.Services; var config = services.GetConfiguration(); - // 连接串优先读 "Workflow" 键(BuildFlow Host 用),否则回退 "Default"(设计时或模块测试) - var wfConnection = config.GetConnectionString("Workflow") ?? config.GetConnectionString("Default"); + // 统一从 Default 连接串派生(替换 Database 名) + var baseConn = config.GetConnectionString("Default")!; + var wfConn = $"{baseConn};Database=workflow"; services.AddDbContext((sp, options) => { - options.UseNpgsql(wfConnection, npgsql => + options.UseNpgsql(wfConn, npgsql => { npgsql.MigrationsAssembly(typeof(WorkflowDbContext).Assembly.FullName); });