欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

Activiti进阶—分配组任务  

程序员文章站 2022-06-10 10:08:22
...
链接: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);