flowable工作流 设计产品系统

我要开发同款
James2026年09月27日
4阅读

技术信息

语言技术
Java、Vue
系统类型
Web
行业分类
企业服务、教育校园

作品详情

行业场景

企业数字化平台的工作流/流程中台——把"审批流转"从各业务系统里抽出来,做成一个统一的、可配置的、能被任意业务应用复用的流程引擎服务。

功能介绍

工作流平台功能介绍

工作流平台是面向集团型企业的统一流程引擎服务,为各业务应用提供流程设计、流转审批、消息触达与流程治理能力。平台不承载业务数据,通过回调与业务系统协作,做到流程编排由平台承担、业务判断交还业务系统,使应用无需重复开发即可复用审批能力。

流程设计 可视化设计器,基于 BPMN 2.0 标准,内置审批人、限时预警、驳回范围、抄送、消息等扩展配置;支持模型分类、多版本管理与导入导出,部署时禁止脚本任务。

发起与审批 支持单个与批量发起,可关联业务单据、传入多语言标题;提供待办、已办、我发起的、跨应用待办等七类列表,支持签收退签、批量审批、任务详情与审批记录。

审批人配置 六种模式:指定人员、候选人、候选组、多实例、特定审批人、业务模式。业务模式下审批人由业务系统按金额、项目等条件运行时动态返回,支持流程启动前预览。

动态审批 审批层级无法预设时,可在同一节点内逐层审批,一层办结自动进入下一层,规则可选单人审批、多人单签、多人会签。

回退与协作 可驳回上一节点或靶向跳转至指定节点并配置范围,撤回覆盖并行会签、动态节点等场景;支持任务转办、代理委托、抄送传阅、收藏与常用审批语。

消息与时效 覆盖站内信、邮件、OA、企业微信、飞书等七类渠道,支持按节点配置、消息模板与变量替换;节点可设办理时限,超时预警或自动同意、驳回。

运维统计 流程实例查询、挂起、激活与删除,实时流程图高亮已走路径,并提供待办与流程数量统计。

平台能力 流程内容支持九种语言,界面文案支持七种;租户即应用,数据隔离并支持跨应用待办聚合;采用「域:资源:动作」三级权限码。

开放集成 对外发布标准接入包,引入依赖即可调用全部能力,认证、语言、租户上下文自动透传并具备熔断降级;流程流转的 14 个关键节点可回调业务系统,回调地址在设计器中配置并随模型版本化,支持同步与异步。

项目实现

1、我负责所有功能
2、技术栈 Java 8、Spring Boot、Spring Cloud、Nacos。流程引擎用开源 BPMN 2.0 内核(6.8.0)并做源码级定制。数据层 PostgreSQL、MyBatis-Plus、Liquibase。通信 OpenFeign、Sentinel,安全 Spring Security、JWT,另有 Redis。
架构 双模块 Maven 工程:api 模块为纯契约 jar,对外发布接入 SDK,含契约接口、上下文透传拦截器与降级工厂;service 模块为可执行服务,335 个 Java 文件,分入口层、服务层、数据层,另有独立的引擎定制包。入口分前端、平台内部、外部开放三类。

实现亮点 回调随流程定义版本化:回调地址作为 BPMN 扩展元素存储,随流程复制与回滚同步,各租户可配不同地址,集成无需改代码。同一节点内多层级审批:一层办结不离开节点直接进入下一层,会签全完成切层、或签按本层人数计权重,层级变化无需改流程。异步回调的事务安全:主线程完成快照,仅在事务提交成功后发送。审批人解析单点收敛:六种模式在引擎内三处与前端预览一处共四个调用点复用同一逻辑,避免显示与实际派发不符。

技术难点 与引擎原生语义冲突:动态多实例、加签超出原生行为模型,采用行为替换而非修改源码,上游升级需验证兼容性。撤回拓扑组合爆炸:需覆盖串并行多实例、动态节点、网关内外,拆为局部无缝撤回与跨节点重建两套策略,逐场景补齐前置校验,宁可拒绝也不产生中间态。上游解析缺陷:扩展元素文本过长被流式解析分片截断致部署失败,以源码级补丁改为分片累计赋值,代价是上游升级须重新比对。回调与事务边界:回调不能破坏流程事务、也不能读到变化中的数据,通过区分同步异步、主线程快照、跨系统交互移出事务解决。多应用隔离与聚合的矛盾:以应用为租户隔离,聚合时按可访问应用清单并行

示例图片

声明:本文仅代表作者观点,不代表本站立场。如果侵犯到您的合法权益,请联系我们删除侵权资源!如果遇到资源链接失效,请您通过评论或工单的方式通知管理员。未经允许,不得转载,本站所有资源文章禁止商业使用运营!
下载安装【程序员客栈】APP
实时对接需求、及时收发消息、丰富的开放项目需求、随时随地查看项目状态

评论