From d45d655a5ae8887dd14fa6bd9053e0e1f46062ca Mon Sep 17 00:00:00 2001 From: xiangning Date: Sun, 5 Jul 2026 10:24:03 +0800 Subject: [PATCH] =?UTF-8?q?feat(custom-function):=20=E6=B7=BB=E5=8A=A0?= =?UTF-8?q?=E8=A1=A8=E5=8D=95=E5=AE=9A=E4=B9=89ID=E6=94=AF=E6=8C=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - 在CreateCustomFunctionRequest中添加FormDefinitionId字段 - 修改CreateCustomFunctionEndpoint以传递FormDefinitionId参数 - 在GetCustomFunctionListRequest中添加FormDefinitionId过滤条件 - 更新GetCustomFunctionListEndpoint以支持按表单定义ID查询 - 配置数据库初始化器使用蛇形命名约定 --- src/BuildFlow.Host/Configuration/DatabaseInitializer.cs | 1 + .../CustomFunctions/CreateCustomFunctionEndpoint.cs | 3 ++- .../CustomFunctions/CreateCustomFunctionRequest.cs | 1 + .../CustomFunctions/GetCustomFunctionListEndpoint.cs | 7 ++++++- .../CustomFunctions/GetCustomFunctionListRequest.cs | 1 + 5 files changed, 11 insertions(+), 2 deletions(-) diff --git a/src/BuildFlow.Host/Configuration/DatabaseInitializer.cs b/src/BuildFlow.Host/Configuration/DatabaseInitializer.cs index 43f37b9..1734f23 100644 --- a/src/BuildFlow.Host/Configuration/DatabaseInitializer.cs +++ b/src/BuildFlow.Host/Configuration/DatabaseInitializer.cs @@ -128,6 +128,7 @@ public static class DatabaseInitializer var db = sp.GetRequiredService(); var options = new DbContextOptionsBuilder() .UseNpgsql(db.Database.GetConnectionString()) + .UseSnakeCaseNamingConvention() .ConfigureWarnings(w => w.Ignore(RelationalEventId.PendingModelChangesWarning)) .Options; await using var tmp = (T)Activator.CreateInstance(typeof(T), options)!; diff --git a/src/BuildFlow.Host/Endpoints/workflow/BuildFlow/CustomFunctions/CreateCustomFunctionEndpoint.cs b/src/BuildFlow.Host/Endpoints/workflow/BuildFlow/CustomFunctions/CreateCustomFunctionEndpoint.cs index 8396162..65eb114 100644 --- a/src/BuildFlow.Host/Endpoints/workflow/BuildFlow/CustomFunctions/CreateCustomFunctionEndpoint.cs +++ b/src/BuildFlow.Host/Endpoints/workflow/BuildFlow/CustomFunctions/CreateCustomFunctionEndpoint.cs @@ -24,7 +24,8 @@ public class CreateCustomFunctionEndpoint(IMediator mediator) req.Code, req.InputSchema, req.OutputSchema, - req.TimeoutMs), + req.TimeoutMs, + req.FormDefinitionId), ct); await Send.ResponseAsync(result, 201, ct); } diff --git a/src/BuildFlow.Host/Endpoints/workflow/BuildFlow/CustomFunctions/CreateCustomFunctionRequest.cs b/src/BuildFlow.Host/Endpoints/workflow/BuildFlow/CustomFunctions/CreateCustomFunctionRequest.cs index 78bfa05..cb19326 100644 --- a/src/BuildFlow.Host/Endpoints/workflow/BuildFlow/CustomFunctions/CreateCustomFunctionRequest.cs +++ b/src/BuildFlow.Host/Endpoints/workflow/BuildFlow/CustomFunctions/CreateCustomFunctionRequest.cs @@ -2,6 +2,7 @@ namespace BuildFlow.Host.Endpoints.Workflow.BuildFlow.CustomFunctions; /// 创建自定义函数请求。 public sealed record CreateCustomFunctionRequest( + Guid? FormDefinitionId, string Name, string DisplayName, string? Description, diff --git a/src/BuildFlow.Host/Endpoints/workflow/BuildFlow/CustomFunctions/GetCustomFunctionListEndpoint.cs b/src/BuildFlow.Host/Endpoints/workflow/BuildFlow/CustomFunctions/GetCustomFunctionListEndpoint.cs index 79d330b..8cc7060 100644 --- a/src/BuildFlow.Host/Endpoints/workflow/BuildFlow/CustomFunctions/GetCustomFunctionListEndpoint.cs +++ b/src/BuildFlow.Host/Endpoints/workflow/BuildFlow/CustomFunctions/GetCustomFunctionListEndpoint.cs @@ -18,7 +18,12 @@ public class GetCustomFunctionListEndpoint(IMediator mediator) public override async Task HandleAsync(GetCustomFunctionListRequest req, CancellationToken ct) { var result = await mediator.Send( - new GetCustomFunctionListQuery(req.PageIndex, req.PageSize, req.Status, req.Keyword), + new GetCustomFunctionListQuery( + req.PageIndex, + req.PageSize, + req.Status, + req.Keyword, + req.FormDefinitionId), ct); await Send.OkAsync(result, ct); } diff --git a/src/BuildFlow.Host/Endpoints/workflow/BuildFlow/CustomFunctions/GetCustomFunctionListRequest.cs b/src/BuildFlow.Host/Endpoints/workflow/BuildFlow/CustomFunctions/GetCustomFunctionListRequest.cs index 2c61275..1b503ef 100644 --- a/src/BuildFlow.Host/Endpoints/workflow/BuildFlow/CustomFunctions/GetCustomFunctionListRequest.cs +++ b/src/BuildFlow.Host/Endpoints/workflow/BuildFlow/CustomFunctions/GetCustomFunctionListRequest.cs @@ -9,4 +9,5 @@ public class GetCustomFunctionListRequest public int PageSize { get; set; } = 20; public BuildFlowMetadataStatus? Status { get; set; } public string? Keyword { get; set; } + public Guid? FormDefinitionId { get; set; } }