Skip to content

审批加签、减签 ​

这篇解决什么 ​

办理人把当前任务临时插进其他审批人:向前加签先让别人批,向后加签自己批完再让别人批。读完能对上 before / after、scopeType、子任务,以及减签为什么只能删加签出来的任务。

默认端口 48080,管理端前缀 /admin-api。PC 开发页 http://127.0.0.1:5800。按钮在待办详情,节点操作里要打开「加签」。和 转办、委派、抄送 不是同一套接口。

示意图:加签不改流程图。运行时在当前用户任务下挂子任务,用 scopeType 记住方向。

从哪改 ​

名称说明仓库路径
加签接口PUT /bpm/task/create-signruoyi-office/yudao-module-bpm/.../controller/admin/task/BpmTaskController.java
减签接口DELETE /bpm/task/delete-sign同上
子任务列表GET /bpm/task/list-by-parent-task-id同上
实现createSignTask / deleteSignTask.../service/task/BpmTaskServiceImpl.java
方向枚举before / afteryudao-module-bpm-api/.../enums/task/BpmTaskSignTypeEnum.java
入参id、type、userIds、reason.../vo/task/BpmTaskSignCreateReqVO.java
权限bpm:task:update 或当前任务参与人@PreAuthorize
PC 按钮待办详情「加签」ruoyi-office-vben/apps/web-antd/src/views/bpm/processInstance/detail/modules/operation-button.vue
前端 APIsignCreateTask / signDeleteTask.../src/api/bpm/task/index.ts
操作开关OperationButtonType.ADD_SIGN.../simple-process-design/consts.ts
移动端加签 / 减签页ruoyi-office-uniapp/src/pages-bpm/processInstance/detail/add-sign/

加签不是改模型

加签人不会写进 simpleModel 或 BPMN。下次再发起同一流程,不会自动带上这次加的人。要固定多一级审批,去设计器加节点。

向前和向后 ​

BpmTaskSignTypeEnum 只有两个值。同一任务不能同时存在两种方向。

示意图:当前办理人是 A。向前插入 C;向后追加 B。节点要等整串子任务走完才算完成。

名称说明仓库路径
before当前任务 assignee 清空、owner 记下原办理人,状态改 WAITcreateSignTask
after当前人继续批;子任务先写 owner,状态 WAIT,等父任务通过再激活同上
scopeType记在运行时任务上,完成时用来收口父任务ACT_RU_TASK
评论BpmCommentTypeEnum.ADD_SIGN意见时间线

向前:子任务都通过后 resolveTask,把 owner 还回 assignee,A 才能继续批。向后:A 通过后,才轮到加签人;加签人都通过,父任务才真正完成。

校验失败:

名称说明仓库路径
人选不存在TASK_SIGN_CREATE_USER_NOT_EXISTErrorCodeConstants
方向冲突已有向前就不能向后,反之亦然TASK_SIGN_CREATE_TYPE_ERROR
人重复同一节点现有 assignee / owner 不能再加TASK_SIGN_CREATE_USER_REPEAT

减签:TASK_SIGN_DELETE_NO_PARENT,只能删加签生成的子任务。详情里的 children 就是这层子任务。

待办详情加签

本系统截图:用车申请待办详情。底栏在通过 / 不通过旁边就是加签;点开后选处理人和向前 / 向后。

按钮从哪来 ​

SIMPLE 节点默认打开加签,办理人、抄送人默认关掉。BPMN 用户任务在「操作按钮」里同样有这一项。运行时详情按节点配置决定显不显示,不是所有待办都能加签。

加签人审批不通过,根任务也会标不通过,意见写成「加签任务不通过」,避免前端把取消态藏掉后看不出原因。

配置与操作 ​

管理员在节点「操作按钮」打开加签,SIMPLE 默认开、办理人/抄送人默认关。发布后,办理人在待办详情选处理人和向前 / 向后。

减签只能删加签出来的子任务。同一节点不能先向前再向后。运行中加人用这一套,不要改模型 approveMethod 充数。

开启见 流程功能设计。截图见上文待办详情。

相关篇 ​

联系我们

获取报价、演示和二开方案

微信咨询二维码

微信咨询

17156169080

添加时备注「RuoYi Office」

在线体验商业版