Activiti学习笔记7 — ReceiveTask机器自动任务的使用
2015-12-01 17:41
169 查看
一、 创建流程规则,如下图
View Code
四、执行后的结果如下:
[INFO][2015-12-01 17:34:46,411][com.mcs.activiti.test.TestReceiveTask]Id:60001
[INFO][2015-12-01 17:34:46,570][com.mcs.activiti.test.TestReceiveTask]汇总后当天的销售额是: 888888.88
[INFO][2015-12-01 17:34:46,625][com.mcs.activiti.test.TestReceiveTask]老板,今天的销售额是:888888.88
[INFO][2015-12-01 17:34:46,783][com.mcs.activiti.test.TestReceiveTask]机器自动任务流程成功执行!
/** * 3、启动流程,并自动执行任务 */ @Test public void testStartProcess() { // 获取服务对象的实例 RuntimeService runtimeService = processEngine.getRuntimeService(); String processDefinitionKey = "receiveTask"; // 自动执行与Key相对应的流程的最高版本 ProcessInstance processInstance = runtimeService.startProcessInstanceByKey(processDefinitionKey); String processInstanceId = processInstance.getId(); logger.info("Id:" + processInstance.getId()); //获取当前流程下Execution对象 Execution e1 = runtimeService .createExecutionQuery() .processInstanceId(processInstanceId) //每个流程的唯一标识 .activityId("汇总当天销售额") //每个活动的唯一标识 .singleResult(); Assert.assertNotNull(e1); //自动逻辑的绑定-汇总当天销售额,进行一堆逻辑后,得到金额money Double money = 888888.88d; //把金额放入变量中 runtimeService.setVariable(e1.getId(), "销售额", money); logger.info("汇总后当天的销售额是: " + money); //推动流程流转 runtimeService.signal(e1.getId()); //判断当前流程,是否仪在一个节点ID是“发短信给老板”的活动节点 Execution e2 = runtimeService .createExecutionQuery() .processInstanceId(processInstanceId) //每个流程的唯一标识 .activityId("发短信给老板") //每个活动的唯一标识 .singleResult(); Assert.assertNotNull(e2); Double m = (Double) runtimeService.getVariable(e2.getId(), "销售额"); logger.info("老板,今天的销售额是:" +m); //推动流程流转 runtimeService.signal(e2.getId()); //检查结束状态 ProcessInstance pInstance = runtimeService .createProcessInstanceQuery() .processInstanceId(processInstanceId) .singleResult(); Assert.assertNull(pInstance); logger.info("机器自动任务流程成功执行!"); }
View Code
四、执行后的结果如下:
[INFO][2015-12-01 17:34:46,411][com.mcs.activiti.test.TestReceiveTask]Id:60001
[INFO][2015-12-01 17:34:46,570][com.mcs.activiti.test.TestReceiveTask]汇总后当天的销售额是: 888888.88
[INFO][2015-12-01 17:34:46,625][com.mcs.activiti.test.TestReceiveTask]老板,今天的销售额是:888888.88
[INFO][2015-12-01 17:34:46,783][com.mcs.activiti.test.TestReceiveTask]机器自动任务流程成功执行!
相关文章推荐
- log4net 学习
- IOS框架图(一)
- Python基础教程(五):数字、字符串
- iOS Touch ID
- maven常见问题解决
- 用户登陆的业务流程架构设计
- 数据库优化系类
- 【LeetCode】228 Summary Ranges
- Python基础教程(四):循环语句
- 网站制作教程-如何才能做好一个网站?
- python pymouse 控制鼠标
- form builder视图窗口下找不到堆叠视图项
- LightOJ 1116 - Ekka Dokka (简单数学)
- Android 各种设计模式
- 趣学Python-教孩子学编程--第十章
- android 计时器
- java通过文件头来判断文件类型
- Backbone学习笔记一Backbone中的MVC
- IBInspectable / IBDesignable
- UML画图的画法