Activiti工作流学习(六)

前言

Activity工作流提供了很多的关于历史记录的查询,今天讲讲常用的几个方法。

四个历史查询方法

1.查询历史的流程实例

@Test
public void queryHistoryProcessInstance(){
    List<HistoricProcessInstance> historicProcessInstanceList = historyService.createHistoricProcessInstanceQuery()
                .processDefinitionKey("activiti_leave")
                .orderByProcessInstanceEndTime()
                .desc()
                .list();

    for(HistoricProcessInstance historicProcessInstance : historicProcessInstanceList){
        System.out.println("历史流程实例ID:"+historicProcessInstance.getId());
        System.out.println("历史流程实例完成时间:"+historicProcessInstance.getEndTime());
    }
}

2.查询当前流程实例所经历的所有活动

@Test
public void queryHistoryActivityInstance(){
    List<HistoricActivityInstance> historicActivityInstanceList = historyService.createHistoricActivityInstanceQuery()
                .processInstanceId("3001")
                .list();

    for(HistoricActivityInstance historicActivityInstance : historicActivityInstanceList){
        System.out.println("历史活动ID:"+historicActivityInstance.getId());
        System.out.println("历史活动名称:"+historicActivityInstance.getActivityName());
        System.out.println("办理人:"+historicActivityInstance.getAssignee());
    }
}

3.查询某个办理人(结点)所经历的所有任务

@Test
public void queryHistoryTaskInstanceByAssignee(){
    List<HistoricTaskInstance> historicTaskInstanceList = historyService.createHistoricTaskInstanceQuery()
                .processDefinitionKey("activiti_leave")
                .taskAssignee("employnee")
                .list();

    for(HistoricTaskInstance historicTaskInstance : historicTaskInstanceList){
        System.out.println("历史任务ID:"+historicTaskInstance.getId());
        System.out.println("历史活动名称:"+historicTaskInstance.getName());
        System.out.println("结束时间:"+historicTaskInstance.getEndTime());
        System.out.println("办理人:"+historicTaskInstance.getAssignee());
        System.out.println("----------------------------------------------");
    }
}

4.根据流程实例的ID来查询历史流程变量

@Test
public void queryHistoryVariable(){
    List<HistoricVariableInstance> historicVariableInstanceList = historyService.createHistoricVariableInstanceQuery()
                .processInstanceId("1001")
                .list();

    for(HistoricVariableInstance historicVariableInstance : historicVariableInstanceList){
        System.out.println("流程变量ID:"+historicVariableInstance.getId());
        System.out.println("变量名:"+historicVariableInstance.getVariableName());
        System.out.println("变量值:"+historicVariableInstance.getValue());
        System.out.println("----------------------------------------------");
    }
}
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值