【Activiti7】什么是工作流?

本文涉及的产品
云数据库 RDS MySQL,集群系列 2核4GB
推荐场景:
搭建个人博客
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
RDS MySQL Serverless 高可用系列,价值2615元额度,1个月
简介: 【Activiti7】什么是工作流?

1.简介

1.1工作流:工作的一个流程,事务发展的一个业务过程

1.2工作流系统:具有工作流的系统。 如果一个系统具备流程的自动化管理功能,这个系统就可以成为工作流系统,在计算机的帮助下,能够实现流程的自动化控制,就成为工作流

1.3工作流引擎:为实现在自动化控制,Activiti引擎就产生了

Activiti 是一个新兴的基于 Apache 许可的支持 BPMN 2.0 标准的开源 BPM 产品。它是一个轻量级,可嵌入的 BPM 引擎,并且提供了功能丰富的开发和流程设计工具。Activiti 其核心是 BPMN 2.0 的流程引擎。BPMN 是目前被各 BPM 厂商广泛接受的 BPM 标准,全称为 BusinessProcess Model and Notation,由 OMG 组织进行维护,2011 年 1 月份发布了其 2.0 的正式版。BPMN 2.0 对比于第一个版本,其最重要的变化在于其定义了流程的元模型和执行语义,即它自己解决了存储、交换和执行的问题。这代表着 BPMN 2.0 流程定义模型不仅仅可以在任何兼容 BPMN 2.0 的引擎中执行,而且也可以在图形编辑器间交换。作为一个标准,BPMN 2.0 统一了工作流社区。

作用:实现流程自动化处理

2.实现

2.1代码实现

流程自动化管理可以通过编码实现,举一个我之前做的一个系统的一个例子

开发人员发一个项目的开始协商-师傅审核-项目经理审核-总经理审核

开发人员-协商的状态:1此协商编辑完成

师傅审核-协商的状态:2师傅同意,3师傅拒绝

项目经理审核-协商的状态:4项目经理同意,5项目经理拒绝

总经理审核-协商的状态:6总经理同意,7总经理拒绝

协商的状态:1编辑完成-2师傅同意-4项目经理同意-6总经理同意

此时,通过一系列的审批,实现了一个工作从底层流到高层的过程,这个过程就是通过代码实现的工作流,整个过程就是通过对协商的一个字段的修改来不断推进工作的进程,整个审批形成了一条链,比如师傅同意之后,状态变成了2,项目经理找所有状态为2的协商同意改为4,总经理找所有状态为4的协商改为6,层层递进。

但是这样写就有一个问题,比如组织结构中,我不要师傅参与审核了,那么项目经理审核的时候就需要找状态为1的项目,那么就需要修改代码了,此时我们就需要引用工作流引擎-Activiti7,来解决这个问题

2.2 Activiti引擎原理

2.2.1关键点:节点和表单的信息转换

1.先将流程图画好

2.将流程图的每个节点的数据读取并放入表中

3.读取表中的第一条记录,处理并删除

2.2.2实现这个自动化过程

1.业务流程图要规范化,要遵守一套标准2.这个业务流程图本质上是一个xml文件,这样就可以存入我们所要的数据

3.读取业务流程图的过程就是解析xml文件的过程

4.读取一个业务流程图中的节点就相当于解析一个xml结构,进一步将数据插入到mysql的表中,形成一条记录

5.将所有的节点都读取并存入mysql表中

6.后面只要读取Mysql表中的记录就可以了,读一条记录就相当于读一个节点

7.业务流程的推进,后面就转换为表中数据,并且处理数据,结束时这一行数据就可以删除

2.2.3底层技术

xml+dom4j+mysql+jdbc

3.适用

3.1 适用行业

消费品行业,制造业,电信服务业,银证险等金融服务业,物流服务业,物业服务业,物业管理,大中型进出口贸易公司,政府事业机构,研究院所及教育服务业等,特别是大的跨国企业和集团公司

3.2 应用业务

关键业务流程:订单、报价处理、合同审核、客户电话处理、供应链管理等

行政管理类:出差申请、加班申请、请假申请、用车申请、各种办公用品申请、购买申请、日报、周报等凡是原来手工流转处理的行政表单。

人事管理类:员工培训安排、绩效考评、职位变动处理、员工档案信息管理等。财务相关类:付款请求、应收款处理、日常报销处理、出差报销、预算和计划申请等。

客户服务类:客户信息管理、客户投诉、请求处理、售后服务管理等

特殊服务类:ISO 系列对应流程、质量管理对应流程、产品数据信息管理、贸易公司报关处理、物流公司货物跟踪处理等各种通过表单逐步手工流转完成的任务均可应用工作流软件自动规范地实施

相关实践学习
如何在云端创建MySQL数据库
开始实验后,系统会自动创建一台自建MySQL的 源数据库 ECS 实例和一台 目标数据库 RDS。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助     相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
目录
相关文章
|
5月前
|
XML 关系型数据库 MySQL
工作流框架--Activiti6.0(二)
工作流框架--Activiti6.0(二)
314 1
|
5月前
|
架构师 Java 关系型数据库
工作流框架--Activiti6.0(一)
工作流框架--Activiti6.0(一)
123 0
|
5月前
|
Java 关系型数据库 数据库连接
OA工作流-Activiti(一)
OA工作流-Activiti(一)
109 0
|
6月前
|
XML 消息中间件 监控
工作流 jbpm概述
工作流 jbpm概述
87 0
|
6月前
|
SQL NoSQL Redis
hxyFrame-activiti-boot工作流框架 v1.0
hxyFrame-activiti-boot工作流框架 v1.0
60 0
|
6月前
Activiti 流程发布
Activiti 流程发布
51 0
|
存储 监控 架构师
02activiti - 工作流介绍
02activiti - 工作流介绍
47 0
38activiti - 工作流总结(图)
38activiti - 工作流总结(图)
32 0
01activiti - 工作流概念
01activiti - 工作流概念
52 0
|
存储 Java API
流程引擎Activiti流程实例讲解
流程引擎Activiti流程实例讲解
260 0