status: implement created: 2026-05-23 complexity: 中等
当前流程办理页默认展示同意、驳回、转办,并且审批意见固定必填。业务需要按审批节点控制办理人可执行的动作,并配置办理时是否必须签名、是否必须填写审批意见。
目标:
相关文件:
forge-admin-ui/src/components/bpmn/NodePropertiesPanel.vue:节点属性配置,当前只维护 BPMN XML 属性。forge-admin-ui/src/views/flow/todo.vue:待办审批抽屉,当前固定要求审批意见,并展示同意/驳回/转办。forge-admin-ui/src/api/flow.js:流程任务 API。forge/forge-framework/forge-plugin-parent/forge-plugin-flow/src/main/java/.../FlowTaskServiceImpl.java:审批通过、驳回、转办、任务表单信息。forge/forge-flow/forge-flow-server/src/main/java/.../FlowTaskController.java:任务办理接口。forge/db/migration/:正式 Flyway 迁移脚本。已有能力:
TaskFormInfo 已返回 allowDelegate、allowReject、allowRejectToStart。FlowNodeConfig 已有转办/转交/加签/减签/驳回等部分字段,但设计器主链路主要通过 BPMN XML 保存节点属性。FlowInstanceService 已支持按流程实例终止、回退到指定活动、任务转派。在用户任务节点增加“办理控制”配置:
保存到 BPMN 的 flowable:* 扩展属性,同时后端兼容 sys_flow_node_config 字段。
待办抽屉:
requireComment 决定是否必填。requireSignature 决定是否显示并必填。接口侧:
approve 校验允许通过、审批意见、签名。reject 校验允许拒绝、审批意见、签名。delegate 校验允许转办。return 校验允许退回,并退回上一已完成用户任务。terminate 校验允许终结流程,并终止当前流程实例。数据库迁移新增:
sys_flow_node_config.allow_approvesys_flow_node_config.allow_returnsys_flow_node_config.allow_terminatesys_flow_node_config.require_signaturesys_flow_node_config.require_commentsys_flow_task.signatureapproved=false 变量。flowable:* 属性,也可来自 sys_flow_node_config,节点配置表优先级高于 BPMN。mvn -pl forge-flow/forge-flow-server -am compile -DskipTests 或可编译覆盖 flow 模块的命令。source ~/.nvm/nvm.sh && nvm use v20.19.0 && cd forge-admin-ui && pnpm build。