springboot2.5.2与|springboot2.5.2与 flowable6.6.0整合流程引擎应用分析
1.pom
org.springframework.boot spring-boot-starter-parent2.5.2 UTF-8UTF-8 1.8 6.6.0 org.flowable flowable-spring-boot-starter${flowable.version} org.flowable flowable-json-converter${flowable.version} org.flowable flowable-ui-modeler-rest${flowable.version} org.flowable flowable-ui-modeler-logic${flowable.version} org.apache.logging.log4j log4j-slf4j-implorg.flowable flowable-ui-modeler-conf${flowable.version}
2.FlowableConfig配置类
package org.fh.config; import org.flowable.spring.SpringProcessEngineConfiguration; import org.flowable.spring.boot.EngineConfigurationConfigurer; import org.springframework.context.annotation.Configuration; import org.springframework.stereotype.Controller; /** * 说明:Flowable配置 * 作者:FH Admin * from:fhadmin.cn */@Controller@Configurationpublic class FlowableConfig implements EngineConfigurationConfigurer {@Overridepublic void configure(SpringProcessEngineConfiguration engineConfiguration) {engineConfiguration.setActivityFontName("宋体"); engineConfiguration.setLabelFontName("宋体"); engineConfiguration.setAnnotationFontName("宋体"); }}3.重写 SecurityUtils 重构流程编辑器获取用户信息package org.flowable.ui.common.security; import org.fh.util.Jurisdiction; import org.flowable.common.engine.api.FlowableIllegalStateException; import org.flowable.idm.api.User; import org.flowable.ui.common.model.RemoteUser; import org.springframework.security.core.Authentication; import org.springframework.security.core.context.SecurityContext; import org.springframework.security.core.context.SecurityContextHolder; import java.util.ArrayList; import java.util.List; /** * 说明:重构流程编辑器获取用户信息 * 作者:FH Admin * from:fhadmin.cn */public class SecurityUtils {private static User assumeUser; private static SecurityScopeProvider securityScopeProvider = new FlowableSecurityScopeProvider(); private SecurityUtils() {}/*** Get the login of the current user.*/public static String getCurrentUserId() {User user = getCurrentUserObject(); if (user != null) {return user.getId(); }return null; }/*** @return the {@link User} object associated with the current logged in user.*/public static User getCurrentUserObject() {if (assumeUser != null) {return assumeUser; }RemoteUser user = new RemoteUser(); user.setId(Jurisdiction.getUsername()); user.setDisplayName(Jurisdiction.getName()); user.setFirstName(Jurisdiction.getName()); user.setLastName(Jurisdiction.getName()); user.setEmail("admin@flowable.com"); user.setPassword("123456"); List pris = new ArrayList<>(); pris.add(DefaultPrivileges.ACCESS_MODELER); pris.add(DefaultPrivileges.ACCESS_IDM); pris.add(DefaultPrivileges.ACCESS_ADMIN); pris.add(DefaultPrivileges.ACCESS_TASK); pris.add(DefaultPrivileges.ACCESS_REST_API); user.setPrivileges(pris); return user; }public static void setSecurityScopeProvider(SecurityScopeProvider securityScopeProvider) {SecurityUtils.securityScopeProvider = securityScopeProvider; }public static SecurityScope getCurrentSecurityScope() {SecurityContext securityContext = SecurityContextHolder.getContext(); if (securityContext != null && securityContext.getAuthentication() != null) {return getSecurityScope(securityContext.getAuthentication()); }return null; }public static SecurityScope getSecurityScope(Authentication authentication) {return securityScopeProvider.getSecurityScope(authentication); }public static SecurityScope getAuthenticatedSecurityScope() {SecurityScope currentSecurityScope = getCurrentSecurityScope(); if (currentSecurityScope != null) {return currentSecurityScope; }throw new FlowableIllegalStateException("User is not authenticated"); }public static void assumeUser(User user) {assumeUser = user; }public static void clearAssumeUser() {assumeUser = null; }}
工作流模块----------------www.fhadmin.cn---------------
1.模型管理:web在线流程设计器、导入导出xml、复制流程、部署流程
2.流程管理:导入导出流程资源文件、查看流程图、根据流程实例反射出流程模型、激活挂起
3.运行中流程:查看流程信息、当前任务节点、当前流程图、作废暂停流程、指派待办人、自由跳转
4.历史的流程:查看流程信息、流程用时、流程状态、查看任务发起人信息
5.待办任务:查看本人个人任务以及本角色下的任务、办理、驳回、作废、指派一下代理人
6.已办任务:查看自己办理过的任务以及流程信息、流程图、流程状态(作废 驳回 正常完成)
办理任务时候可以选择用户进行抄送,就是给被抄送人发送站内信通知当前审批意见以及备注信息
注:当办理完当前任务时,下一任务待办人会即时通讯收到新任务消息提醒,当作废和完结任务时,任务发起人会收到站内信消息通知
【springboot2.5.2与|springboot2.5.2与 flowable6.6.0整合流程引擎应用分析】到此这篇关于springboot2.5.2与 flowable6.6.0整合流程引擎应用分析的文章就介绍到这了,更多相关springboot整合 flowable内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!
推荐阅读
- JAVA(抽象类与接口的区别&重载与重写&内存泄漏)
- Docker应用:容器间通信与Mariadb数据库主从复制
- 《真与假的困惑》???|《真与假的困惑》??? ——致良知是一种伟大的力量
- 第326天
- Shell-Bash变量与运算符
- 逻辑回归的理解与python示例
- Guava|Guava RateLimiter与限流算法
- 我和你之前距离
- CGI,FastCGI,PHP-CGI与PHP-FPM
- 原生家庭之痛与超越