feat(flow): 新增驳回到发起人功能

- 在ModelUtil重构开始节点结构,添加root UserTask节点
- 新增RootTaskCreateListener处理驳回到发起人场景
- 新增RootTaskHandler解析发起人执行人
- 在ApproveServiceTask添加TO_START驳回处理逻辑
- 新增ProcessInstanceRecordVo包含驳回状态信息
- 在TaskService添加resubmitTask接口处理重新提交
- 在ProcessTaskController添加resubmitTask接口
This commit is contained in:
PIGCLOUD committed 2025-12-28 11:25:38 +08:00
1 parent 0ad5864476
commit 16a7f9309f
10 files changed
+377 -8

No files matched your search

@@ -50,6 +50,16 @@ public class ProcessInstanceConstant {
*/
public static final String USER_TASK_REFUSE_TYPE_TO_NODE = "TO_NODE";
/**
* 拒绝处理策略:驳回到发起人 审批人拒绝后,流程跳转回发起人节点,发起人可重新编辑提交
*/
public static final String USER_TASK_REFUSE_TYPE_TO_START = "TO_START";
/**
* 流程变量:驳回到发起人标识 用于标记流程实例是否处于驳回待重新提交状态
*/
public static final String REJECT_TO_STARTER_VAR = "rejectToStarter";
/**
* 多人审批模式:会签 所有审批人都必须同意才能通过,任何一人拒绝则不通过
*/
@@ -0,0 +1,38 @@
package com.pig4cloud.pigx.flow.vo;
import com.pig4cloud.pigx.flow.entity.ProcessInstanceRecord;
import lombok.Data;
import lombok.EqualsAndHashCode;
/**
* 流程实例记录视图对象
* <p>
* 继承自ProcessInstanceRecord实体类,用于扩展查询返回的额外信息。
* 包含流程实例的驳回状态等运行时信息。
* </p>
*
* @author pigx
*/
@Data
@EqualsAndHashCode(callSuper = true)
public class ProcessInstanceRecordVo extends ProcessInstanceRecord {
/**
* 是否驳回到发起人状态
* <p>
* true表示流程已被驳回到发起人,等待发起人重新编辑提交;
* false或null表示流程正常运行中
* </p>
*/
private Boolean rejectToStarter;
/**
* 重新提交的任务ID
* <p>
* 当rejectToStarter为true时,此字段保存发起人节点(root)的任务ID,
* 用于前端调用重新提交接口
* </p>
*/
private String resubmitTaskId;
}