- 在 ApproveTaskEndpoint 中返回布尔值响应并使用 Send.OkAsync - 在 RejectTaskEndpoint 中返回布尔值响应并使用 Send.OkAsync - 向 BuildFlowButtonActionExecutor 添加 submitForm 动作类型支持 - 实现 SubmitFormAsync 方法处理表单数据提交和保存逻辑 - 添加 ReadGuid 辅助方法解析 JSON 中的 GUID 值 - 更新 RAGStreamEndpoint 中的系统提示词以优化 AI 回答格式 - 为按钮动作执行器添加表单聚合服务和派生服务依赖注入 - 添加单元测试验证提交表单后运行函数的动作链执行流程
33 lines
947 B
C#
33 lines
947 B
C#
using MediatR;
|
|
using Workflow.Application.Features.WorkflowTasks.Commands;
|
|
|
|
namespace BuildFlow.Host.Endpoints.Workflow.WorkflowTask;
|
|
|
|
|
|
/// <summary>
|
|
/// 驳回任务端点。转 Rejected 终态,按 Rejected 边流转(若无则结束实例)。
|
|
/// </summary>
|
|
public class RejectTaskEndpoint : Endpoint<RejectTaskRequest, bool>
|
|
{
|
|
private readonly IMediator _mediator;
|
|
|
|
public RejectTaskEndpoint(IMediator mediator) => _mediator = mediator;
|
|
|
|
public override void Configure()
|
|
{
|
|
Post("/workflow-tasks/{Id}/reject");
|
|
Permissions("workflow-task:reject");
|
|
Summary(s =>
|
|
{
|
|
s.Summary = "Reject a pending task";
|
|
});
|
|
}
|
|
|
|
public override async Task HandleAsync(RejectTaskRequest req, CancellationToken ct)
|
|
{
|
|
var command = new RejectTaskCommand(req.Id, req.UserId, req.Comment);
|
|
await _mediator.Send(command, ct);
|
|
await Send.OkAsync(true, ct);
|
|
}
|
|
}
|