java 工作流 实例_Activiti工作流的应用示例
1、新建流程模型
模型管理->模型工作区
点击“创建”后会立即跳转到“流程在线设计器”页面,请参考下一节
2、在线流程设计器
模型管理->模型工作区->编辑
3、设置流程属性
l 名称:流程定义名称
l 描述信息:流程定义描述
l 流程标识:流程定义KEY,对应procDefKey,用来标识一个流程
4、拖拽元素介绍
Start event:开始事件
End entit:结束事件
User task:用户任务活动
Service task:服务任务活动
Exclusive gateway:独家网关,排它网关通道,只能有一条分支执行,如if else
Parallel gateway:并行网关,并行网关通道,所有分支一块执行
更多介绍请参考:http://www.mossle.com/docs/activiti/#bpmnConstructs
5、流程发起人的流程变量
在开始节点的属性中设置“启动器”(流程发起人)的变量,例如:applyUserId
设置以后,在某个任务的属性中,可以设置参与者为${applyUserId},这样可以实现【谁发起谁执行】,请参考下图:
当发起人发起某个流程,在某个环节被驳回的时候,如果希望流程驳回到发起人,可使用方法。
6、表单概念
普通表单:每个节点的表单内容都写死在JSP或者HTML中。
动态表单:表单内容存放在流程定义文件中(包含在启动事件以及每个用户任务中)。
外置表单:每个用户任务对应一个单独的.form文件,和流程定义文件同时部署(打包为zip/bar文件)。
综合流程:可以查询到所有的流程(普通、动态、外置固定查询某些流程的表单,为了演示所以单独分开);综合流程的目的在于可以启动用户上传或者设计后部署的流程定义。
6、设置表单地址
l 全局表单:新建流程时或活动元素上未设置表单标识时调用的表单,位于开始事件属性中“表单标识”字段,指定表单访问地址。
l 活动表单:当前步骤使用的表单,使用活动节点属性“表单标识”字段。
7、设置流程参与者
在流程节点中,设置【任务分配】
l assignee:任务执行人,设置系统中的“登录名”(loginName)。
l candidateUsers:任务执行人,可以填写多个。
l candidateGroups:任务执行组,可以填写多个,设置系统中的“角色英文名(enname)”。
assignee和candidateUsers的区别是:assignee不需要签收任务,直接可执行任务;candidateUsers为竞争方式分配任务,被指定人待办中都有一条任务,谁先签收谁就获得任务的执行权。
参与者可指定流程变量(EL表达式),动态指定参与者,如:${processer}
8、设置流程流转的条件
选定流转线,在【流条件】中填写EL表达式,返回true或false。例如:
9、保存流程设计图
10、部署流程设计图
模型管理->模型工作区,点击【部署】
11、导出流程设计图
模型管理->模型工作区,可以导出BPMN、JSON、SVG格式的流程设计图
12、【请假流程】
使用softwareuser登陆
工作流程->请假申请,填写如下:
点击【申请】后,启动请假申请流程。
此时在流程办理->运行中的流程中,可以看到:
13、leaderuser待办任务
使用leaderuser用户登陆,它属于deptLeader用户组。deptLeader也就是【部门领导审批】任务分配的用户组。
点击工作流程->待办任务。可以看到未签收任务
点击【跟踪】可以看到流程目前进展情况。
14、leaderuser任务签收
leaderuser用户点击工作流程->流程办理->请假办理(普通),对任务进行签收。
15、leaderuser任务办理
leaderuser用户,进入流程办理->请假办理(普通),选中任务,点击【办理】
任务完成。
16、hruser待办任务
使用hruser登陆系统,hruser属于hr角色,是请假流程人事审批的任务分配组。
hruser登陆系统后,点击工作流程->待办任务,可以看到如下:
点击跟踪,可以看到目前流程进展情况。
17、hruser任务签收
hruser进入工作流程->流程办理->请假办理(普通),对任务进行签收
18、hruser任务办理
hruser进入工作流程->流程办理->请假办理(普通),对任务进行办理
同意以后,在工作流程->流程办理->运行中的流程(普通),可以看到:
19、请假最后一个环节,销假
使用softwareuser用户登录系统,他是请假者,销假的流程在设计图中分配给他自己。
注意以上2张图片applyUserId的变量。
softwareuser用户点击工作流程->流程办理->请假办理(普通),点击【办理】
填写实际请假开始时间和结束时间。
20、任务完成。
softwareuser用户点击工作流程->流程办理->已结束流程(普通),可以看到已完成的任务。
java 工作流 实例_Activiti工作流的应用示例相关推荐
- flowable工作流 流程变量_Activiti工作流的应用示例
1:工作流的概念 工作流(Workflow),就是"业务过程的部分或整体在计算机应用环境下的自动化",它主要解决的是"使在多个参与者之间按照某种预定义的规则传递文档.信息 ...
- workflow java_workflow java实现的activity工作流实例 Develop 238万源代码下载- www.pudn.com...
文件名称: workflow下载 收藏√ [ 5 4 3 2 1 ] 开发工具: Java 文件大小: 134 KB 上传时间: 2014-09-18 下载次数: 3 提 供 者: 张华 详 ...
- 日均处理 10000+ 工作流实例,Apache DolphinScheduler 在 360 数科的实践
点击上方 蓝字关注我们 从 2020 年起,360 数科全面将调度系统从 Azkaban 迁移到 Apache DolphinScheduler.作为 DolphinScheduler 的资深用户,3 ...
- java解析xml实例_在java中使用dom解析xml的示例分析
本篇文章介绍了,在java中使用dom解析xml的示例分析.需要的朋友参考下 dom是个功能强大的解析工具,适用于小文档 为什么这么说呢?因为它会把整篇xml文档装载进内存中,形成一颗文档对象树 总之 ...
- java学习 类变量 类方法_这篇文章主要介绍了JAVA类变量及类方法代码实例详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下类变量(...
这篇文章主要介绍了JAVA类变量及类方法代码实例详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 类变量(static) 类变量是该类的所有对象共 ...
- java中workFlowEvent_关于工作流(Workflow Foundation)的一些总结归纳
其实,以我的体会,工作流(Workflow Foundation)从它一诞生就褒贬不一.至少它确实目前看起来还是比较难用.在.NET 3.5以及之前的版本中,为了实现工作流,我们还是需要编写相当多的代 ...
- Java三大主流开源工作流引擎分析
Java三大主流开源工作流引擎分析 首先,这个评论是我从网上,书中,搜索和整理出来的,也许有技术点上的错误点,也许理解没那么深入.但是我是秉着学习的态度加以评论,学习,希望对大家有用,进入正题! 三大 ...
- 工作流系列: 工作流模式
工作流模式 ―Childe Zhao, http://www.workflow-fortune.com -译自 http://tmitwww.tm.tue.nl/research/patterns/ ...
- Java中使用ArrayList的10个示例–教程
Java中的ArrayList是HashMap之后最常用的集合类. Java ArrayList表示一个可自动调整大小的数组,并用于代替数组. 由于创建数组后我们无法修改数组的大小,因此我们更喜欢在J ...
- java linkedlist实例_Java Linkedlist原理及实例详解
这篇文章主要介绍了Java Linkedlist原理及实例详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 定义:linkedlist属于链表结构 ...
最新文章
- 什么是CPI指数和GDP
- 【Android 应用开发】Android之Bluetooth编程
- 程序员怎么面试求职?需要注意哪些因素?
- 帝国cms文章页调用当前文章URL如何操作?
- [转]android 获取手机GSM/CDMA信号信息
- centos打开mysql数据库_Linux、Centos下操作mysql数据库开启远程访问
- python CGI编程Apache配置
- 2020年Java实训项目【GUI学生信息管理系统】目录
- JS---Math.Random()*10--[0,10)随机变颜色
- 定积分计算(谭浩强c语言第5版p272)
- java中solr的面试题_【索引服务器面试题】面试问题:Solr索引文… - 看准网
- 同r做一个窗口_数据无价,关注硬盘健康状况群晖NAS如何做硬盘坏道检测
- 神经计算棒python_将Pytorch模型部署到Movidius神经计算棒
- 英语四六级考试系统+爬虫获取试题的系统(数据库设计)的开发思路
- httpwatch使用_使用PHP#2自动化HTTPWatch
- Nginx 限流的天坑
- 从文本生成场景图(1)——SPICE:Semantic Propositional Image Caption Evaluation
- [Android自定义控件]双圆圈内外旋转菜单
- R语言 | GEO数据库下载GSE基因芯片 以及表达矩阵和临床信息的提取
- R语言有RStan的多维验证性因子分析(CFA)