Activit已办任务查询功能:
//获得当前用户
User user = (User) SecurityUtils.getSubject().getSession()
.getAttribute("userInfo");
//获得当前用户处理的历史流程实例
List<HistoricTaskInstance> hisTaskList = historyService.createHistoricTaskInstanceQuery().taskAssignee(user.getId()).orderByTaskId().desc().list();
StringBuffer sbTask = new StringBuffer("");
Set<String> processInstanceIds = new HashSet<String>();
for(HistoricTaskInstance t : hisTaskList){
String processId = t.getProcessInstanceId();
sbTask.append("'").append(processId).append("',");
if(!processInstanceIds.contains(processId)){
processInstanceIds.add(processId);
}
}
System.out.println("***********sbTask="+sbTask.toString());
StringBuffer sbProcess = new StringBuffer("");
//根据历史流程实例,获得业务key
List<HistoricProcessInstance> hisProcessList = historyService.createHistoricProcessInstanceQuery().processInstanceIds(processInstanceIds).orderByProcessInstanceId().desc().list();
for(HistoricProcessInstance p : hisProcessList){
String bizKey = p.getBusinessKey();
sbProcess.append("'").append(bizKey).append("',");
}
System.out.println("***********sbProcess="+sbProcess.toString());