Activiti(工作流)如何关联业务表
注(version:5.15.1)
1.部署流程(定义流程)
1 InputStream in = new FileInputStream(file); 2 ZipInputStream zipInputStream = new ZipInputStream(in); 3 processEngine.this.getRepositoryService() 4 .createDeployment() 5 .name(processName) 6 .addZipInputStream(zipInputStream) 7 .deploy();
2.启动流程(所定义流程的一个实例)
1 processEngine().getRuntimeService() 2 /**第二个参数是businesskey:业务工单的主键,作为区分,一般流程名+id,当然如果id为uuid则无所谓 */ 3 .startProcessInstanceByKey("leave", "leaveBill", variables);
这样,业务表就与activiti的表关联起来了(一般为了方便,业务表里也会存一个processId)
其内部表之间关联如下
3.查看某人的任务
1 /** 2 * 当前登录人登录系统以后要执行的任务(包含个人任务+组任务) 3 */ 4 public List<Task> getTasksByAssignee(String userId){ 5 List<Task> assigneeTasks = this.getTaskService() 6 .createTaskQuery() 7 .taskAssignee(userId)//参与者,个人任务查询 8 .orderByTaskCreateTime() 9 .desc() 10 .list(); 11 List<Task> candidateTasks = this.getTaskService() 12 .createTaskQuery() 13 .taskCandidateUser(userId)//参与者,组任务查询 14 .orderByTaskCreateTime() 15 .desc() 16 .list(); 17 assigneeTasks.addAll(candidateTasks); 18 return assigneeTasks; 19 }
4.根据task -》 processInstance -》 businessKey -》 业务表
1 /** 2 * 根据taskId查找businessKey 3 */ 4 public String getBusinessKeyByTaskId(String taskId){ 5 Task task = this.processEngine 6 .getTaskService() 7 .createTaskQuery() 8 .taskId(taskId) 9 .singleResult(); 10 ProcessInstance pi = this.getRuntimeService() 11 .createProcessInstanceQuery() 12 .processInstanceId(task.getProcessInstanceId()) 13 .singleResult(); 14 return pi.getBusinessKey(); 15 }
Activiti(工作流)如何关联业务表相关推荐
- Winform开发框架中工作流模块的业务表单开发
在我们开发工作流的时候,往往需要设计到具体业务表单信息的编辑,有些是采用动态编辑的,有些则是在开发过程中处理的,各有各的优点,动态编辑的则方便维护各种各样的表单,但是数据的绑定及处理则比较麻烦,而自定 ...
- Activiti工作流内建数据库表分析
2019独角兽企业重金招聘Python工程师标准>>> 如上图所示:activiti 5.22.0 版内建25张表,下面我将简要分析下这些表的作用. 1.表分类浅析 activiti ...
- Activiti工作流学习笔记01
Activiti6工作流学习笔记01 activiti工作流目前官方最新版本是7.x,但....版本不重要了.这篇笔记只是我学习activiti6过程中的自我总结.如果笔记上有错误的话,欢迎赐教,谢谢 ...
- Activiti工作流之业务标识和流程的挂起激活
1.Businesskey(业务标识) 启动流程实例时,指定的businesskey,就会在act_ru_execution 流程实例的执行表中存储businesskey. Businesskey:业 ...
- Activiti工作流框架学习(一)环境的搭建和数据表的了解
一.什么是工作流 工作流(Workflow),就是"业务过程的部分或整体在计算机应用环境下的自动化",它主要解决的是"使在多个参与者之间按照某种预定义的规则传递文档.信息 ...
- activiti 流程实例与业务关联
学习activiti,很快就可以学会,但是运用还是一个问题,比如在你学习的过程中,都是写Test来测试,创建processEngine,流程部署,开始流程,完成任务等等,没有完成的一套流程,要讲act ...
- activiti工作流连接mysql_Activiti工作流 安装myeclipse activiti设计插件并生成数据库表...
从零开始学习Activiti工作流,记录下学习过程. 关于工作流的简介没什么好介绍了,只能说是个很有用的东西,数据库中23张表分别有什么用网上也有很详细的介绍,这里也不多加说明.activiti开发中 ...
- activiti工作流引擎入门教程
activiti简介 Activiti项目是一项新的基于Apache许可的开源BPM平台,从基础开始构建,旨在提供支持新的BPMN 2.0标准. Activiti是一种轻量级,可嵌入的BPM引擎,而且 ...
- Activiti工作流引擎使用
Activiti工作流引擎使用 1.简单介工作流引擎与Activiti 对于工作流引擎的解释请参考百度百科:工作流引擎 1.1 我与工作流引擎 在第一家公司工作的时候主要任务就是开发OA系统,当然基本 ...
最新文章
- ACL2020 | 无监督?无监督!你没试过的BERT的全新用法
- thinkphp读写mysql的枷锁_thinkphp5 数据库配置读写分离
- 复习(三)—— 进程管理详解
- mysql gtid 备份恢复_MYSQL数据库备份恢复
- [ETL] Flume 理论与demo(Taildir Source Hdfs Sink)
- 黑帽SEO研究之js快照劫持代码分析
- 带有en的单词有哪些_英语前缀大全en:开头是EN的单词有哪些
- Windows下装MySQL
- matlab最大回撤值,用matlab计算区间最大回撤值和最大回撤率
- Unit 1: Packet Sniffing 1.1 Packet Sniffing Introduction to Packet Sniffing
- RocketMQ单机环境搭建
- 2020年焊工(技师)考试技巧及焊工(技师)复审模拟考试
- 基于jMonkeyEngine的三维仿真场景搭建(一)
- 布鲁斯口琴进阶教程资料分享
- BPO业务分析行业调研报告 - 市场现状分析与发展前景预测(2021-2027年)
- 算法与数据结构 判断选择程序填空 绪论
- 基于FPGA的GigE Vision相机图像采集方案设计
- 宇道生物完成复星医药Pre-A轮融资,专注药物研发信息化和智能化开发
- Cockpit驾驶舱
- Windows 10 安装和使用Netcat