activiti 流程图点击进行流程跳转(简易流程可行)

上午写了篇关于流程运行中高亮显示当前节点的文档,下午想到了朋友之前提供的demo,于是研究了下流程图直接点击进行流程跳转的操作。

当然,只是大概研究了下,搞懂原理后就没有深入实现了,所以大概说下步骤。

1、获取所有节点信息

ProcessDefinitionEntity definitionEntity = (ProcessDefinitionEntity)
                ((RepositoryServiceImpl)repositoryService).getDeployedProcessDefinition(proDefId);
List<ActivityImpl> activities = definitionEntity.getActivities();
这里获取到的节点信息中包含了节点的图形化坐标信息、name、type等

2、页面添加onclick事件,并且获取当前鼠标点击的坐标

3、遍历所有节点,判定鼠标点击坐标属于哪一个节点

4、获取到节点信息,然后进行跳转


备注:该方式只适用于简易流程,如果涉及网关、触发、边界等事件则需要自己拟定详细跳转过程(官方未实现的功能,还是不要多考虑了)。

其实,第二点与第三点可以不用这样做。可以像当前节点高亮显示一样,将每一个可以进行跳转的节点弄一个颜色,

由于颜色框是div制作的,那么在这个div上添加onclick就可以了,然后div中弄隐藏值。这样用户体验度更好,更不容易出错。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值