helloworld中已经写了关于部署流程图,查询个人任务,完成个人任务部分。现在添加几个新的实用功能

  1.判断流程是否完成,代码如下

public void isProcessEnd()
{
String processInstanceId = "901";
ProcessInstance pi = processEngine.getRuntimeService()//表示正在执行的流程实例和执行对象
.createProcessInstanceQuery()//创建流程实例查询
.processInstanceId(processInstanceId)//使用流程实例ID查询
.singleResult();
if(pi==null){
System.out.println("流程已经结束");
}
else{
System.out.println("流程没有结束");
}
}

  这里根据processInstanceId判断正在执行的任务中是否有该条记录,若有则没有结束,否则已经结束。此外,还可以根据历史任务中是否有endtime来判断

  2.查询历史任务,代码如下

  

public void findHistoryTask(){
String taskAssignee = "张三";
List<HistoricTaskInstance> list = processEngine.getHistoryService()//与历史数据(历史表)相关的Service
.createHistoricTaskInstanceQuery()//创建历史任务实例查询
.taskAssignee(taskAssignee)//指定历史任务的办理人
.list();
if(list!=null && list.size()>0){
for(HistoricTaskInstance hti:list){
System.out.println(hti.getId()+" "+hti.getName()+" "+hti.getProcessInstanceId()+" "+hti.getStartTime()+" "+hti.getEndTime()+" "+hti.getDurationInMillis());
System.out.println("################################");
}
}
}

  3.查询历史流程实例

  代码如下

public void findHistoryProcessInstance(){
String processInstanceId = "901";
HistoricProcessInstance hpi = processEngine.getHistoryService()//与历史数据(历史表)相关的Service
.createHistoricProcessInstanceQuery()//创建历史流程实例查询
.processInstanceId(processInstanceId)//使用流程实例ID查询
.singleResult();
System.out.println(hpi.getId()+" "+hpi.getProcessDefinitionId()+" "+hpi.getStartTime()+" "+hpi.getEndTime()+" "+hpi.getDurationInMillis()+" "+hpi.getEndActivityId());
}

  

最新文章

  1. LSOF 安装与使用
  2. caffe网络模型各层详解(一)
  3. Eclipse JAVA项目的 目录结构 和 导入
  4. 【计算机图形学】openGL常用函数
  5. 安装apache2.4.10
  6. matlab改变GUI和figure左上角图标的方法,并生成exe文件
  7. 201521123002 《Java程序设计》第1周学习总结
  8. [js高手之路] vue系列教程 - vue的基本用法与常见指令(1)
  9. 浏览器根对象window之screen
  10. VUE重修01
  11. 前端 ---jQuery的补充
  12. 手打struts知识点
  13. storm的一些相关文章
  14. 服务器重启后如何开启由docker部署的redmine
  15. 单独配置secondarynamenode
  16. R语言低级绘图函数-grid
  17. Microsoft Windows XP Professional X64 Edition Corporate Keys
  18. Linux基础-5.利用vi编辑器创建和编辑正文文件
  19. SharePoint 事件 2137 / 2138 :SharePoint 运行状况分析器检测到错误。驱动器的可用空间不足。
  20. 用maven创建web工程

热门文章

  1. vc面试题目
  2. c_数据结构_二叉树的遍历实现
  3. Estimation
  4. leetcode-157周赛-5214-最长定差子序列
  5. SQL Server - SQL Server/ bcp 工具如何通信
  6. 0922CSP-S模拟测试赛后总结
  7. day23_4_hashlib
  8. 02_mybatis开发dao的方法
  9. C# 16进制与字符串、字节数组之间的转换(串口通讯中)
  10. linux 文件类型的颜色