【入门篇】Activiti查询指定流程定义下待办task

来源:互联网 发布:linux cat 多个文件 编辑:程序博客网 时间:2024/06/08 10:02

需求

某人登录系统后,需要对他待办的任务进行处理

涉及到的表

act_ru_task

方案

根据流程定义key和任务人,依赖taskservice服务,查询act_ru_task表待办内容

代码

//查询当前用户的待办任务@Testpublic void findPersonalTaskList(){//得到runtimeServiceRuntimeService runtimeService = processEngine.getRuntimeService();//查询任务使用TaskServiceTaskService taskService = processEngine.getTaskService();//流程定义key(流程定义的标识)String processDefinitionKey = "purchasingflow";//采购流程标识//任务负责人String assignee = "zhangsan";//创建查询对象TaskQuery taskQuery = taskService.createTaskQuery();//设置查询条件taskQuery.taskAssignee(assignee);//指定流程定义key,只查询某个流程的任务taskQuery.processDefinitionKey(processDefinitionKey);//获取查询列表List<Task> list = taskQuery.list();for (Task task : list) {//流程实例idString processInstanceId = task.getProcessInstanceId();//根据流程实例id找到流程实例对象ProcessInstance processInstance = runtimeService.createProcessInstanceQuery().processInstanceId(processInstanceId).singleResult();//从流程实例对象获取bussinesskeyString businessKey = processInstance.getBusinessKey();//根据businessKey查询业务系统,获取相关的业务信息System.out.println("流程实例id:" + task.getProcessInstanceId());System.out.println("任务id:" + task.getId());System.out.println("任务标识:" + task.getTaskDefinitionKey());System.out.println("任务负责人:" + task.getAssignee());System.out.println("任务名称:" + task.getName());System.out.println("任务创建时间:" + task.getCreateTime());}}


阅读全文
0 0
原创粉丝点击