activiti 如何获取下一步节点
ACTIVITI相对于JBPM来说,比较年轻,用的人少,中文方面的资料更少,我根据网上到处找得资料以及看官方文档总结出来了代码,非常不容易啊。废话不多说,直接上代码吧:
首先是根据流程ID获取当前任务:
- List<Task> tasks = taskService.createTaskQuery().processInstanceId(procInstanceId).list();
然后根据当前任务获取当前流程的流程定义,然后根据流程定义获得所有的节点:
- ProcessDefinitionEntity def = (ProcessDefinitionEntity) ((RepositoryServiceImpl)rs).getDeployedProcessDefinition(task.getProcessDefinitionId());
- List<ActivityImpl> activitiList = def.getActivities(); //rs是指RepositoryService的实例
根据任务获取当前流程执行ID,执行实例以及当前流程节点的ID:
- String excId = task.getExecutionId();
- ExecutionEntity execution = (ExecutionEntity) runtimeService.createExecutionQuery().executionId(excId).singleResult();
- String activitiId = execution.getActivityId();
然后循环activitiList 并判断出当前流程所处节点,然后得到当前节点实例,根据节点实例获取所有从当前节点出发的路径,然后根据路径获得下一个节点实例:
- for(ActivityImpl activityImpl:activitiList){
- String id = activityImpl.getId();
- if(activitiId.equals(id)){
- System.out.println("当前任务:"+activityImpl.getProperty("name")); //输出某个节点的某种属性
- List<PvmTransition> outTransitions = activityImpl.getOutgoingTransitions();//获取从某个节点出来的所有线路
- for(PvmTransition tr:outTransitions){
- PvmActivity ac = tr.getDestination(); //获取线路的终点节点
- System.out.println("下一步任务任务:"+ac.getProperty("name"));
- }
- break;
- }
- }
activiti 如何获取下一步节点相关推荐
- activit6.0 根据当前节点信息获取下一步的审批人信息
背景:公司内部oa系统进行审批,需要集成极光推送,这样的话,需要在审批的时候,通过当前节点,查找出下一个需要审批人的信息,在网上查看了很多资料,大多都是activit版本对不上,还有就是提供的代码不完 ...
- Activiti获取流程节点、流程图,驳回,终止
最近项目,用到流程.第一次用,就自己做了一下小结: 1. ===================================下面这段代码是获取流程线信息====================== ...
- 二叉树(C++):创建,前中后序遍历(递归+非递归),获取叶子节点个数,获取树的高度
文章目录 前言 创建二叉树 先序遍历 中序遍历 后序遍历 获取叶子节点个数 获取树的高度 测试代码 前言 现有如下二叉树: 关于二叉树的相关操作,我们能够发现二叉树从根节点到子节点,以及每个中间节点基 ...
- 获取BT节点信息bittorrent-discovery
2019独角兽企业重金招聘Python工程师标准>>> 获取BT节点信息bittorrent-discovery BT/磁力都是常见的P2P下载方式.用户作为一个节点node从其他用 ...
- 前端框架——Jquery——基础篇2__获取DOM节点的值
对于获取DOM节点的内容,Jquery提供了四种方法,html,text,val,attr.下面来分别介绍这四种方法和它们的区别.下面以例子来说明 我写的JSP页面内容如下: 1 <div id ...
- JavaScript 技术篇-js只获取本节点text文本,不包含子节点
innerText 和 textContent 都是获取所有节点的 firstChild.nodeValue 是获取本节点的text文本,不包含子节点的. 喜欢的点个赞❤吧!
- JavaScript 技术篇-js通过xpath获取dom节点,js校验xpath唯一性
document.evaluate() 就是通过 xpath 获取 dom 节点. 返回的结果通过 .iterateNext() 可以获得 dom 对象,每次调用会少一个,当没有时就返回空. 返回匹配 ...
- layui如何获取父节点的父节点_jquery获取父元素或父节点的方法
jquery获取父元素方法比较多,比如parent(),parents(),closest()这些都能帮你实现查找父元素或节点,下面我们来一一讲解: 先举个例子, jquery获取父节点 jquery ...
- Winform中双击DevExpress的TreeList的树形节点怎样获取当前节点
场景 DevExpress的TreeList怎样设置数据源,从实例入手: https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/details/10254 ...
最新文章
- 关于MSSQL导入导出时主键与约束丢失的问题解决
- 斯坦福神经网络神经元对特征提取的影响JS演示
- css伪类元素及选择器
- intellij idea cpu占用率太大太满 运行速度太慢解决方案
- S - 母牛的故事(递推)
- boost::multiprecision::float128用法的测试程序
- Andrew NG 机器学习编程作业5 Octave
- python电脑截图文字识别软件_Python实现文字识别,来看看大牛怎么实现截图/
- php斯芬克斯,斯芬克斯之迷——ie私有属性haslayout的困扰
- 研究做得好,贡献也要大!腾讯AI Lab正式开源业内最大规模多标签图像数据集...
- php正则如何使用 1,PHP正则表达式使用详解(1)
- python是什么类型的编程语言-python是什么编程语言
- 服务器内的虚拟机无法上网,VMware虚拟机中无法上网如何解决
- 2021-09-10二叉树的层序遍历
- Nginx面试题及答案
- 一年月份大小月口诀_《认识年月日》大小月记忆法知识点教学设计
- seq2seq(序列到序列)模型
- Error: 1307. Verify that you have sufficient privileges to modify the security permissions for this
- 如何选购翻新iPad,需要注意哪些问题
- 2021年煤矿采煤机(掘进机)操作操作证考试及煤矿采煤机(掘进机)操作模拟考试题库