AntFlow 0.20.0版发布,增加多数据源多租户支持,进一步助力企业信息化,SAAS化

传统老牌工作流引擎比如activiti,flowable或者camunda等虽然功能强大,也被企业广泛采用,然后也存着在诸如学习曲线陡峭,上手难度大,流程设计操作需要专业人员,普通人无从下手等问题。。。引入工作流引擎往往需要企业储备有专业的有工作流背景的程序员,不论从成本和可持续迭代上来说都对企业造成不小的挑战。在这样的大背景下,AntFlow应运而生了。AntFlow结合作者多年在企业信息化领域的深耕经验,设计上高度借鉴了钉钉工作流,使得即便没有专业流程经验程序员的企业也能快速使用工作流引擎,为企业无纸化办公和信息化升级助力。

核心优势

  • 开源,完全免费 ,项目采用Apache协议开源,没有任何收费功能,无付费引导。

  • 上手简单,前端流程图不需要程序员参与,普通系统管理员就能轻松通过拖拽完成流程设计。后端不需要有专业的流程知识,只需要实现一个接口就能轻松设计一个审批流转逻辑,半天开发一个简单工作流。(目前正在研发无代码工作流,普通简单流程不需要任何编码即可完成,实现真正零代码.

  • 高度灵活,即可作为一个模块引入到企业现有的OA,WMS,CMS,CRM等系统,也可以做为一个流程中台服务独立部署,供公司内部各系统接入流程审批能力。甚至可以做为SAAS服务供完全独立的企业使用。

  • 久经生产检验的:AntFlow经历了多个版本的迭代更新.在某大中型客服公司、某中型互联网公司、某大型快递公司落地使用,经受住了复杂业务场景海量数据压力的考验。

核心技术栈

前端

  • vue3
  • elementplus

后端

  • java8-21 (main分支为java8版本,如果使用较新java版本,请切换到java17_support分支)
  • Activiti(魔改版)
  • Spring Boot 2.7.17
  • MybatisPlus 3.5.1
  • MySql 5.7+

功能详细介绍

AntFlow经合作者在企业信息化办公领域经验,充分调研了国内办公特点,设计出了流程跳转,流程审批人去重,流程委托,流程限时委托,流程转办,流程转发,流程会签(多个人同时审批通过才能继续),流程或签(多人中一人办公即可继续),流程加批,流程变更处理人等功能。。。一应俱全。

1. 简单灵活流程设计器

  • 节点新增、删除、修改 :用户可以随时对审批节点进行调整,以适应新的业务需求。
  • 流程保存和发布 :设计完成后,用户可以将流程保存并发布,使其生效。

2. 丰富的审批人配置规则

审批人节点的配置非常灵活,支持选择人员、角色或部门。这种设计使得审批流程的管理更加高效且有针对性。

3. 超强集成能力

AntFlow可轻松集成到现有项目中,甚至可以与其他管理系统(如RuoYi-Vue3,JeecgBoot,Snowy等)结合使用,为企业提供完整的解决方案。

4. 丰富的扩展接口

AntFlow提供了丰富的API接口,便于开发者进行二次开发和扩展功能。详细的API介绍文档可以在项目的wiki中找到,确保开发者能够快速上手。

项目截图

在这里插入图片描述在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

0.20.0版本更新内容

antflow在迭代功能同时,结合用户反馈,不断提升易用性。使用户能够快速将引擎集成到自己现有的系统中。

📢📢📢继0.9.0支持tidb以后又一重大里程碑版本,支持多数据源多租户。为租户数据安全隔离和引擎水平扩展进一步打下基础。

  • 🆕增加多数据源多租户支持,同时如果不开启多租户不影响现有功能,平滑升级
  • 🆕读取mybatis-plus dynamic-datasource作为多数据源,方便使用dynamic-datasource的用户(也可以不使用,自己配置)
  • 🆕根据企业用户反馈,增加查看全部流程功能(目前尚未实现权限,查询出全部流程,用户可根据自己权限系统进一步限制)

🐞修复支持多数据源多引擎造成的一众bug(详情查看git提交记录)
🐞修复fastjson2反序列化时间格式问题

前端快速开始

如果你初次接触AntFlow,完全没有工作流经验,你也完全不用担心,通过以下步骤你就能快速将项目跑起来

1. 项目安装

首先,克隆项目到本地

git clone https://gitee.com/ldhnet/AntFlow-Vue3.git

如果你想集成到现有的若依前端管理系统,可以使用以下命令:

git clone https://gitee.com/ldhnet/FlowAdmin-vue.git

2. 环境依赖

确保你的Node.js版本在14.20.1以上,然后在项目目录中安装依赖:

npm install

3. 本地运行

运行以下命令启动本地开发服务器:

npm run dev

访问 http://localhost:3000,你将看到一个功能齐全的审批流程管理系统。

后端快速开始

  • git clone https://gitee.com/tylerzhou/Antflow.git
  • 打开 web模块下resources目录下的resources目录,修改数据库连接信息,新建一个名为antflow的数据库
  • 打开里面web模块resources目录下的scripts文件夹,执行里面的act_init_db.sqlbpm_init_db.sql
  • 启动项目,如果一切顺利,这时候后端就启动起来了

总结

在探索了AntFlow的各项功能后,我深信这个项目将为企业的工作流管理带来巨大的便利。其 可视化设计灵活配置强大后端支持使其成为现代企业管理中不可或缺的工具。而且,作为一个完全开源的项目,它为开发者提供了丰富的学习和改进空间。

如果你是一名前端或后端开发者,我强烈推荐你尝试这个项目 。无论是学习现代工作流管理的理念,还是实战中提升自己的开发能力,AntFlow-Vue3都将是你绝佳的选择!💡

开源前端仓库地址

https://gitee.com/ldhnet/AntFlow-Vue3

开源后端仓库地址

https://gitee.com/tylerzhou/Antflow

集成审批流后台管理预览地址

http://117.72.70.166/admin/#/index

独立流程设计器预览地址

http://117.72.70.166/ant-flow/dist/#/

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/web/61641.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

IDL学习笔记(一)数据类型、基础运算、控制语句

近期,需要用到modis数据批量预处理,于是重新学习idl,感谢郭师兄推荐,以及张洋老师的详细教导。特以此为学习笔记,望学有所成。 IDL学习笔记(一) 数据类型数据类型创建数组类型转换函数代码输出print往文件…

【实体配置】.NET开源 ORM 框架 SqlSugar 系列

.NET开源 ORM 框架 SqlSugar 系列 【开篇】.NET开源 ORM 框架 SqlSugar 系列【入门必看】.NET开源 ORM 框架 SqlSugar 系列【实体配置】.NET开源 ORM 框架 SqlSugar 系列【Db First】.NET开源 ORM 框架 SqlSugar 系列【Code First】.NET开源 ORM 框架 SqlSugar 系列【数据事务…

vue3 基本使用

Vue 3 提供了多种方式来构建用户界面,包括选项式 API 和 Composition API。下面我将详细介绍 Vue 3 的基本使用和语法,主要集中在选项式 API 上,因为这对于初学者来说更容易上手。 1. 创建 Vue 项目 如果你还没有一个 Vue 项目,…

使用 Pytorch 构建 Vanilla GAN

文章目录 一、说明二、什么是 GAN?三、使用 PyTorch 的简单 GAN(完整解释的代码示例)3.1 配置变量3.2 、PyTorch 加速3.3 构建生成器3.4 构建鉴别器 四、准备数据集五、初始化函数六、前向和后向传递七、执行训练步骤八、结果 一、说明 使用…

Python酷库之旅-第三方库Pandas(251)

目录 一、用法精讲 1186、pandas.tseries.offsets.BusinessMonthEnd.is_year_start方法 1186-1、语法 1186-2、参数 1186-3、功能 1186-4、返回值 1186-5、说明 1186-6、用法 1186-6-1、数据准备 1186-6-2、代码示例 1186-6-3、结果输出 1187、pandas.tseries.offs…

Gazebo插件相机传感器(可订阅/camera/image_raw话题)

在仿真环境中使用相机传感器,通常需要结合Gazebo插件来实现。Gazebo是一个功能强大的机器人仿真工具,支持多种传感器模型,包括相机。下面是如何在Gazebo中使用相机传感器的详细步骤。 1. 修改Xacro文件以包含Gazebo插件 首先,修…

numpy快速入门

文章目录 前言导入numpy创建多维数组提取数组中的元素乘法求平均值求最大值最后 前言 你好,我是醉墨居士,好久没发布新博客了,今天给大家带来的是numpy的快速入门,帮助大家用最短的时间快速学习使用numpy talk is cheap, show y…

爬虫专栏第二篇:Requests 库实战:从基础 GET 到 POST 登录全攻略

简介:本文聚焦 Requests 库的强大功能与应用实战。首先介绍其安装步骤及版本选择要点,随后深入讲解 GET 请求,以百度页面为例,展示如何发起基本 GET 请求、巧妙添加 headers 与参数以精准搜索,以及正确设置 encoding 避…

猎板 PCB特殊工艺:铸就电子行业核心竞争力新高度

在当今竞争激烈且技术驱动的电子制造领域,印制电路板(PCB)作为电子产品的关键基石,其特殊工艺的发展水平直接影响着整个行业的创新步伐与产品品质。猎板 PCB 凭借在厚铜板、孔口铺铜、HDI 板、大尺寸板以及高频高速板等特殊工艺方…

基于K-NN + GCN的轴承故障诊断模型

往期精彩内容: Python-凯斯西储大学(CWRU)轴承数据解读与分类处理 Pytorch-LSTM轴承故障一维信号分类(一)-CSDN博客 Pytorch-CNN轴承故障一维信号分类(二)-CSDN博客 Pytorch-Transformer轴承故障一维信号分类(三)-CSDN博客 三十多个开源…

【Gitlab】CICD使用minio作为分布式缓存

1、安装minio 下载适合自己系统版本的安装文件https://dl.min.io/server/minio/release/windows-amd64/ yum install xxx.rpm 2、配置/etc/profile export MINIO_ACCESS_KEYroot [ui登录账号] export MINIO_SECRET_KEYminioDev001 [ui登录密码] export MINIO_OPTS"…

手机卡限速丨中国移动5G变3G,网速500kb

以下猜测错误,又有新的猜测:河南移动的卡出省限速。可能是因为流量结算。 “2024年7月1日起,中国移动集团内部将开启跨省流量结算” 在深圳四五年了,之前没有过,就从上个月开始。11月底解除限速,12月刚开…

JavaScript根据数据生成柱形图

分析需求 // 定义一个数组来存储四个季度的数据 dataArray = []// 循环4次,获取用户输入的数据并存储到数组中 for i from 0 to 3// 获取用户输入的数据inputData = 获取用户输入的第(i + 1)季度的数据// 将数据存入数组dataArray[i] = inputData// 遍历数组,根据数据生成柱…

No module named ‘huggingface_hub‘

问题描述 from huggingface_hub import PyTorchModelHubMixin ModuleNotFoundError: No module named huggingface_hub解决方法 pip install huggingface_hub

Redis实现限量优惠券的秒杀

核心&#xff1a;避免超卖问题&#xff0c;保证一人一单 业务逻辑 代码步骤分析 全部代码 Service public class VoucherOrderServiceImpl extends ServiceImpl<VoucherOrderMapper, VoucherOrder> implements IVoucherOrderService {Resourceprivate ISeckillVoucher…

《Python 视频格式转换全攻略》

《Python 视频格式转换全攻略》 一、引言二、Python 视频格式转换的常用库1. moviepy 库安装方法。示例代码将视频文件转换为另一种格式。2. pydub 库用于提取视频中的音频部分。示例代码展示如何提取音频并保存为 MP3 格式。3. opencv-python 库介绍其在视频处理中的作用。示例…

gitignore 不起作用

.gitignore不起作用 文件已提交至远程仓库&#xff0c;已经被Git跟踪。清除缓存.gitignore位置可能不是与 .git隐藏文件夹同级目录。将文件移至同级目录缓存未清除 清除缓存 清楚git缓存步骤 进入项目路径 清除本地当前的Git缓存 git rm -r --cached . 应用.gitignore等本地…

Flutter:city_pickers省市区三级联动

pubspec.yaml city_pickers插件地址 自己用的GetBuilder页面模板 cupertino_icons: ^1.0.8 # 省市区城市选择 city_pickers: ^1.3.0编辑地址页面&#xff1a;controller class AddressEditController extends GetxController {AddressEditController();Future<Result?>…

算法训练(leetcode)二刷第三十三天 | *322. 零钱兑换、*279. 完全平方数、*139. 单词拆分

刷题记录 *322. 零钱兑换*279. 完全平方数*139. 单词拆分 *322. 零钱兑换 leetcode题目地址 dp[j]存储amount为j时所需要的最少硬币数。当j为0时需要0个硬币&#xff0c;因此dp[0]赋值为0. 因为是取最少硬币数&#xff0c;因此初始化需要赋值一个最大值。 状态转移方程&…

ansible自动化运维(一)配置主机清单

目录 一、介绍 1.1了解自动化运维 1.2 ansible简介 1.3 ansible自动化运维的优势 1.4 ansible架构图 二、部署ansible 2.1 基本参数 2.2 Ansible帮助命令 2.3 配置主机清单 2.3.1 查看ansible的所有配置文件 2.3.2 /etc/ansible/ansible.cfg常用配置选项 2.3.3 ssh密…