码云 Gitee IDE 全新上线——支持 Git 管理的轻量在线编码环境
Watch Star Fork

GVPAgileBPM / agile-bpm-basicJavaGPL-3.0

加入码云
与超过 300 万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
【流程管理】【智慧协同】【移动办公】【SpringBoot2-快速开发平台】 企业级流程解决方案, 前后端分离,模块化,超低耦合。 基于activiti5.22,零java代码即可做到复杂业务的流程实 http://doc.agilebpm.cn
  • JavaScript 75.8%
  • Java 13.0%
  • HTML 5.5%
  • CSS 5.5%
  • FreeMarker 0.2%
取消
提示: 由于 Git 不支持空文件夾,创建文件夹后会生成空的 .keep 文件
Loading...
README.md 7.95 KB

AgileBPM 敏捷工作流开发平台

团队介绍

AgileBPM 是完全模块化的项目集合,含【流程模块】、【业务表单模块】、【组织架构模块】、【鉴权模块】、【系统模块】、【AO办公模块】、【PC前端项目】、【移动端前端项目】 模块与模块间不耦合,您可以自由选择需要的模块(目前鉴权有两个实现)

AgileBPM 致力于构建灵活的、可选择的软件生态圈,您可以依赖自身需要的模块来构建自身应用

该项目会进行模块化改造、前后端分离、与 AgileBPM 底层 API 一致化改造,也会适时会增加一些新的可选模块(如组织架构) AgileBPM 的相关组件可以自由依附于该软件,并基于该 springboot 应用起步软件为基础不断 构建更多应用组件

该项目会作为 AgileBPM 的 OA办公模块

热衷开源的朋友都一直保持着对编码的热情,看到两位朋友与我构建方向一致,简单一聊便发现大家十分有默契,志同道合,愿意为开源软件贡献自己的一份力量,同时定下了【一起构建更多开源应用模块】的三生约定

同时我们也欢迎更多有志之士与我们一起共同打造 【基于统一底层的更多可共享应用的圈圈】

AgileBPM 项目介绍

项目部署、实施文档 请参考 http://doc.agilebpm.cn/

PC在线测试地址(1核Linux机器,部署了一堆东西,略慢请见谅) http://test.agilebpm.cn/login.html

功能缺陷请在项目上创建建 issues,可以查看已完成issues来寻找问题解决方法 https://gitee.com/agile-bpm/agile-bpm-basic/issues

移动端测试地址 移动端测试 账号密码 admin 1 源码

工作流解决方案

我们通过业务对象、表单、流程引擎共同协作来解决业务流难实施的痛点

业务对象用来承载、持久化业务数据;表单则是业务数据的展示层;流程则用来驱动业务数据流转。

三者协作完成流程实施。

  • 业务对象: 由实体(表)组成,支持任意数据结构(关联关系),可以跨库来组织业务对象(支持分布式事务)。而且难以置信的支持N层。
  • 业务表单: 表单完美的支撑了业务对象的展示,并支持丰富的前端组件和字段级权限控制。
  • 流程引擎: 高效、解耦、强大、灵活。流程引擎一切功能皆插件

支持任意结构的业务对象 + 丰富控件易扩展的表单(字段级别的权限控制) + 功能强大的工作流引擎 便是我们完整的流程解决方案

当然、流程也支持url表单,方便已有业务、异构系统的流程实施

具体实施步骤请参考 文档 中的敏捷流程实施三部曲 :smirk:

流程配置页面、任务处理页面、流程实例页面截图

软件架构说明

组件化

系统通过功能划分出了多个模块,每个模块由API、CORE、REST、SERVICE(apiImpl) 几部分组成。模块与模块间通过API交互,WEB则用于整合各个模块

系统模块介绍介绍

组件更多详细介绍

前后端分离

AgileBPM 是一个前后端分离的项目,这样各个团队会更专注于其本职工作,后端只负责业务逻辑、API 提供。而大前端则不拘泥于一种前端技术、更自由的构建UI交互逻辑

项目技术组件

项目组件

其他项目中用到的组件

前端:bootstrap-table,codemirror,echarts,layer,markdown,softable,ueditor,ztree 移动端:vue,vux,weui

架构模式

AgileBPM 目前是标准的SOA架构,但依然拥有微服务架构的特点。 可以通过选择WEB模块的依赖来构建您需要的服务模块,然后修改API 实现,选择一个服务注册中心,就完成了微服务的改造

我们建议业务前期使用AgileBPM的这种模块化管理的架构模式,运维实施陈本小,也不必关注分布式事务问题,业务后期也可以很轻易的向微服务架构迁移。

流程功能

  • 节点消息通知: 用于在流程某一节点,满足某种条件后发送消息给配置的人员。可以自定义消息内容。
  • 节点自由跳转: 用于在流程某一节点,满足配置的条件后、自由跳转至配置的目标节点。
  • 节点事件脚本: 用于在流程节点,触发的配置groovy脚本。可以调用容器环境中bean方法。
  • 节点人员配置: 用于节点候选人配置,支持用户,角色,岗位,组织,发起人,历史节点处理人,脚本人员(通过groovy脚本调用自定义人员脚本)
  • 节点处理按钮: 用于节点任务处理动作配置。支持自由配置某节点可用的功能按钮。目前有同意、反对、驳回、驳回配置节点、人工终止流程、流程图、审批意见、保存
  • 节点跳过策略:用于配置特殊场景的跳过策略,支持全局跳过(测试流程使用),跳过第一个节点,任务执行人为空跳过,脚本跳过
  • 流程特殊属性配置:配置流程特殊属性
  • 全局表单: 用于流程全局表单配置,目前支持内置表单、url表单。如果不配置则发起流程会提示错误。
  • 节点表单: 节点表单配置。如果不配置默认使用全局表单。
  • 流程数据模型:流程表单的数据模型、选择数据模型后,只能选择改数据模型下生成的表单。
  • 流程变量管理:定义管理流程变量
  • 流程分支groovy脚本支持
  • 会签: 多人参与投票,可通过百分比,票数来计算投票结果,并支持会签结果后置动作的配置。
  • 外部子流程: 外部子流程让流程公共逻辑抽出,更有利于业务流的划分和复用,是一枚大杀器。
  • 流程标题自定义: 可以通过业务数据配置生成个性化标题、让待办列表更易展示业务信息,也解决了业务数据与流程数据跨库下检索任务的问题。
  • 动态任务:(开发中)可以配置虚拟任务,定义任务产生和回收节点,并配置其办理人等信息。
  • 移动端:支持移动端协同办公,并且移动端依然支持强大的表单生成功能,支持pc端所有表单控件。

系统功能

资源管理(用于服务器鉴权,用户分配资源菜单)、数据字典、定时计划(定时调度引擎)、系统属性(多环境系统参数定义)、系统数据源(系统支持多数据源的数据获取,系统数据源的动态切换,读写数据源的分离)、工作台(个人自定义首页)、流水号、常用脚本管理、自定义对话框、系统树

其他说明

我们是专业工作流研发团队,有多年工作流程实施经验,针对各种特殊场景,经过近一年多的(业余)时间设计开发了这款产品。 目前还有很多组件正在筹备开发中,如果有更多人支持,我们也会继续下去。

目前基础版源码正在整理中......

qq 交流群 477781857

项目点评 ( 34 )

你可以在登录后,发表评论

搜索帮助