若依框架,集成flowable工作流
参考文档:
flowable · 语雀
抄人家的代码:
https://gitee.com/tony2y/RuoYi-flowable.git
因为这是一个完整的项目,如果是空项目的话,直接下载就行了,已有项目移植。就可以往下看了,已调试通过。
效果:
或者:你可以看人家的演示系统:
若依管理系统
后端:创建一个ruoyi-flowable的包。原文件中部分domain mapper 在ruoyi-system下,为了方便管理,全部都给搞到ruoyi-flowable包下。最终结构如下。
需要移动的有
需要注意:
1.修改import 引用位置
2.修改mapper的命名空间
3.resource文件夹下,建立文件夹,必须一层一层建,先建mapper,再建flowable,不能直接mapper.flowable,会报错。
org.apache.ibatis.binding.BindingException: Invalid bound statement (not found): com.ruoyi.flowable.mapper.FlowDeployMapper.selectDeployList
4.改ruoyi-flowable的pom文件,更新一下maven
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd"><parent><artifactId>ruoyi</artifactId><groupId>com.ruoyi</groupId><version>3.8.3</version></parent><modelVersion>4.0.0</modelVersion><artifactId>ruoyi-flowable</artifactId><properties><maven.compiler.source>8</maven.compiler.source><maven.compiler.target>8</maven.compiler.target></properties><dependencies><dependency><groupId>com.ruoyi</groupId><artifactId>ruoyi-framework</artifactId></dependency><dependency><groupId>com.ruoyi</groupId><artifactId>ruoyi-system</artifactId></dependency><dependency><groupId>com.ruoyi</groupId><artifactId>ruoyi-common</artifactId></dependency><!--常用工具类 --><dependency><groupId>org.apache.commons</groupId><artifactId>commons-lang3</artifactId></dependency><!-- JSON工具类 --><dependency><groupId>com.fasterxml.jackson.core</groupId><artifactId>jackson-databind</artifactId></dependency><!-- <!– 阿里JSON解析器 –>--><dependency><groupId>com.alibaba</groupId><artifactId>fastjson</artifactId></dependency><dependency><groupId>org.projectlombok</groupId><artifactId>lombok</artifactId><optional>true</optional></dependency><dependency><groupId>io.swagger</groupId><artifactId>swagger-annotations</artifactId><scope>compile</scope></dependency><dependency><groupId>org.flowable</groupId><artifactId>flowable-engine</artifactId><scope>compile</scope></dependency><dependency><groupId>org.flowable</groupId><artifactId>flowable-spring-boot-starter-basic</artifactId></dependency><dependency><!-- websocket --><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-websocket</artifactId></dependency><dependency><groupId>com.googlecode.aviator</groupId><artifactId>aviator</artifactId><version>5.3.1</version></dependency><dependency><groupId>io.swagger</groupId><artifactId>swagger-annotations</artifactId><version>1.6.2</version><scope>compile</scope></dependency><dependency><groupId>com.baomidou</groupId><artifactId>mybatis-plus-extension</artifactId><version>3.5.1</version><scope>compile</scope></dependency><dependency><groupId>com.alibaba</groupId><artifactId>fastjson</artifactId><version>1.2.83</version><scope>compile</scope></dependency><dependency><groupId>xerces</groupId><artifactId>xercesImpl</artifactId><version>2.12.0</version></dependency></dependencies></project>
二、建立数据库表
因为移动了文件位置,会有一堆报错,处理一下。大概都是domain和mapper位置不一致引起的。然后运行后端,会自动建立flowable的相关数据表。但是有三张表是作者自己加的,参考sql,自己建立一下。
1.
三、前端
1.src/components文件夹下,放这几个文件夹
2.src/views文件夹下,放flowable文件夹 ,添加api
3.public文件夹下加libs
4.utils文件夹下,覆盖generator文件夹下内容,另外加入的有几个文件@/utils/db @/utils/generator/drawingDefalut @/utils/loadBeautifier @/utils/loadMonaco @/utils/loadTinymce
以上,除了views/flowable,其余基本上都是Form Generator表单设计器里需要的文件。
form-generator: Element UI表单设计及代码生成器
5.覆盖views/tool/build文件夹
6.有些位置有变动,需要修改
修改IconsDialog.vue(因为没有加入@icons 这个文件夹)
7.配置路由
8.npm install,然后npm run dev
看看需要哪些组件
提示,让install这些的
@/utils/db @/utils/generator/drawingDefalut @/utils/loadBeautifier @/utils/loadMonaco @/utils/loadTinymce
一看,这些位置有没有这个文件,二检查哪些文件Improt引用了之些文件,可能引用位置需要修改。
例如,下面这里(都在VUE文件里,没几个,好找)。
另外,需要Npm install vkbeautify。会有提示,缺少什么安装什么。
9.跑起来以后。增加菜单(参考 sql中的写,或者参照演示系统的)
INSERT INTO `sys_menu` VALUES (2020, '流程管理', 0, 6, 'flowable', NULL, 1, 0, 'M', '0', '0', NULL, 'cascader', 'tony', '2021-03-25 11:35:09', '', NULL, '');
INSERT INTO `sys_menu` VALUES (2022, '流程定义', 2020, 2, 'definition', 'flowable/definition/index', 1, 0, 'C', '0', '0', '', 'job', 'tony', '2021-03-25 13:53:55', 'admin', '2021-03-29 09:39:07', '');
INSERT INTO `sys_menu` VALUES (2023, '任务管理', 0, 7, 'task', NULL, 1, 0, 'M', '0', '0', '', 'dict', 'tony', '2021-03-26 10:53:10', 'admin', '2021-03-29 09:37:40', '');
INSERT INTO `sys_menu` VALUES (2024, '待办任务', 2023, 2, 'todo', 'flowable/task/todo/index', 1, 1, 'C', '0', '0', '', 'cascader', 'admin', '2021-03-26 10:55:52', 'admin', '2021-03-30 09:26:36', '');
INSERT INTO `sys_menu` VALUES (2025, '已办任务', 2023, 3, 'finished', 'flowable/task/finished/index', 1, 1, 'C', '0', '0', '', 'time-range', 'admin', '2021-03-26 10:57:54', 'admin', '2021-03-30 09:26:50', '');
INSERT INTO `sys_menu` VALUES (2026, '我的流程', 2023, 1, 'process', 'flowable/task/process/index', 1, 1, 'C', '0', '0', NULL, 'guide', 'admin', '2021-03-30 09:26:23', '', NULL, '');
INSERT INTO `sys_menu` VALUES (2027, '表单配置', 2020, 2, 'form', 'flowable/task/form/index', 1, 0, 'C', '0', '0', 'flowable:form:list', 'form', 'admin', '2021-03-30 22:55:12', 'admin', '2021-04-03 18:50:54', '');
INSERT INTO `sys_menu` VALUES (2028, '新增', 2027, 1, '', NULL, 1, 0, 'F', '0', '0', 'flowable:form:add', '#', 'admin', '2021-07-07 14:23:37', '', NULL, '');
INSERT INTO `sys_menu` VALUES (2029, '删除', 2027, 3, '', NULL, 1, 0, 'F', '0', '0', 'flowable:form:remove', '#', 'admin', '2021-07-07 14:24:10', '', NULL, '');
INSERT INTO `sys_menu` VALUES (2030, '编辑', 2027, 2, '', NULL, 1, 0, 'F', '0', '0', 'flowable:form:edit', '#', 'admin', '2021-07-07 14:24:31', '', NULL, '');
INSERT INTO `sys_menu` VALUES (2031, '新增', 2026, 1, '', NULL, 1, 0, 'F', '0', '0', 'system:deployment:add', '#', 'admin', '2021-07-07 14:25:22', '', NULL, '');
INSERT INTO `sys_menu` VALUES (2032, '编辑', 2026, 2, '', NULL, 1, 0, 'F', '0', '0', 'system:deployment:edit', '#', 'admin', '2021-07-07 14:25:47', '', NULL, '');
INSERT INTO `sys_menu` VALUES (2033, '删除', 2026, 3, '', NULL, 1, 0, 'F', '0', '0', 'system:deployment:remove', '#', 'admin', '2021-07-07 14:26:02', '', NULL, '');
INSERT INTO `sys_menu` VALUES (2034, '查询', 2027, 4, '', NULL, 1, 0, 'F', '0', '0', 'flowable:form:query', '#', 'admin', '2021-07-08 14:05:22', '', NULL, '');
10.如果报404错误,比如点击按钮时。可能是router/index.js没有配置路由。或者是按钮的push与配置的路由不对应。这个看你自己的定义。
11.语法修改。报错如下、
看源文件,版本问题。
需要改成
同理,confirm,notify
同
可以搜索,批量替换。
查看Json,资源初始化中。报错
缺少了这个组件
表单配置,编辑器不显示
解决方案:下载表单设计器源码。用这个config文件覆盖
form-generator: Element UI表单设计及代码生成器
这里我使用了wangEditor,比较简单,另外以前搞过,不想再费事。效果如下
这个我已经修改了文件上传,基本继承了原来的quill Editor。你需要使用哪个组件,直接修改config配置就行。可以看我的另一篇集成wangEditor富文本的文章。
这里改成Editor,因为我已将原来的Editor替换成wangEditor,并全局挂载
若依框架,集成flowable工作流相关推荐
- 项目集成Flowable工作流
企业级项目集成Flowable工作流,基于(师父)的开源项目的集成,此开源项目是师傅十几年的经验和实战总结而成,直接可以用于企业开发,旨为帮助更多需要帮助的人! 说明 链接 项目开原地址 https: ...
- 2分钟 Docker 部署 SprinBoot 集成 Flowable 工作流引擎
文章目录 一. 简介 二. docker流程引擎部署 2.1. jdk安装配置 2.2. 下载打包好的tar包 2.3. 上传tar包 2.4. 在线安装Docker 2.5. 检验安装是否成功 三. ...
- SprinBoot 集成 Flowable 工作流引擎镜像制作
文章目录 一.实现原理 1. 镜像制作个数 2. 调用流程 3. 调用流程分析 二.前期准备 2.1. 克隆项目到本地 2.2. 修改数据库连接和容器别名 2.3. 修改请求地址为容器别名(后端) 三 ...
- activiti 工作流_springboot+activiti+angular 集成activiti工作流实现,源码分享
springboot+activiti+angular 这是spring boot框架集成activiti工作流实现,采用目前流行的restful api接口调用,前端使用angular js框架实现 ...
- springboot+vue 审批工作流集成flowable(springboot实现工作流)
仿钉钉审批流程图在线绘制.业务申请.审批.流转.委托.催办,springboot集成工作流基础框架 前言 目前市场上有很多开源平台没有整合工作流,即使有,也是价格不菲的商业版,这次推荐的是在一个基础开 ...
- SprinBoot 集成 Flowable/Activiti工作流引擎
文章目录 一. Flowable工作流引擎 1. flow 2. flowable 3. cims 4. RuoYi-flowable 5. springboot-flowable-modeler 6 ...
- SpringBoot整合Flowable工作流引擎框架
Flowable工作流引擎框架介绍 一个Java编写的轻量级业务流程引擎,为开发人员.系统管理员和业务用户提供工作流和业务流程管理(BPM)平台. 不仅包括BPMN,还有DMN决策表和CMMN Cas ...
- [3]工作流框架:Flowable Restful API 一览
前言 在前面的两个章节中<[1]工作流框架:Flowable基本安装>和<[2]工作流框架:支持MySQL的Flowable安装>两个章节中,笔者介绍了如何安装和配置工作流引擎 ...
- flowable工作流_【程序源代码】Springboot开源工作流开发框架
关键字:springboot 工作流框架 管理系统 框架 正文 | 内容 01 - [介绍] zjmzxfzhl 是基于 SpringBoot + Spring Security OAuth2(Sh ...
最新文章
- 通过FM CO_VB_ORDER_POST更新生产订单的Components数据
- php如何测量坐标周围,php – 如何检查经度/纬度点是否在坐标范围内?
- IOS约束三个按钮等宽等高,均分整个view,
- python是属于it界吗_转行IT行业,Python是不是一个好的选择?
- 2012网页设计趋势(下)
- 我会铭记这一天:2016年10月25日
- flex布局怎么设置子元素大小_Web前端(三):前端布局
- java中object转数组_在Java中将Object []数组转换为int []数组?
- idea 导出项目到eclipse
- 数据库第6章总结——关系数据理论
- JQuery 如何使用插件如何安装插件(详细讲解)
- 重启服务器后docker wordpress “Error establishing a database connection”解决办法
- 揪出手机耗电元凶——高德地图缓存数据
- Jquery 中a||的含义
- 【leetcode】出界的路径数----迭代问题与计算思维
- 如何解除病毒对各种杀毒软件的劫持
- YUV420(I420)与YV12的区别,YUV420p与YUV420区别
- 怎么打开jsp文件目录_它怎么能这么快?
- Apache Camel源码研究之Rest
- win7系统 无法访问 Windows installer服务。Windows Installer 没有正确安装时