纯个人大白话--flowable多实例加签与减签

1. 加签与减签的含义

对于flowable官方文档来说,并没有加签与减签的说法,这个东西其实是后来的开发人员说出来的。

谈谈我对于这个加签减签的理解:

加签:一种是多实例节点中添加新处理人、一种是委派(A委派给B处理,B处理完后回到A这,这再complete一次) 减签:多实例删除某些处理人。

2. 相关实现(极简版)

这里就不贴详细的代码了,只贴出来最主要的代码。

2.1 加签(多实例)

javascript 复制代码
String activityId = task.getTaskDefinitionKey();
Map<String, Object> executionVariables = new HashMap<>();
// 需要加签的处理人用户id,如果是多个,外面包个循环即可
executionVariables.put("assignee", "10");
// activityId:节点id;parentExecutionId:父执行id;executionVariables:执行参数
runtimeService.addMultiInstanceExecution(activityId, miExecution.getParentId(), executionVariables);

2.2 加签(委派)

css 复制代码
// A委派任务给B(newAssigneeId)
//ACT_RU_TASK 数据变化,owner -> A ,assignee A-> B ,DELEGATION_ 变更为 PENDING
taskService.delegateTask(taskId, newAssigneeId)


//B解决任务,B不能调用complete方法,因为拥有者不是B,而是A。
//ACT_RU_TASK 数据变化,owner -> A ,assignee A-> A ,DELEGATION_ 变更为 RESOLVED
taskService.resolveTask(taskId);

//A 完成任务,走到下一个节点
taskService.complete(taskId);

2.3 减签

arduino 复制代码
//原方法
deleteMultiInstanceExecution(String executionId, boolean executionIsCompleted)

runtimeService.deleteMultiInstanceExecution(task.getExecutionId(), false);
相关推荐
勇哥java实战分享21 小时前
程序员的明天:AI 时代下的行业观察与个人思考
后端
掘金码甲哥1 天前
超性感的轻量级openclaw平替,我来给你打call
后端
用户8356290780511 天前
无需 Office:Python 批量转换 PPT 为图片
后端·python
啊哈灵机一动1 天前
使用golang搭建一个nes 模拟器
后端
间彧1 天前
SpringBoot + ShardingSphere 读写分离实战指南
后端
砍材农夫1 天前
订单超时
后端
树獭叔叔1 天前
06-大模型如何"学习":从梯度下降到AdamW优化器
后端·aigc·openai
得鹿1 天前
MySQL基础架构与存储引擎、索引、事务、锁、日志
后端
程序员飞哥1 天前
Block科技公司裁员四千人,竟然是因为 AI ?
人工智能·后端·程序员
JavaEdge在掘金1 天前
Claude Code 直连 Ollama / LM Studio:本地、云端开源模型都能跑
后端