warm-flow工作流,新增权限监听器,动态设置
本文介绍warm-flow工作流,权限监听器,办理中动态设置流程权限
git地址:https://gitee.com/warm_4/warm-flow.git
1、实现一下接口
public interface Listener extends Serializable { /** 开始监听器,当前任务开始前执行 */ String LISTENER_START = "start"; /** 结束监听器,当前任务完成后执行 */ String LISTENER_END = "finish"; /** 分派办理人监听器,分派后执行 */ String LISTENER_ASSIGNMENT = "assignment"; /** 权限监听器,办理任务动态设置权限 */ String LISTENER_PERMISSION = "permission"; void notify(ListenerVariable variable); } public class FinishListener implements Listener { private static final Logger log = LoggerFactory.getLogger(StartListener.class); @Override public void notify(ListenerVariable variable) { log.info("完成监听器:{}", variable); Instance instance = variable.getInstance(); Map<String, Object> testLeaveMap = variable.getVariable(); log.info("完成监听器结束;{}", "任务完成"); } }
2、页面配置监听器,传递后台通过逗号分割不同监听器 监听器类型和监听器路径,上下一一对应
3、参数传递
public class PermissionListener implements Listener { private static final Logger log = LoggerFactory.getLogger(PermissionListener.class); @Override public void notify(ListenerVariable variable) { log.info("权限监听器开始;{}", variable); Instance instance = variable.getInstance(); List<NodePermission> nodePermissionList = new ArrayList<>(); NodePermission nodePermission1 = new NodePermission(); NodePermission nodePermission2 = new NodePermission(); NodePermission nodePermission3 = new NodePermission(); // 动态传入组件权限标识 nodePermission1.setNodeCode("1"); nodePermission1.setPermissionFlag("role:1,role:2,role:100"); nodePermission2.setNodeCode("2"); nodePermission2.setPermissionFlag("role:1,role:2,role:100"); nodePermission3.setNodeCode("3"); nodePermission3.setPermissionFlag("role:1,role:2,role:101"); nodePermissionList.add(nodePermission1); nodePermissionList.add(nodePermission2); nodePermissionList.add(nodePermission3); variable.setNodePermissionList(nodePermissionList); Map<String, Object> variableMap = variable.getVariable(); TestLeave testLeave = (TestLeave) variableMap.get("testLeave"); log.info("权限监听器结束"); } }
低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
CudaText 1.211.4 发布,跨平台的文本编辑器
CudaText 是一个跨平台的文本编辑器,用 Object Pascal 编写。它是开源项目,启动速度相当快,它可以通过 Python 插件进行扩展,借助 EControl 引擎还带来了功能丰富的语法分析器。 CudaText 1.211.4 正式发布,更新内容如下: 添加:可以使用新选项“scrollbar_size”调整滚动条(应用程序主题滚动条)宽度 添加/更改:当 find-dialog“Hi”选项打开,并且文档为“big”时(选项“find_hi_max_lines”有效,或水平滚动条宽度超过 400 个字符),仅在可见屏幕区域显示 Hi_All 标记,并在滚动时更新标记;这不会显著降低编辑器的运行速度 添加:find-dialog“Hi” 选项:在屏幕可见区域查找 huge lines 的速度更快了(仅处理行的可见部分) 修复:在约 600K 行文件中运行“select all”+“delete”时 freezing 多秒的问题 更多详情可查看:https://cudatext.github.io/history.txt
- 下一篇
JimuReport 积木报表 v1.7.4 正式版本发布,免费的 JAVA 报表工具
项目介绍 一款免费的数据可视化报表,含报表和大屏设计,像搭建积木一样在线设计报表!功能涵盖,数据报表、打印设计、图表报表、大屏设计等! Web 版报表设计器,类似于 excel 操作风格,通过拖拽完成报表设计。 秉承 “简单、易用、专业” 的产品理念,极大的降低报表开发难度、缩短开发周期、节省成本、解决各类报表难题。 领先的企业级 We 报件,采用纯 Web 在线技术,专注于解决企业报表快速制作难题。 当前版本:v1.7.4 | 2024-04-01 集成依赖 <dependency> <groupId>org.jeecgframework.jimureport</groupId> <artifactId>jimureport-spring-boot-starter</artifactId> <version>1.7.4</version> </dependency> 升级日志 围绕使用体验进行了优化和亮点新功能升级、修复 issue 问题并重点解决老版 JeecgBoot 与...
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
推荐阅读
最新文章
- Hadoop3单机部署,实现最简伪集群
- CentOS7,8上快速安装Gitea,搭建Git服务器
- CentOS7编译安装Gcc9.2.0,解决mysql等软件编译问题
- SpringBoot2编写第一个Controller,响应你的http请求并返回结果
- CentOS7设置SWAP分区,小内存服务器的救世主
- SpringBoot2配置默认Tomcat设置,开启更多高级功能
- 设置Eclipse缩进为4个空格,增强代码规范
- Docker安装Oracle12C,快速搭建Oracle学习环境
- CentOS7编译安装Cmake3.16.3,解决mysql等软件编译问题
- CentOS7安装Docker,走上虚拟化容器引擎之路