参考文档:

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><!--        &lt;!&ndash; 阿里JSON解析器 &ndash;&gt;--><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工作流相关推荐

  1. 项目集成Flowable工作流

    企业级项目集成Flowable工作流,基于(师父)的开源项目的集成,此开源项目是师傅十几年的经验和实战总结而成,直接可以用于企业开发,旨为帮助更多需要帮助的人! 说明 链接 项目开原地址 https: ...

  2. 2分钟 Docker 部署 SprinBoot 集成 Flowable 工作流引擎

    文章目录 一. 简介 二. docker流程引擎部署 2.1. jdk安装配置 2.2. 下载打包好的tar包 2.3. 上传tar包 2.4. 在线安装Docker 2.5. 检验安装是否成功 三. ...

  3. SprinBoot 集成 Flowable 工作流引擎镜像制作

    文章目录 一.实现原理 1. 镜像制作个数 2. 调用流程 3. 调用流程分析 二.前期准备 2.1. 克隆项目到本地 2.2. 修改数据库连接和容器别名 2.3. 修改请求地址为容器别名(后端) 三 ...

  4. activiti 工作流_springboot+activiti+angular 集成activiti工作流实现,源码分享

    springboot+activiti+angular 这是spring boot框架集成activiti工作流实现,采用目前流行的restful api接口调用,前端使用angular js框架实现 ...

  5. springboot+vue 审批工作流集成flowable(springboot实现工作流)

    仿钉钉审批流程图在线绘制.业务申请.审批.流转.委托.催办,springboot集成工作流基础框架 前言 目前市场上有很多开源平台没有整合工作流,即使有,也是价格不菲的商业版,这次推荐的是在一个基础开 ...

  6. SprinBoot 集成 Flowable/Activiti工作流引擎

    文章目录 一. Flowable工作流引擎 1. flow 2. flowable 3. cims 4. RuoYi-flowable 5. springboot-flowable-modeler 6 ...

  7. SpringBoot整合Flowable工作流引擎框架

    Flowable工作流引擎框架介绍 一个Java编写的轻量级业务流程引擎,为开发人员.系统管理员和业务用户提供工作流和业务流程管理(BPM)平台. 不仅包括BPMN,还有DMN决策表和CMMN Cas ...

  8. [3]工作流框架:Flowable Restful API 一览

    前言 在前面的两个章节中<[1]工作流框架:Flowable基本安装>和<[2]工作流框架:支持MySQL的Flowable安装>两个章节中,笔者介绍了如何安装和配置工作流引擎 ...

  9. flowable工作流_【程序源代码】Springboot开源工作流开发框架

    关键字:springboot 工作流框架 管理系统  框架 正文 | 内容 01 - [介绍] zjmzxfzhl 是基于 SpringBoot + Spring Security OAuth2(Sh ...

最新文章

  1. 通过FM CO_VB_ORDER_POST更新生产订单的Components数据
  2. php如何测量坐标周围,php – 如何检查经度/纬度点是否在坐标范围内?
  3. IOS约束三个按钮等宽等高,均分整个view,
  4. python是属于it界吗_转行IT行业,Python是不是一个好的选择?
  5. 2012网页设计趋势(下)
  6. 我会铭记这一天:2016年10月25日
  7. flex布局怎么设置子元素大小_Web前端(三):前端布局
  8. java中object转数组_在Java中将Object []数组转换为int []数组?
  9. idea 导出项目到eclipse
  10. 数据库第6章总结——关系数据理论
  11. JQuery 如何使用插件如何安装插件(详细讲解)
  12. 重启服务器后docker wordpress “Error establishing a database connection”解决办法
  13. 揪出手机耗电元凶——高德地图缓存数据
  14. Jquery 中a||的含义
  15. 【leetcode】出界的路径数----迭代问题与计算思维
  16. 如何解除病毒对各种杀毒软件的劫持
  17. YUV420(I420)与YV12的区别,YUV420p与YUV420区别
  18. 怎么打开jsp文件目录_它怎么能这么快?
  19. Apache Camel源码研究之Rest
  20. win7系统 无法访问 Windows installer服务。Windows Installer 没有正确安装时

热门文章

  1. linux 下glog的安装
  2. 北宋三司若干问题研究
  3. sns是什么?可以做什么?
  4. houdini环境变量服务器文件读不了,Windows下在普通命令行窗口里初始化Houdini环境...
  5. Every derived table must have its own alias(sql语句错误解决方法)
  6. vue读取json文件
  7. 《日语综合教程》第七册 第五課 みやこ人と都会人
  8. Unity 内置访问安卓权限
  9. 比KEEP更好,运动健身、塑形瘦身的小程序新选择
  10. 五分钟学GIS | BIM与三维GIS的融合