From 54648ca1acfc8b830d724e1be16765a3155dc9d4 Mon Sep 17 00:00:00 2001 From: xiangning Date: Mon, 6 Jul 2026 17:36:45 +0800 Subject: [PATCH] =?UTF-8?q?feat(scripting):=20=E6=96=B0=E5=BB=BA=20scripti?= =?UTF-8?q?ng=20=E6=A8=A1=E5=9D=97=E4=B8=89=E5=B1=82=E9=AA=A8=E6=9E=B6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - Scripting.Domain/Application/Infrastructure 三个 csproj - 三个 ABP Module 类 - 挂入 BuildFlowHostModule [DependsOn] - 加入 BuildFlow.slnx 解决方案 Task T1 of scripting module refactor --- BuildFlow.slnx | 5 +++++ src/BuildFlow.Host/BuildFlow.Host.csproj | 2 ++ src/BuildFlow.Host/BuildFlowHostModule.cs | 6 ++++- .../Application/Scripting.Application.csproj | 18 +++++++++++++++ .../Application/ScriptingApplicationModule.cs | 22 +++++++++++++++++++ .../scripting/Domain/Scripting.Domain.csproj | 14 ++++++++++++ .../scripting/Domain/ScriptingDomainModule.cs | 8 +++++++ .../Scripting.Infrastructure.csproj | 22 +++++++++++++++++++ .../ScriptingInfrastructureModule.cs | 11 ++++++++++ 9 files changed, 107 insertions(+), 1 deletion(-) create mode 100644 src/modules/scripting/Application/Scripting.Application.csproj create mode 100644 src/modules/scripting/Application/ScriptingApplicationModule.cs create mode 100644 src/modules/scripting/Domain/Scripting.Domain.csproj create mode 100644 src/modules/scripting/Domain/ScriptingDomainModule.cs create mode 100644 src/modules/scripting/Infrastructure/Scripting.Infrastructure.csproj create mode 100644 src/modules/scripting/Infrastructure/ScriptingInfrastructureModule.cs diff --git a/BuildFlow.slnx b/BuildFlow.slnx index 2200388..f842aad 100644 --- a/BuildFlow.slnx +++ b/BuildFlow.slnx @@ -28,6 +28,11 @@ + + + + + diff --git a/src/BuildFlow.Host/BuildFlow.Host.csproj b/src/BuildFlow.Host/BuildFlow.Host.csproj index 45f4e24..2f6957f 100644 --- a/src/BuildFlow.Host/BuildFlow.Host.csproj +++ b/src/BuildFlow.Host/BuildFlow.Host.csproj @@ -25,6 +25,8 @@ + + diff --git a/src/BuildFlow.Host/BuildFlowHostModule.cs b/src/BuildFlow.Host/BuildFlowHostModule.cs index cdb0eda..f9b57a6 100644 --- a/src/BuildFlow.Host/BuildFlowHostModule.cs +++ b/src/BuildFlow.Host/BuildFlowHostModule.cs @@ -17,6 +17,8 @@ using IM.Domain.Common; using IM.Infrastructure; using Workflow.Domain.Common; using BuildFlow.Platform.Application; +using Scripting.Application; +using Scripting.Infrastructure; using Volo.Abp; using Volo.Abp.Modularity; using Workflow.Application; @@ -35,7 +37,9 @@ namespace BuildFlow.Host; typeof(IMApplicationModule), typeof(IMInfrastructureModule), typeof(WorkflowApplicationModule), - typeof(WorkflowInfrastructureModule))] + typeof(WorkflowInfrastructureModule), + typeof(ScriptingApplicationModule), + typeof(ScriptingInfrastructureModule))] /// /// BuildFlow 主 Host 的 ABP 模块。通过 [DependsOn] 聚合 platform/rag/file/im/workflow 五个业务模块的 /// Application + Infrastructure 层,统一注册跨切面基础设施(OTel/FastEndpoints/SignalR/JWT/CORS/ diff --git a/src/modules/scripting/Application/Scripting.Application.csproj b/src/modules/scripting/Application/Scripting.Application.csproj new file mode 100644 index 0000000..ee8b86d --- /dev/null +++ b/src/modules/scripting/Application/Scripting.Application.csproj @@ -0,0 +1,18 @@ + + + net10.0 + enable + enable + true + + + + + + + + + + + + diff --git a/src/modules/scripting/Application/ScriptingApplicationModule.cs b/src/modules/scripting/Application/ScriptingApplicationModule.cs new file mode 100644 index 0000000..adee835 --- /dev/null +++ b/src/modules/scripting/Application/ScriptingApplicationModule.cs @@ -0,0 +1,22 @@ +using BuildFlow.Platform.Application; +using Microsoft.Extensions.DependencyInjection; +using Scripting.Infrastructure; +using Volo.Abp.Modularity; + +namespace Scripting.Application; + +/// +/// Scripting Application 层模块。注册 MediatR(自动发现 Handler)。 +/// Roslyn 脚本引擎等服务注册留待 T3。 +/// +[DependsOn(typeof(ScriptingInfrastructureModule), typeof(PlatformApplicationModule))] +public class ScriptingApplicationModule : AbpModule +{ + public override void ConfigureServices(ServiceConfigurationContext context) + { + var services = context.Services; + var assembly = typeof(ScriptingApplicationModule).Assembly; + + services.AddMediatR(cfg => cfg.RegisterServicesFromAssembly(assembly)); + } +} diff --git a/src/modules/scripting/Domain/Scripting.Domain.csproj b/src/modules/scripting/Domain/Scripting.Domain.csproj new file mode 100644 index 0000000..c18b4b0 --- /dev/null +++ b/src/modules/scripting/Domain/Scripting.Domain.csproj @@ -0,0 +1,14 @@ + + + net10.0 + enable + enable + true + + + + + + + + diff --git a/src/modules/scripting/Domain/ScriptingDomainModule.cs b/src/modules/scripting/Domain/ScriptingDomainModule.cs new file mode 100644 index 0000000..b1014d6 --- /dev/null +++ b/src/modules/scripting/Domain/ScriptingDomainModule.cs @@ -0,0 +1,8 @@ +using Volo.Abp.Modularity; + +namespace Scripting.Domain; + +/// +/// Scripting Domain 层模块,纯声明性模块。 +/// +public class ScriptingDomainModule : AbpModule; diff --git a/src/modules/scripting/Infrastructure/Scripting.Infrastructure.csproj b/src/modules/scripting/Infrastructure/Scripting.Infrastructure.csproj new file mode 100644 index 0000000..961505d --- /dev/null +++ b/src/modules/scripting/Infrastructure/Scripting.Infrastructure.csproj @@ -0,0 +1,22 @@ + + + net10.0 + enable + enable + true + + + + + + + + runtime; build; native; contentfiles; analyzers; buildtransitive + all + + + + + + + diff --git a/src/modules/scripting/Infrastructure/ScriptingInfrastructureModule.cs b/src/modules/scripting/Infrastructure/ScriptingInfrastructureModule.cs new file mode 100644 index 0000000..4ac3242 --- /dev/null +++ b/src/modules/scripting/Infrastructure/ScriptingInfrastructureModule.cs @@ -0,0 +1,11 @@ +using Scripting.Domain; +using Volo.Abp.Modularity; + +namespace Scripting.Infrastructure; + +/// +/// Scripting Infrastructure 层模块。T1 骨架:仅声明对 Domain 的依赖, +/// DbContext 等基础设施注册留待后续任务。 +/// +[DependsOn(typeof(ScriptingDomainModule))] +public class ScriptingInfrastructureModule : AbpModule;