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;