feat(custom-function): 添加表单定义ID支持

- 在CreateCustomFunctionRequest中添加FormDefinitionId字段
- 修改CreateCustomFunctionEndpoint以传递FormDefinitionId参数
- 在GetCustomFunctionListRequest中添加FormDefinitionId过滤条件
- 更新GetCustomFunctionListEndpoint以支持按表单定义ID查询
- 配置数据库初始化器使用蛇形命名约定
This commit is contained in:
xiangning 2026-07-05 10:24:03 +08:00
parent baaff8db63
commit d45d655a5a
5 changed files with 11 additions and 2 deletions

View File

@ -128,6 +128,7 @@ public static class DatabaseInitializer
var db = sp.GetRequiredService<T>();
var options = new DbContextOptionsBuilder<T>()
.UseNpgsql(db.Database.GetConnectionString())
.UseSnakeCaseNamingConvention()
.ConfigureWarnings(w => w.Ignore(RelationalEventId.PendingModelChangesWarning))
.Options;
await using var tmp = (T)Activator.CreateInstance(typeof(T), options)!;

View File

@ -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);
}

View File

@ -2,6 +2,7 @@ namespace BuildFlow.Host.Endpoints.Workflow.BuildFlow.CustomFunctions;
/// <summary>创建自定义函数请求。</summary>
public sealed record CreateCustomFunctionRequest(
Guid? FormDefinitionId,
string Name,
string DisplayName,
string? Description,

View File

@ -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);
}

View File

@ -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; }
}