使用activiti总结--bpmn画流程图

2023-05-16

假期结束,赶紧总结一下前几天使用的Activiti工作流的一些方法

简单介绍一下Activiti:

Activiti一套完整的方便的业务流程管理(BPM)框架,它是覆盖了业务流程管理、工作流、服务协作等领域的一个开源的、灵活的、易扩展的可执行流程语言框架。开发人员可以通过插件直接绘画出业务。

开发工具: IDEA

画流程图插件:actiBPM(在IDEA插件管理中安装就可以了)

BPMN:业务流程建模与标注(Business Process Model and Notation,BPMN) ,描述流程的基本符号,包括这些图元如何组合成一个业务流程图(Business Process Diagram)

新建BPMN文件

页面总共分三部分:

右侧:流程符号,中间:画图(将流程符号拖拽至此),左侧:不同流程符号可以配置的参数

连线:鼠标放在符号中间,变成黑圈的时候按左键拉就可以了

创建完成后是一个.bpmn文件,然后可以把文件复制,把后缀改成xml,就是一个xml文件。下面是画的一个简单产品审批流程:

截取xml文件中的一段:

<process id="termTest" isClosed="false" isExecutable="true" name="termTest" processType="None">
  <startEvent id="start_1" name="StartEvent"/>
  <endEvent id="_8" name="EndEvent"/>
  <userTask activiti:candidateUsers="${productUsers}" activiti:exclusive="true" id="_9" name="产品审核"/>
  <userTask activiti:candidateGroups="${requireGroup}" activiti:exclusive="true" id="_10" name="需求审核"/>
  <userTask activiti:assignee="张三" activiti:exclusive="true" id="_11" name="财务审核"/>
  <userTask activiti:assignee="${user}" activiti:exclusive="true" id="_12" name="发起人测试"/>
  <sequenceFlow id="_13" sourceRef="start_1" targetRef="_9"/>
  <sequenceFlow id="_14" sourceRef="_9" targetRef="_10"/>
  <sequenceFlow id="_15" sourceRef="_10" targetRef="_11"/>
  <sequenceFlow id="_16" sourceRef="_11" targetRef="_12"/>
  <sequenceFlow id="_17" sourceRef="_12" targetRef="_8"/>
</process>

bpmn和xml文件总结:

startEvent :开始节点

UserTask:表示需要代办人处理的节点,属性值id即使上图参数中id,可以自己定义,但必须是唯一,name是节点名。

sequenceFlow :节点之间逻辑关系,流程图中的逻辑在xml中都有,这一点感觉非常好

<sequenceFlow id="_13" sourceRef="start_1" targetRef="_9"/>  当前节点id=_13 上个节点id=start_1 下个节点id=_9

我列举了几种指定代办人的方法,${} 表示使用参数的传递,当然也可以传具体指

1.candidateUsers  指定的是代办人,参数 ${productUsers},如下图配置参数

传递具体值,如下图配置参数 多个用英文逗号分隔

2.candidateGroups  指定的是用户组 参数${requireGroup} ,和上面的区别就是一个指定人,一个指定用户组(下面将会细讲)

指定用户组具体指

3.assignee 指定办理人 参数 ${user},candidateUsers和candidateGroups组代办任务,assigne个人待办任务

组代办任务认领后变成个人待办任务,解除认领回到组待办任务,这些再实际运用中会常见。

指定办理人具体指

画图完成,前期工作准备的好,后续才会更便捷,流程图设计一定要完善,我只列举了简单的审批流程,容易上手,复杂的流程还需要继续研究

晚上加班,把测试代码整理出来。。。。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

使用activiti总结--bpmn画流程图 的相关文章

  • find_package opencv

    1 find package OpenCV 3 REQUIRED 通过OpenCV DIR变量寻找OpenCVConfig cmake文件 xff0c 默认在 usr share OpenCV中 set OpenCV DIR 34 34 指
  • 工业通讯领域的总线、协议、规范、接口、数据采集与控制系统

    一 工控安全 工控 xff0c 指的是工业控制自动化 xff0c 主要利用电气 机械 软件组合的方式实现 xff0c 即是工业控制系统 xff0c 或者是工厂自动化控制 工控安全指的是工业控制系统的数据 网络和系统安全 随着工业信息化的迅猛
  • Java Web 开发详解

    一 Web基础 1 Web 概述 Web 在英文中的含义是网状物 网络 在计算机领域 xff0c 它通常指的是后者 xff0c 即网络 像 WWW 是由 3 个单词组成的 xff0c 即World Wide Web xff0c 中文含义是万
  • 【无标题】amd卡顿,黑屏,解决办法

    amd黑屏几秒原因是日光灯启动 xff0c 空调冰箱压缩机启动后照成的 xff0c 这种情况是220v的电路和显示器的hdmi线相隔太近分开或者换dp也可以 amd卡顿几秒 cpu百分百 是amd显卡驱动设置问题 改游戏模式为标准就行了
  • 处理点云程序段错误process has died [pid 31695, exit code -11, cmd /home

    问题 xff1a 编写了一个处理点云的程序 编译全部通过 xff0c 播放点云bag包后运行程序时报错 xff1a plane fitter 1 process has died pid 31695 exit code 11 cmd hom
  • [ WARN] [1531227099.238940419]: MessageFilter [target=odom ]: Dropped 100.00% of messages so far. Pl

    执行roslaunch rplidar ros rplidar launch 报错信息 WARN 1531227099 238940419 MessageFilter target 61 odom Dropped 100 00 of mes
  • libcurl第十课 HTTPS交互

    场景 跟乐橙云访问 xff0c 需要使用HTTPS协议 额外配置 xff0c 否则执行返回CURLE UNSUPPORTED PROTOCOL错误 1 xff09 libcurl版本升级到7 61 0版本 2 xff09 libcurl项目
  • OpenCVSharp 入门

    OpenCVSharp 入门 了解对象和图像处理编程的开发人员应该能够轻松地学会如何使用OpenCVsharp 获得OpenCVSharp 要获得OpenCVSharp xff0c 要使用NuGet下载opencvsharp xff0c 它
  • 头文件与库文件

    函数的声明和定义 xff0c 编译过程 声明 xff1a 让编译器知道函数的名字 xff0c 参数 xff0c 返回类型 可以不存在 一般需要在函数使用之前 xff0c 一定要先声明 xff0c 再使用 定义 xff1a 函数的定义就是函数
  • ROS安装过程sudo rosdep init+rosdep update出现错误:'The read operation timed out'

    xfeff xfeff 1 问题描述 xff1a 64 rosdepupdate readingin sources list data from etc ros rosdep sources list d ERROR unable to
  • Ubuntu Desktop下自动启动终端并运行脚本

    进入桌面后按Alt 43 F2组合键或Win键 xff0c 输入gnome session properties选择出现的那个应用程序 点击 添加 xff0c 输入名称和命令 xff08 注意 xff0c 这里的命令就是一个单纯的shell
  • include头文件的顺序以及双引号和尖括号的区别?

    Include头文件的顺序 对于include的头文件来说 xff0c 如果在文件a h中声明一个在文件b h中定义的变量 xff0c 而不引用b h 那么要在a c文件中引用b h文件 xff0c 并且要先引用b h xff0c 后引用a
  • The manifest must not cotain the following tags:run_depend解决方法

    当你在package xml中 xff0c 添加完run depend后 xff0c 编译出错 xff0c 显示The manifest must not cotain the following tags run depend xff0c
  • Astar算法

    1 什么是Astar算法 xff1f Astar算法是一种图形搜索算法 xff0c 常用于寻路 它是个以广度优先搜索为基础 xff0c 集Dijkstra算法与最佳优先 best fit 算法特点于一身的一种算法 它通过下面这个函数来计算每
  • 十进制转十六进制(C语言)

    输入 xff1a Entern 666 输出 xff1a 29A include 34 stdio h 34 include 34 stdlib h 34 int main void int n a1 count 61 0 j count
  • STM32串口发送数据和接收数据方式总结

    之前写了篇关于ESP8266使用AT指令进行互相通讯的实验 xff0c 在写STM32串口接发数据的程序中 xff0c 觉得有必要将之前学的有关于串口方面的使用经历加以总结 串口发送数据 xff1a 1 串口发送数据最直接的方式就是标准调用
  • fused_adam.so: cannot open shared object file: No such file or directory问题排查与解决

    最近一个同学加载一个新的预训练模型时候碰到了这样一个问题 xff0c 帮他排查解决一下 xff1a File 34 data anaconda3 envs nlp lib python3 6 site packages torch util
  • libcurl第十二课 内存分析

    在实际的测试环境中 xff0c 内存在不断的增长 xff0c 尽管不是很明显 代码申请内存分析 struct Curl multi Curl multi handle int hashsize socket hash int chashsi
  • stm32 esp8266 ota升级-tcp模拟http

    stm32 esp8266 ota系列文章 xff1a stm32 esp8266 ota 快速搭建web服务器之docker安装openresty stm32 esp8266 ota升级 tcp模拟http stm32 esp8266 o
  • vscode配置C环境

    vscode配置C环境 最近感觉基础不太行 xff0c 想重新看下数据结构 xff0c 用c语言重新写一下经典的结构 也不想换编辑器 xff0c 就想用vscode xff0c 刚好github上有一个一键配置c环境的工具 记录一下 配置c

随机推荐

  • 【光线追踪系列一】PPM输出;自定义vec3;光线、简单相机及天空采样

    本次光线追踪系列从基础重新开始 xff0c 主要参照 Ray Tracing in One Weekend xff0c 具体实现代码框架见 https github com RayTracing raytracing github io 本
  • 服务器总线协议_第一章----I2C总线协议入门

    目录 一 概述 二 首先了解一下I2C的I O结构 三 其次了解一下I2C的时序 第一部分 xff1a 起始停止信号简介 第二部分 xff1a I2C的时序部分要求 第三部分 xff1a I2C的一帧数据的格式 四 最终问与答 1 xff0
  • 服务器总线协议_第二章----I2C总线协议进阶

    敬请期待 xff0c 预计8月1日发布 xff0c 需要请加个关注
  • 服务器总线协议_第三章----SVID电源管理协议

    目录 一 概述 二 SVID协议组成方式 三 SVID协议拓扑要求 四 SVID如何判别读写 Master读操作 Master写操作 五 问与答 1 xff09 SVID有没有特殊的要求 xff1f 一 概述 首先先了解一下SVID的全称
  • PM_Sync的作用

    目录 一 先来了解一下PM Sync的全称 xff1a 一 PM Sync简介 PM Sync xff1a Power Management synchronization 同步电源管理 在知道这个信号的作用之前需要先来了解一下 ADR 二
  • si4438使用stm32f103配置调试成功!

    刚拿到si4438时候在网上找了一大波资源 xff0c 发现能使用的并没有多少 xff0c 于是自己配置一发 经过不懈努力配置成功 xff0c 现在将一些配置过程分享给大家 xff01 源码已上传 尽情下载 xff01 1 首先打开工程文件
  • 教你如何使用stm32发送一帧数据(结构体中的数据)

    在这篇文章中我介绍一下如何通过串口发送一帧存在结构体中的数据 通过串口接受一帧数据请参考的我博客中的文章 教你如何使用stm32接收一帧数据 xff01 一 xff1a 在 h首先定义一个结构体 typedef struct uint8 t
  • 浅谈线性稳压电源和开关稳压电源(开关电源)

    目前现有电源主要分为两大类 xff1a 线性稳压电源和开关稳压电源 xff08 开关电源 xff09 线性稳压电源 线性稳压电源经过变压 整流 滤波 稳压实现电源稳压 优点 xff1a 稳定性好 xff0c 瞬态响应速度快 xff0c 可靠
  • c++ #define 用法

    1 用于表示将两个参数连在一起 xff0c 其中宏的 前后空格会被省略 define CONNA a b a b define CONNB a b a b int main string a 61 CONNA 34 one 34 34 tw
  • MySQL第五课 Table has no partition for value

    场景 MySQL由于安全性要求 xff0c 版本升级之后 xff0c 执行插入数据出现Table has no partition for value 错误 已有版本5 7 20 log升级到5 7 26 log 说明 建表过程中 xff0
  • DSP数据安全平台

    数据安全平台 xff08 DSP xff0c Data Security Platforms xff09 的概念来源于Gartner的 2021数据安全技术成熟度曲线 xff0c DSP定义为以数据安全为中心的产品和服务 xff0c 旨在跨
  • c++ 数学库

    链接 link
  • vscode使用restClient实现各种http请求

    vscode使用restClient实现各种http请求 一 xff0c 安装插件 首先 xff0c 我们要在vscode的扩展中 xff0c 搜索rest Client xff0c 然后安装它 xff0c 这里我已经安装过了 安装后 xf
  • K210和STM32串口通信(亲测有效)

    声明 最近想做一个K210数字识别和寻迹 xff0c 方便完成2021年电赛F题 xff0c 完成了数字训练和脱机运行就想赶紧进行一次通信 xff0c 调了好几天 郁闷 xff0b 自闭几天 按照官方的历程看 xff0c 配置的没问题但是会
  • 简单Rabbitmq 发送消息和接收消息

    简单Rabbitmq 发送消息和接收消息 1 先在Rabbitmq配置文件中预先创建好交换器 xff0c 队列 xff0c 路由等信息 2 创建生产者发送消息 64 Autowired private RabbitTemplate rabb
  • Elasticsearch(ES6)------(4) ES设置用户名密码访问

    Elasticsearch ES xff08 1 xff09 下载 安装 43 kibana 下载 xff08 2 xff09 本机多节点启动 43 ElasticSearch head插件使用 xff08 3 xff09 索引 文档概念和
  • Elasticsearch(ES6) --根据条件修改字段值

    POST index name doc update by query 34 query 34 34 match 34 34 version 34 34 12 22 34 34 script 34 34 inline 34 34 ctx s
  • redis限流使用lua脚本

    lua脚本 xff0c 计数器限流 5秒内限流10次 64 param key 64 return public boolean acquire String key long now 61 System currentTimeMillis
  • ES6分页from+size、search_after两种查询

    1 from 43 size 分页查询 64 RequestMapping value 61 34 get 34 method 61 RequestMethod GET public BaseResponse lt List lt Obje
  • 使用activiti总结--bpmn画流程图

    假期结束 xff0c 赶紧总结一下前几天使用的Activiti工作流的一些方法 简单介绍一下Activiti Activiti一套完整的方便的业务流程管理 xff08 BPM xff09 框架 xff0c 它是覆盖了业务流程管理 工作流 服