flowable 多实例动态添加人
1.背景:
由于在日常情况下,我们的多实例要动态添加人员的场景,有没有这样的api呢?新的flowable有这样的功能。
2.具体实现
xml
<userTask id="miTasks" name="My Task ${loopCounter}" activiti:assignee="${assignee}"><multiInstanceLoopCharacteristics isSequential="false"><loopDataInputRef>assigneeList</loopDataInputRef><inputDataItem name="assignee" /><completionCondition>${nrOfCompletedInstances/nrOfInstances >= 0.6 }</completionCondition></multiInstanceLoopCharacteristics></userTask>
3.具体实现
List<String> assigneeList = Arrays.asList("kermit", "gonzo", "mispiggy", "fozzie", "bubba");
String procId = runtimeService.startProcessInstanceByKey("miParallelUserTasksBasedOnCollection", CollectionUtil.singletonMap("assigneeList", assigneeList)).getId();List<org.flowable.task.api.Task> tasks = taskService.createTaskQuery().orderByTaskAssignee().asc().list();
assertEquals(5, tasks.size());
assertEquals("bubba", tasks.get(0).getAssignee());
assertEquals("fozzie", tasks.get(1).getAssignee());
assertEquals("gonzo", tasks.get(2).getAssignee());
assertEquals("kermit", tasks.get(3).getAssignee());
assertEquals("mispiggy", tasks.get(4).getAssignee());runtimeService.addMultiInstanceExecution("miTasks", procId, Collections.singletonMap("assignee", (Object) "johndoe"));
tasks = taskService.createTaskQuery().orderByTaskAssignee().asc().list();
assertEquals(6, tasks.size());
说明:
runtimeService.addMultiInstanceExecution(要加签的节点id,流程实例id, Collections.singletonMap(“单个对象的别名”, (Object) “对象值”));
flowable 多实例动态添加人相关推荐
- (转)AS3函数动态添加实例属性
var shot:Function=function():void{ shot['times']++; trace("shot():times:"+ ...
- android动态加载宽高,动态添加LinearLayout的高度实例
实例如下: WindowManager wm = (WindowManager) getContext() .getSystemService(Context.WINDOW_SERVICE); int ...
- php动态删除输入框,jQuery实现动态添加和删除input框实例代码
本文实例为大家分享了jQuery实现动态添加和删除input框的具体代码,供大家参考,具体内容如下 选项 $(function(){ // 添加选项 $("#opbtn").cli ...
- layui option 动态添加_layui select动态添加option的实例
html 产品类别 轻松融 容易融 快乐融 增加产品类别 js //重新渲染表单 function renderForm(){ layui.use('form', function(){ var fo ...
- html5表单动态添加,js动态添加表单实例
前段时间因为域名关系网站停了一段时间.别的不多说了,我前端结合php做一个批量建栏目的模块,用到这个 对了下点,这个添加input动态添加 name也是可设成不同有,我用的是"text&qu ...
- html中列表前面的序号带圆圈,js动态添加带圆圈序号列表的实例代码
1.先在body里面添加ul标签 2.通过js获取到id等于list的标签 定义一个空字符串用来连接增加的标签,并展示出来 如图的js代码展示的是前三个颜色不同,余下的颜色相同的圆圈序号 functi ...
- Android动态添加5个图片资,Android绘图实例(Bitmmap,Canvas,Pain的使用)动态的在图片上添加文字(canvas.drawText)...
近些天学习图像处理,今天看见了一段代码中有Bitmap时,找了些Bitmap的资料,有查看了与之有关的绘图类. BitMap代表一张位图,BitmapDrawable里封装的图片就是一个Bitmap对 ...
- 给一个正在运行的Docker容器动态添加Volume
给一个正在运行的Docker容器动态添加Volume 本文转自:http://dockone.io/article/149 [编者的话]之前有人问我Docker容器启动之后还能否再挂载卷,考虑到mnt ...
- django 集成个推_Django动态添加定时任务之djangocelery的使用
定时任务和周期任务在我们日常工作中应用广泛,例如定时发布.周期巡检等,通常我们会借助Linux下的Crontab来实现,但如何将这一功能搬进我们自研的运维系统呢?借助django-celery即可轻松 ...
最新文章
- 【Java基础】集合
- 聪明的程序员用Delphi,真正的程序员用C++,偷懒的程序员用PowerShell
- 半径对氢原子基态能级的影响H
- ps aux指令詳解
- OracleTimesten使用方法总结
- JAX-WS Web Service
- 2019 ICPC World Finals Problem B. Beautiful Bridges
- Linux free 命令详解
- c ++查找字符串_C ++结构| 查找输出程序| 套装3
- 【STM32】STM32CubeMX教程二--基本使用(新建工程点亮LED灯)
- IntelliJ中可能的东西在Eclipse中是不可能的?
- Python3中一维数组和二维数组的输入
- 洛谷OJ - P1156 - 垃圾陷阱
- 微信小程序-轮播图实现
- leetcode复原IP地址
- 欲为苍鹰,勿与鸟鸣, 欲为强者,莫与弱争!
- 无人机倾斜摄影测量土方计算
- 前端后端的区别(超详细版)
- thinkpadt410接口介绍_thinkpad T410的扩展插口!
- 前端程序员兼职副业平台推荐