已办任务
一句话:我处理完的任务归档——每条留着我当时的审批结论与耗时;刚批完就反悔、流程还没往下走时,还能用「撤回」把任务捞回来重批。
功能在哪
- 菜单路径:工作流程 → 审批中心 → 已办任务
- 地址栏路由:
/bpm/task/done - 主要权限:
bpm:task:query
界面认识
| 区域 | 作用 | 常用操作 |
|---|---|---|
| 查询区 | 任务名称搜索 / 流程分类 / 审批状态 / 高级筛选(所属流程 + 发起时间) | 「搜索」;高级筛选弹层内「确认」 |
| 列表 | 序号 / 流程 / 摘要 / 发起人 / 发起时间 / 当前任务 / 任务开始时间 / 任务结束时间 / 操作 | 行内「撤回」「历史」 |


本页有两个筛选条件是不生效的(实测)
「流程分类」和高级筛选里的「所属流程」在后端被静默忽略——选了、填了,结果集不变。真正有效的筛选只有:任务名称、审批状态、发起时间。需要按流程精确定位时,用任务名称搜或去管理端流程任务页。
本页不显示「发起人」节点的行
管理端流程任务页会把流程的发起节点也列成一行,本页剔除发起人节点,只留我真正审批过的任务——所以同一流程在两页的行数可能不同。
常用操作
历史:回看这条任务的流程档案
行内「历史」进入流程详情页(只读四页签:审批详情 / 流程图 / 流转记录 / 流程评论),流转记录里能看到我当时的审批意见与附件。
撤回:批完反悔,把任务捞回来
行内「撤回」没有二次确认弹窗,点击直接调用接口。撤回成功的效果:下一节点的进行中任务被取消(原因记「前一节点撤回」),任务回到我这里重新审批。
撤回按钮恒显示,但后端有四道校验,不满足直接报错
- 是我自己的已办任务;
- 流程仍在审批中(已结束的流程撤不回);
- 模型开启了「允许审批人撤回任务」(
allowWithdrawTask),否则报「撤回失败,此流程不允许撤回操作!」; - 下一节点的任务存在且都未处理完,否则报「撤回失败,下一节点不满足撤回条件!」(下家已经批了就不能撤)。
模型的「允许审批人撤回任务」开关有个上游坑:每次打开模型向导都会被强制重置为关
模型向导的扩展设置里,「允许审批人撤回任务」开关在每次打开向导时都被代码强制重置为关闭——也就是说任何一次模型编辑 + 保存,都会静默关掉撤回能力,之后所有审批人点撤回都报「此流程不允许撤回操作」。依赖撤回的流程,每次改完模型都要回扩展设置里重新打开这个开关再保存。
视角对照
| 视角 | 看到什么 |
|---|---|
审批人 docadmin | 自己处理完的任务(含审批意见与耗时);满足条件可撤回 |
发起人 salesman01 | 自己发起的单子不在这里(在我的流程);若自己也审批过别的单子,才会出现在本页 |
进阶
- 列表的「当前任务」列显示流程现在走到哪个节点,配合任务结束时间可以判断「我批完之后流程有没有继续走」;
- 撤回与我的流程的取消是两回事:撤回是审批人把已处理的任务捞回重批、流程继续活着;取消是发起人 / 管理员终止整条流程;
- 审批状态字典:审批中 / 审批通过 / 审批不通过 / 已取消;本页行的状态是我那条任务的结论,不是整条流程的状态;
- 撤回能力的开关位置:模型向导 → 扩展设置(「允许撤销审批中的申请」「允许审批人撤回任务」两项),见流程模型。
常见问题
Q:为什么这里没有「发起人」节点的行? A:本页剔除发起人节点,只列真正审批过的任务;要看全量节点行去管理端流程任务。
Q:选了流程分类 / 填了所属流程,列表没变化? A:这两个条件后端不生效(见界面认识的警告),用任务名称、审批状态、发起时间筛。
Q:点撤回报「撤回失败,此流程不允许撤回操作!」? A:模型的「允许审批人撤回任务」是关的——而且注意它每次打开模型向导都会被强制重置为关(见 danger 提示),需要管理员去模型扩展设置里重新打开。
Q:点撤回报「撤回失败,下一节点不满足撤回条件!」? A:下一节点的任务已经有人处理完了,撤不回;此时只能让后续节点自行处理或由管理员干预。
Q:撤回没有确认框,误点了怎么办? A:撤回成功后任务回到你的待办,重新审批即可;流程数据不丢。但下一节点若已有人填写过处理意见,那些任务会被取消留痕。
