xuhuisheng / activiti-demo Goto Github PK
View Code? Open in Web Editor NEWA demostration of Activiti
License: Apache License 2.0
A demostration of Activiti
License: Apache License 2.0
业务场景是在下发文件时,看哪些人完成了,哪些人没完成
添加用户和群组管理的演示
加签
👍 没有添加历史节点实例
减签
👍 没有减少历史节点实例
备注: 需要在加签减签操作中,针对历史实例进行操作.保证数据的完整性!
添加异步操作和定时器管理的演示
自动委托不支持candidateGroup和candidateUser
目前只支持assignee
确认activiti支持多少种设计模式
不会触发当前节点的complete和前一个节点的create事件
跳转以后,history的end_time为null
演示BusinessCalendar
如果连线上有问题,生成的流程图会错位
异常如下:
HTTP ERROR 500
Problem accessing /activiti-demo/bpm/workspace!completeTask.do. Reason:
Unknown property used in expression: ${spjg == 'false'}
Caused by:
org.activiti.engine.ActivitiException: Unknown property used in expression: ${spjg == 'false'}
at org.activiti.engine.impl.el.JuelExpression.getValue(JuelExpression.java:53)
at org.activiti.engine.impl.el.UelExpressionCondition.evaluate(UelExpressionCondition.java:37)
at org.activiti.engine.impl.bpmn.behavior.ExclusiveGatewayActivityBehavior.leave(ExclusiveGatewayActivityBehavior.java:63)
at org.activiti.engine.impl.bpmn.behavior.FlowNodeActivityBehavior.execute(FlowNodeActivityBehavior.java:36)
at org.activiti.engine.impl.pvm.runtime.AtomicOperationActivityExecute.execute(AtomicOperationActivityExecute.java:44)
at org.activiti.engine.impl.interceptor.CommandContext.performOperation(CommandContext.java:87)
at org.activiti.engine.impl.persistence.entity.ExecutionEntity.performOperationSync(ExecutionEntity.java:532)
at org.activiti.engine.impl.persistence.entity.ExecutionEntity.performOperation(ExecutionEntity.java:527)
at org.activiti.engine.impl.pvm.runtime.AtomicOperationTransitionNotifyListenerStart.eventNotificationsCompleted(AtomicOperationTransitionNotifyListenerStart.java:52)
at org.activiti.engine.impl.pvm.runtime.AbstractEventAtomicOperation.execute(AbstractEventAtomicOperation.java:56)
at org.activiti.engine.impl.interceptor.CommandContext.performOperation(CommandContext.java:87)
流程定义中定义如下:
<sequenceFlow id="flow8" sourceRef="exclusivegateway1"
targetRef="endevent1">
<conditionExpression xsi:type="tFormalExpression"><![CDATA[${spjg == 'false'}]]></conditionExpression>
</sequenceFlow>
<sequenceFlow id="flow7" sourceRef="exclusivegateway1"
targetRef="usertask2">
<conditionExpression xsi:type="tFormalExpression"><![CDATA[${spjg == 'true'}]]></conditionExpression>
</sequenceFlow>
支持jbpm4中那种,实现流程迁移
针对用户任务:
回退暂不考虑业务需求
1、回退到上一个任务节点,如果上一节点为开始节点 弹出回退失败,开始节点不能回退。(可以称之为默认回退)
2、回退到之前办理过(即流程流转过的)的任意的任务节点,并在页面让用户进行选择回退至某一个任务节点。
3、针对分支聚合的情况,回退至多个任务节点。
4、支持子流程的回退.
以上需求尽量对各大主流数据库进行测试回退功能!
主要看会签时,流程图监控是不是会正常定位到当前的节点。
目前的demo会签时,待办任务查看历史时,抛了NPE
工作流集成权限系统
计划:年底之前做完!
当任务操作者完成任务后,需要从下一个任务的 candidateGroup 和 candidateUsers 的并集中 选择一个用户并设置下一个任务的assignee .
避免操作挂起的流程实例或任务时抛出异常。
不支持multi-instance
支持自动扫描目录,把创建时间比部署时间旧的流程部署,避免重复部署。
而且每个xml部署一个deployment,别删一个流程定义,就都删没了。
暂时不考虑自动扫描目录和比对内容md5的功能。
apache 2.0
TimerBoundaryEvent要画线,有没有隐形设置的方式
加签
👍 没有添加历史节点实例
减签
👍 没有减少历史节点实例
备注: 需要在加签减签操作中,针对历史实例进行操作.保证数据的完整性!
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.