AgileBPM 敏捷工作流开发平台 推荐个人认为做的比较不错的开源工作开发平台AgileBPM 敏捷工作流开发平台—— 开源免费-基于 Activiti 工作流引擎、Flowable 科技部门通过快速迭代支撑业务不断的创新、发展,最终构建出完善的、高效的业务线从而提高产品竞争力、行业壁垒。 AgileBPM 是一个快速开发平台,与众多快速开发平台不一样的地方是,他可以快速的进行业务流程的实施,助力企业快速构建业务流。 文档 摘要 我见过国内很多开发员从零开始整合流程引擎,而后也在使用一些不太合适的实施形式,导致很多开发付出了很沉重的开发代价,浪费了很多时间。 回想下吧,正在走向流程整合道路的您,已经踩过多少坑,比如 Activiti 表单、人员、自由跳转、会签多实例 、难用的API 等等这些坑,您或者已经踩过、或者正在奔坑而去! 不可否认 Activiti 的流程引擎高效强大,但是周边建设的确牵强人意 所以我们希望构建出一款流程服务组件 要比 Activiti 更易整合 不失性能的前提下拥有更丰富的流程功能 流程实施配置化 表单开发零代码 还有最重要的是 保持功能的可扩展性(只有保持扩展性才能适应更复杂的业务场景) API Agilebpm 项目模块说明 agilebpm 主工程 base基础模块 base-api : 提供 通用请求入参、返回参数、基础实体、基础service/dao API定义、异常规范、校验定义 base-core : 提供常用工具类、基础API实现 、ID生成、通用校验实现等 base-db : 整合多数据源,mybatis,jdbcTemplate等持久化层相关的实现 base-rest :提供 Rest 服务基类、Rest 服务相关的工具类 等 系统功能模块 sys-api 系统服务接口定义 jms freemark groovy email redis scheduler 节假日、流水号、日程、工作台 等系统模块服务接口 sys-core 系统服务接口实现 sys-rest 对外 rest 服务 组织模块 org-api 组织架构接口定义 ab-org-core orgAPI 实现层 用户管理,组织岗位,角色,用户组关系 说明:为流程、鉴权 等组件提供用户组织服务,该模块由 服务接口模块、接口适配器层、具体实现层三部分组成 业务对象 1、业务实体,业务对象的定义 2、业务实体数据的持久化服务 3、表字段控件定义,表单布局设计 说明:业务对象为具体的业务数据的结构,支持一对多、多对多、一对一、多层关联关系(学校-班级-学生…) 业务对象多表来自不同数据源,并支持多数据源分布式事务(性能与普通事务管理没什么差别) 表单模块 1、提供在线表单的生成(PC 、移动端 ) 2、表单高级控件的配置 3、表单 模板管理 4、表单对于业务数据增删改查的简实现 说明:表单是业务对象的容器,依赖bus模块。 web 模块 仅仅为了组合 各个模块,提供web服务,没有任何其他代码逻辑 SpringBoot 版本 说明: 本项目使用Springboot2.1.4版本 ,以starter的形式整合 agilebpm 模块,具体模块源码都在 AgileBPM 主工程 agilebpm-base-starter 整合 base 模块, 主要是base-db 的整合 两个jar agilebpm-base-autoconfigure,agilebpm-base-starter agilebpm-sys-starter 整合 sys 系统模块,主要整合了 mq,email 等组件 两个jar,agilebpm-sys-starter,agilebpm-sys-autoconfigure agilebpm-security-starter 整合spring security, agilebpm-security-starter,agilebpm-security-autoconfigure agilebpm-wf-starter 整合了流程模块 agilebpm-ui 前端工程   与主工程中 bpm-explorer 源码一致,这里是以jar包的形式提供前端的资源 agilebpm-spring-boot-samples spring boot Application 启动项目,以此为案例可以方便整合到自有 springboot工程中 主工程中 bus,form, org 模块直接依赖 rest 模块即可引入模块服务,所以不需要 提供 starter SpringCloud微服务版本-商业版 说明:本项目依赖 SpringBoot版本的starter,基于 spring-cloud Greenwich.SR1 common 公共模块 commons-web 微服务项目公共模块,所有微服务模块均基层该基础模块 commons-session-adapter-api 当前登录用户的接口定义层 commons-session-adapter-server 提供当前登录用户 的具体实现,目前默认session实现 commons-adapter-client org 微服务 REST 服务 适配的客户端 commons-org-adapter-server org 微服务 REST 服务的 服务提供者 当需要为流程微服务提供组织微服务的时候、直接依赖 该模块,实现orgapi 即可提供 agilebpm 的组织服务 eureka-server eureka 注册中心 gateway zuul 网关、实现了 请求资源地址鉴权,csrf 防盗链,防xss注入攻击 ,路由服务请求 org-services org 微服务的默认实现,依赖 ab-org-core bpm-service 流程微服务,依赖 agilebpm-wf-starter,bus-rest,agilebpm-ui ,form-rest,agilebpm-sys-starter 前端工程 agilebpm 主工程 前端 bpm-explorer 移动端前端工程 bpm-app iview 门户前端工程 agilebpm-eip-ui 商业版 说明: 所有前端工程后端项目源码 均在 agilebpm主工程 只不过有springboot形式、微服务形式、传统web形式 三种不同 服务提供形式 试用地址 普通版本 PC 端 移动端 请关注公众号 AgileBPM 在线试用。 全新 OA 版本 OA版本是全新的UI,基于Iview-pro开发,拥有更漂亮的 UI、极致的用户体验和细节处理 并且支持国际化。 如果对前端有较高要求可以选择 高级OA版本或者企业OA版本。 试用地址 http://test1.agilebpm.cn OA 版本中,流程设计、表单开发是单独的一个前端工程,而面向客户的门户平台则使用的 iview ui 进行开发的,这样保证了面向用户的前端可以做到最轻量级 老版门户平台地址: http://test1.agilebpm.cn/agilebpm-eip-ui/index.html 商用版本如何选择? AgileBPM 目前有以下版本 码云版 含移动端、系统功能模块、基础模块、鉴权模块、表单模块、业务对象模块、基础的流程功能(未开源) 商用需遵循 GPL开源协议 高级版 含 高级流程功能(开源)、 eip门户前端、SpringBoot版本、移动端、1年技术支持,商业实施无限制 企业版 高级版基础上新增了 SpringCloud版本、2年技术支持、上门技术讲解、插件定制、框架整合服务等 OA版 全新设计的一款前端工程,在企业版基础上新增了OA办公模块,这也是我们以后工作重心,会陆续新增 排班、考勤等功能 所有以上版本均支持永久升级服务 基础开源版本会满足 90%的流程需求,特殊需求也可以通过预留的扩展钩子实现。 AgileBPM 商用版本功能更强大,这些功能能让流程实施事半功倍! AgileBPM 不同的版本线规划了版本内的开发计划,采购对应版本后支持永久升级,但是产品价格我们会以当下功能定价。 所以我们建议选择最具有空间的 OA 版本! 其他版本内容基本已经构建完善。