Loading [MathJax]/jax/output/CommonHTML/config.js
前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >activiti(四)历史数据

activiti(四)历史数据

作者头像
周杰伦本人
发布于 2023-10-12 06:04:29
发布于 2023-10-12 06:04:29
24500
代码可运行
举报
文章被收录于专栏:同步文章同步文章
运行总次数:0
代码可运行

activiti流程执行历史

历史数据交给HistoryService来管理

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
package cn.panda.e_historyQuery;

import java.util.List;

import org.activiti.engine.ProcessEngine;
import org.activiti.engine.ProcessEngines;
import org.activiti.engine.history.HistoricActivityInstance;
import org.activiti.engine.history.HistoricProcessInstance;
import org.activiti.engine.history.HistoricTaskInstance;
import org.junit.Test;

public class HistoryQueryTest {

    ProcessEngine processEngine = ProcessEngines.getDefaultProcessEngine();

    /**
     * 查询历史流程实例act_hi_procinst
     */
    @Test
    public void findHistoryProcessInstance(){
        String processInstanceId="2201";
        HistoricProcessInstance historicProcessInstance = processEngine.getHistoryService()
                        .createHistoricProcessInstanceQuery()
                        .processInstanceId(processInstanceId)
                        .singleResult();
        System.out.println(historicProcessInstance.getId()+historicProcessInstance.getProcessDefinitionId()
        +historicProcessInstance.getStartTime());
    }

    /**
     * 查询历史活动act_hi_actinst
     */
    @Test
    public void findHistoryActiviti(){
        String processInstanceId = "2201";
        List<HistoricActivityInstance> list = processEngine.getHistoryService()
                        .createHistoricActivityInstanceQuery()
                        .processInstanceId(processInstanceId)
                        .orderByHistoricActivityInstanceStartTime().asc()
                        .list();
        if (list!=null&&list.size()>0) {
            for (HistoricActivityInstance hai : list) {
                System.out.println(hai.getId()+" "+hai.getProcessInstanceId()+" "+hai.getActivityName());
            }
        }
    }

    /**
     * 查询历史任务
     */
    @Test
    public void findHistoryTask() {
        String processInstanceId="2201";
        List<HistoricTaskInstance> list = processEngine.getHistoryService()
                        .createHistoricTaskInstanceQuery()//创建历史任务实例查询
                        .processInstanceId(processInstanceId)
                        .orderByProcessInstanceId().asc()
                        .list();
        if (list!=null&&list.size()>0) {
            for (HistoricTaskInstance historicTaskInstance : list) {
                System.out.println(historicTaskInstance.getId()+" "+historicTaskInstance.getName());
            }
        }
    }   
}
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2023-10-11,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
activiti(二)流程实例
周杰伦本人
2023/10/12
2780
activiti(七)并行网关和开始活动节点
周杰伦本人
2023/10/12
5720
activiti(七)并行网关和开始活动节点
activiti(九)个人任务userTask
个人任务及三种分配方式: 1:在taskProcess.bpmn中直接写 assignee=“张三丰” 2:在taskProcess.bpmn中写 assignee=“#{userID}”,变量的值要是String的。 使用流程变量指定办理人 3,使用TaskListener接口,要使类实现该接口,在类中定义: delegateTask.setAssignee(assignee);// 指定个人任务的办理人 使用任务ID和办理人重新指定办理人: processEngine.getTaskService()// .setAssignee(taskId, userId);
周杰伦本人
2023/10/12
3680
activiti(九)个人任务userTask
activiti(十)组任务Group
部署流程 开启流程 查看当前人的组任务 组任务拾取个人任务 完成任务(组任务最后也要个人来完成)
周杰伦本人
2023/10/12
2950
activiti(十)组任务Group
Activiti5工作流笔记一
  网上工作流的定义一大堆,这里就不去复制了,通俗的理解,工作流就是类似OA系统中请假审批、报销审批等一系列流程,下级提交的申请只有直系领导才能审批,其他人是没有权限的,而只有直系领导审批通过后,直系领导的直系领导才可以看到申请,并进行审批,以此类推。。。
HUC思梦
2020/09/03
8180
Activiti5工作流笔记一
activiti(六)排他网关ExclusiveGateWay
由排他网关流出的顺序流都有个conditionExpression元素,在内部维护返回boolean类型的决策结果。
周杰伦本人
2023/10/12
4130
activiti(六)排他网关ExclusiveGateWay
activiti(五)连线SequenceFlow
如果有多个SequenceFlow ,则需要使用流程变量设置codition的名称。message表示流程变量的名称,‘不重要’表示流程变量的值,${}中间的内容要使用boolean类型的表达式,用来判断应该执行的连线。
周杰伦本人
2023/10/12
3260
activiti(五)连线SequenceFlow
activiti(八)接收活动receiveTask
当前任务(一般指机器自动完成,但需要耗费一定时间的工作)完成后,向后推移流程,可以调用runtimeService.signal(executionId),传递接收执行对象的id。
周杰伦本人
2023/10/12
3130
activiti(八)接收活动receiveTask
史上最全的工作流引擎 Activiti 学习教程(值得收藏)
点击上方“芋道源码”,选择“设为星标” 管她前浪,还是后浪? 能浪的浪,才是好浪! 每天 10:33 更新文章,每天掉亿点点头发... 源码精品专栏 原创 | Java 2021 超神之路,很肝~ 中文详细注释的开源项目 RPC 框架 Dubbo 源码解析 网络应用框架 Netty 源码解析 消息中间件 RocketMQ 源码解析 数据库中间件 Sharding-JDBC 和 MyCAT 源码解析 作业调度中间件 Elastic-Job 源码解析 分布式事务中间件 TCC-Transaction
芋道源码
2022/05/23
2.7K0
史上最全的工作流引擎 Activiti 学习教程(值得收藏)
项目实践工作流之Activiti学习(二十二)
2) resource_name 为 act_ge_bytearray 表中 NAME_列的值
用户1289394
2023/11/06
1680
项目实践工作流之Activiti学习(二十二)
activiti(三)流程变量
流程变量的作用域范围是只对应一个流程实例。也就是说各个流程实例的流程变量是不相互影响的。流程实例结束完成以后流程变量还保存在数据库中(存放到流程变量的历史表中)。
周杰伦本人
2023/10/12
4040
Activiti7笔记(一)Activiti7是什么,入门流程操作的代码实现
Activiti是一个工作流引擎, activiti可以将业务系统中复杂的业务流程抽取出来,使用专门的建模语言BPMN2.0进行定义,业务流程按照预先定义的流程进行执行,实现了系统的流程由activiti进行管理,减少业务系统由于流程变更进行系统升级改造的工作量,从而提高系统的健壮性,同时也减少了系统开发维护成本。
一写代码就开心
2022/05/09
3.5K0
Activiti7笔记(一)Activiti7是什么,入门流程操作的代码实现
【白银人机】Activiti 工作流:完整 hello world 大比拼(API 结合实例讲解)
本来想着闲来无事,前面在项目中刚刚用到了工作流 Activiti 框架,写写博客的,但是,事情总是纷纷杂杂,一直拖延到现在,这一节原本想要写一下关于 Activiti 的 API ,但是,想着太多这样的博客了,而且显得太生硬,难以理解,所以,这些 API 就在实际的 demo 中来讲解。
好好学java
2019/06/14
8120
工作流引擎 Activiti 万字详细入门
工作流(Workflow),就是通过计算机对业务流程自动化执行管理。它主要解决的是“使在多个参与者之间按照某种预定义的规则自动进行传递文档、信息或任务的过程,从而实现某个预期的业务目标,或者促使此目标的实现”。
全栈程序员站长
2022/09/08
4K0
工作流引擎 Activiti 万字详细入门
七万字掌握热门工作流引擎框架Activiti7,附带视频讲解哦
  工作流(Workflow),就是通过计算机对业务流程自动化执行管理。它主要解决的是“使在多个参与者之间按照某种预定义的规则自动进行传递文档、信息或任务的过程,从而实现某个预期的业务目标,或者促使此目标的实现”。文章中涉及的相关软件资料扫左侧哦。
用户4919348
2022/01/07
1.5K0
七万字掌握热门工作流引擎框架Activiti7,附带视频讲解哦
Flowable 流程实例[通俗易懂]
大家好,我是架构君,一个会写代码吟诗的架构师。今天说一说Flowable 流程实例[通俗易懂],希望能够帮助大家进步!!!
Java架构师必看
2022/05/16
1.6K0
工作流引擎之activiti入门
在解释activiti之前我们看一下什么是工作流。 工作流(Workflow),就是“业务过程的部分或整体在计算机应用环境下的自动化”,它主要解决的是“使在多个参与者之间按照某种预定义的规则传递文档、信息或任务的过程自动进行,从而实现某个预期的业务目标,或者促使此目标的实现”。 我的理解是,工作流将一套大的业务逻辑分解成业务逻辑段, 并统一控制这些业务逻辑段的执行条件,执行顺序以及相互通信。 实现业务逻辑的分解和解耦。 Activiti是一个开源的工作流引擎,它实现了BPMN 2.0规范,可以发布设计好的流程定义,并通过api进行流程调度。 BPMN即业务流程建模与标注(Business Process Model and Notation,BPMN) ,描述流程的基本符号,包括这些图元如何组合成一个业务流程图(Business Process Diagram)。
lyb-geek
2018/07/26
9.4K0
工作流引擎之activiti入门
Activiti7的api查询(实时更新)
学习activiti,就是学习使用java代码操作25张表; java代码中我们调用Activiti的工具类;
一写代码就开心
2022/05/27
3K0
Activiti7的api查询(实时更新)
Activiti5工作流笔记三
之前的流程图都是错的,只是为了演示如何快速使用,下面通过连线学习如何画一个正确的流程图
HUC思梦
2020/09/03
4380
Activiti5工作流笔记三
activiti7实战教程(一)集成用户系统
去掉SpringSecurity框架,修改启动类上的SpringBootApplication注解如下:
全栈程序员站长
2022/09/13
1.8K0
activiti7实战教程(一)集成用户系统
相关推荐
activiti(二)流程实例
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
本文部分代码块支持一键运行,欢迎体验
本文部分代码块支持一键运行,欢迎体验