《Activiti 深入BPM工作流》-----如何实现一工作任务的查询?
一. 问题:
如何进行一任务的查询和处理?
通过上一篇博文"如何进行activiti流程的部署?"中说明, 一个流程成功部署后, 就可以通过工作流管理业务流程了, 也是就
是说部署的流程可以进行请假等流程的使用了.
二. 详情
实现查询一个流程详细code如下:
/*** 如何进行任务查询*/@Testpublic void findPersonTaskList() {// 任务负责人String assignee = "zhangsan";// 创建TaskServiceProcessEngineConfiguration configuration = ProcessEngineConfiguration.createProcessEngineConfigurationFromResource("activiti.cfg.xml");ProcessEngine processEngine = configuration.buildProcessEngine();TaskService taskService = processEngine.getTaskService();List<Task> list = taskService.createTaskQuery().processDefinitionKey("myProcess_1").taskAssignee(assignee).list();if (list.size() > 0) {for (Task task : list) {System.out.println("流程实例id: " + task.getProcessInstanceId());System.out.println("任务id:" + task.getId());System.out.println("任务负责人:" + task.getAssignee());System.out.println("任务名称:" + task.getName());}} else {System.out.println("任务负责人" + assignee + "无数据!");}}
执行结果如下:
(1)对assignee=“zhangsan” 的人名进行查询, 没有结果显示如下:
(2)在act_ru_task库表中找一个存在的人名, assignee值为: Daniel的进行查询一下:
运行结果成功如下: