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