链接:
http://blog.csdn.net/zjx86320/article/details/50412263
1、查询组任务
// 任务办理人
String candidateUser = "小A";
List<Task> list = processEngine.getTaskService()//
.createTaskQuery()//
.taskCandidateUser(candidateUser)// 参与者,组任务查询
.list();
if (list != null && list.size() > 0) {
for (Task task : list) {
System.out.println("任务ID:" + task.getId());
System.out.println("任务的办理人:" + task.getAssignee());
System.out.println("任务名称:" + task.getName());
System.out.println("任务的创建时间:" + task.getCreateTime());
System.out.println("流程实例ID:" + task.getProcessInstanceId());
System.out.println("#######################################");
}
}
2、查询正在执行的组任务列表
// 任务ID
String taskId = "3708";
List<IdentityLink> list = processEngine.getTaskService()//
.getIdentityLinksForTask(taskId);
if (list != null && list.size() > 0) {
for (IdentityLink identityLink : list) {
System.out.println("任务ID:" + identityLink.getTaskId());
System.out.println("流程实例ID:"
+ identityLink.getProcessInstanceId());
System.out.println("用户ID:" + identityLink.getUserId());
System.out.println("工作流角色ID:" + identityLink.getGroupId());
System.out.println("#########################################");
}
}
3、查询我的个人任务
//任务办理人
String assignee = "小A";
List<Task> list = processEngine.getTaskService()//
.createTaskQuery()//
.taskAssignee(assignee)//个人任务的查询
.list();
if(list!=null && list.size()>0){
for(Task task:list){
System.out.println("任务ID:"+task.getId());
System.out.println("任务的办理人:"+task.getAssignee());
System.out.println("任务名称:"+task.getName());
System.out.println("任务的创建时间:"+task.getCreateTime());
System.out.println("流程实例ID:"+task.getProcessInstanceId());
System.out.println("#######################################");
}
}
4、查询组任务
//任务办理人
String candidateUser = "小A";
List<Task> list = processEngine.getTaskService()//
.createTaskQuery()//
.taskCandidateUser(candidateUser)//参与者,组任务查询
.list();
if(list!=null && list.size()>0){
for(Task task:list){
System.out.println("任务ID:"+task.getId());
System.out.println("任务的办理人:"+task.getAssignee());
System.out.println("任务名称:"+task.getName());
System.out.println("任务的创建时间:"+task.getCreateTime());
System.out.println("流程实例ID:"+task.getProcessInstanceId());
System.out.println("#######################################");
}
}
5、向组任务中添加成员
//任务ID
String taskId = "6308";
//新增组任务的成员
String userId = "如来";
processEngine.getTaskService()//
.addCandidateUser(taskId, userId);
6、向组任务中删除成员
//任务ID
String taskId = "6308";
//新增组任务的成员
String userId = "猪八戒";
processEngine.getTaskService()//
.deleteCandidateUser(taskId, userId);
分享到:
相关推荐
Activiti进阶.pdf
Activiti 学习笔记13:分配组任务
章节二:Activiti进阶 Activiti流程实例 Activiti个人任务处理 Activiti使用流程变量 Activiti处理任务候选人 Activiti网关的使用 章节三:Activiti整合 Activiti和Spring的整合 Activiti和SpringBoot的整合 案例
资料-最新工作流引擎Activiti7基础与进阶
Activiti 学习笔记12:个人任务
2018年Java Activiti6.x 视频整合Spring Boot/JPA/WEB框架实战 01 Activiti介绍与搭建开发环境 02 运行官方例子 ...38 Activiti进阶(1)Activiti表单 39 Activiti进阶(2)流程图与流程操作 40 实战案例
Activiti12流程跟踪任务节点和线高亮显示,能标记流程所走过节点和线为红色,未走过的节点和线不标记,支持驳回和子流程。
03-Activiti7流程进阶1.7z
Activiti多实例任务实现会签.
在流程定义中在任务结点的assignee固定设置任务负责人,在流程定义时将参与者固定设置在.bpmn文件中,如果临时任务负责人变更则需要修改流程定义,系统可扩展性差。针对这种情况可以给任务设置多个候选人,可以从...
activiti-选择代理人候选人候选组。扩展activiti流程设计器,更改人员和角色组的输入为选择方式。可自定义人员和角色数据接口地址,且可分页。使用简单,直接替换两个文件即可
在原有Activiti的教程资源上对零散的源码进行了集中整理,并增加了pdm、IDE集成Activiti插件等文件...06 - Activiti任务分配 1.个人任务分配 2.多用户任务分配 3.内置用户组设计表以及IdentityService 4.组任务分配
activiti学习-使用activiti多实例任务实现会签
activiti没有撤回,由于业务的需求需要实现撤回,在参考别人代码后以两种方式实现了任意节点的跳转。代码真实可用,如有问题可联系我 第一种方式: 1、获取当前节点,获取跳转节点 2、获取节点的所有流出流向,把...
在实际的BPM集成开发过程中,Liferay和Activiti这两个异构的系统之间,用户、组的同步需求非常重要,用来实现签收组的概念,比如指定签收组、会签、抢签都需要用到。 Activiti可以通过自定义实现SessionFactory,...
最新工作流引擎Activiti7基础与进阶day01
最新工作流引擎Activiti7基础与进阶day04
最新工作流引擎Activiti7基础与进阶day02
最新工作流引擎Activiti7基础与进阶day03
最新工作流引擎Activiti7基础与进阶day05