目录

1 导包

2 application.yml配置 添加以下属性

3 创建表(初始化表数据)

4 常用方法总结(很重要的)

4.1 属性注入

4.2 按照任务id查询数据

4.3 查询审批候选人

4.4 开启流程

4.5 领取任务

4.6 任务审批


1 导包

<dependency><groupId>org.flowable</groupId><artifactId>flowable-spring-boot-starter</artifactId><version>${flowable.version}</version>
</dependency>

2 application.yml配置 添加以下属性

flowable:

async-executor-activate: false #关闭定时任务JOB

# 将databaseSchemaUpdate设置为true。当Flowable发现库与数据库表结构不一致时,会自动将数据库表结构升级至新版本。

database-schema-update: true

3 创建表(初始化表数据)

public static void main(String[] args) {

//1、创建ProcessEngineConfiguration实例,该实例可以配置与调整流程引擎的设置

ProcessEngineConfiguration cfg=new StandaloneProcessEngineConfiguration()

//2、通常采用xml配置文件创建ProcessEngineConfiguration,这里直接采用代码的方式

//3、配置数据库相关参数

.setJdbcUrl("jdbc:mysql://localhost:3306/flowable_demo?        useUnicode=true&characterEncoding=utf8&serverTimezone=GMT%2b8&nullCatalogMeansCurrent=true")

.setJdbcUsername("root")

.setJdbcPassword("root")

.setJdbcDriver("com.mysql.jdbc.Driver")

.setDatabaseSchemaUpdate(ProcessEngineConfiguration.DB_SCHEMA_UPDATE_TRUE);

//4、初始化ProcessEngine流程引擎实例

ProcessEngine processEngine=cfg.buildProcessEngine();

}

执行以上main方法,便可生成数据库表

4 常用方法总结(很重要的)

4.1 属性注入

@Resource

private ProcessEngine processEngine;

@Resource

private TaskService taskService;

@Resource

private RuntimeService runtimeService;

4.2 按照任务id查询数据

Task task = taskService.createTaskQuery().taskId(taskId).singleResult();

4.3 查询审批候选人

taskService.createTaskQuery().includeIdentityLinks().singleResult().getIdentityLinks();

4.4 开启流程

HashMap map = new HashMap<>();

map.put("userIds", candidateUserIds); // 审批候选人

runtimeService.startProcessInstanceByKey(processDefinitionKey, map);

processDefinitionKey(xml文件中流程定义id):为xml文件中的id

4.5 领取任务

taskService.claim(taskId,userId);

4.6 任务审批

HashMap<String, Object> map = new HashMap<>();
        map.put("result", reqVo.getApprovalResult().getValue());
        map.put("userIds", reqVo.getCandUserIds());
        taskService.complete(taskId, map);

flowable审批流+集成springboot相关推荐

  1. 【Odoo】集成flowable,解决复杂的审批流

    目录 一.背景 二.本地部署flowable 三.设计流程demo 四.Odoo对接flowable 1.同步流程配置 2.绑定业务模型 五.demo实操 一.背景 Odoo的审批流实际是状态机,通过 ...

  2. 计算机毕业设计springboot基于审批流的OA管理系统t4q46源码+系统+程序+lw文档+部署

    计算机毕业设计springboot基于审批流的OA管理系统t4q46源码+系统+程序+lw文档+部署 计算机毕业设计springboot基于审批流的OA管理系统t4q46源码+系统+程序+lw文档+部 ...

  3. 二次开发:flowable审批流程实践与创建流程源码分析

    二次开发:flowable审批流程实践与创建流程源码分析 上一篇已经描述了基于开源项目https://doc.iocoder.cn/的flowable的快速开发,创建了一个租户,创建了用户和相应的岗位 ...

  4. activiti 工作流设置并行审批_activity、jbpm5、snakerflow常用工作流审批流对比

    # 审批流调研 背景 由于目前产品研发组支持的产品项目越来越多, 同时几乎每个项目都会有导出审批,流程流转等需求,本着提高开发效率和组件化的目的,调研和开发通用的工作流组件,为后面的项目和新的需求提供 ...

  5. Asp.net生成工作流、审批流的解决方案(asp.net workflow svg)

    公司的上一个项目需要自定义工作流和审批流,那就需要一个可视化的定义工作流和审批流的工具,找了很多都不太适合我们的项目,项目是用Asp.net开发,需要在网页里实现工作流的自定义,说白了就是写一个程序, ...

  6. java 审批流_一文读懂工作流

    网上关于工作流引擎有比较多的简介,也有很多工作流的实际应用场景.本文结合笔者多年对工作流的经验来阐述一下对工作流的理解. 一.什么是工作流? 先贴上wiki百科对于工作流的定义 工作流(Workflo ...

  7. Asp.net生成工作流、审批流的解决方案

    Asp.net生成工作流.审批流的解决方案(asp.net workflow svg) 公司的上一个项目需要自定义工作流和审批流,那就需要一个可视化的定义工作流和审批流的工具,找了很多都不太适合我们的 ...

  8. 第13章 Kotlin 集成 SpringBoot 服务端开发(2)

    13.2.10 搜索关键字管理 本节我们开发爬虫爬取的关键字管理的功能. 数据库实体类 首先,新建实体类SearchKeyWord 如下 package com.easy.kotlin.picture ...

  9. 自建工单(审批流)系统设计

    「扫码关注我,面试.各种技术(mysql.zookeeper.微服务.redis.jvm)持续更新中-」 背景 不知道大家在平时工作中有没有遇到过类似的问题?业务团队经常去线下收集各种业务表格,进行统 ...

  10. 【java】java sftp访问文件夹,java smb访问共享文件夹 按时间过滤查找文件 集成springboot

    文章目录 java的sftp传输 sftp按时间过滤文件列表 sftp注意事项 java smb1.0传输 smb1.0按时间过滤文件列表 smb注意事项 java smb2.0/3.0传输(smbj ...

最新文章

  1. linux 64平台上编译32位程序: GCC编译选项 -m64 -m32 -mx32
  2. 中国唯一入选 Forrester 领导者象限,阿里云 Serverless 全球领先
  3. win7下 apache2.2 +php5.4 环境搭建
  4. this 的指向问题
  5. 读取 Radio 的值
  6. 如何修改默认浏览器_iPhone可以修改默认浏览器了
  7. php限制接口访问次数_令牌桶限流思路分享(PHP+Redis实现机制)
  8. 强连通图------(1)通过两次DFS或BFS判断是不是强连通图
  9. 阶段3 3.SpringMVC·_05.文件上传_1 文件上传之上传原理分析和搭建环境
  10. 台式计算机如何封存,一种计算机用声卡封存装置的制作方法
  11. 三层交换机配置的步骤
  12. 「名企直推,人才优聘」计划启动,寻找掌握 TiDB 技能的「你」
  13. repo sync repo reset: error: entry ‘comand.py ‘ not uptodate . cannot merge
  14. angularjs实现 - 增删改查+排序+敏感字(最终版)
  15. pdf添加水印的方法,pdf加水印步骤
  16. OPENWRT 修改串口(ttyS*)笔记
  17. 【python】RuntimeError: Set changed size during iteration 问题解决
  18. 用过印象笔记和石墨文档后,我发现了适合教师的写作软件
  19. PHP7+MySql开发的视频点播程序,知识付费系统
  20. 关于电脑打开多个微信的方法

热门文章

  1. 【华为机试真题 Python实现】勾股数元祖
  2. 【SMAP 土壤水分的质量处理】
  3. keil ARM 生成BIN文件的两种方式,直接复制就能用
  4. 第3节:alphapose环境配置
  5. 一种车牌识别摄像机在立体车库中的应用方案
  6. 百度编辑器上传图片后转到七牛存储
  7. 【linux内核分析与应用-陈莉君】虚拟文件系统的主要数据结构
  8. 宫崎骏电影-Music
  9. 【图】Excel快捷键大全+函数公式 职场必备
  10. android模拟器插件,Android Online Emulator - Android在线模拟器插件