找回密码
 立即注册
搜索
查看: 25|回复: 6

GFlow v1.2.0 发布:Go 生态审批工作流引擎,中国式审批、AI 先审、批完自动办

[复制链接]

1

主题

8

回帖

0

积分

积分
0
发表于 3 天前 | 显示全部楼层 |阅读模式
GFlow 是什么?

GFlow 是 RuleGo 团队打造的审批工作流产品,解决每个业务系统都绕不开的问题:申请要有人审、审批要有流程、批完还要有人接着办。它把「提交申请 → 逐级审批 → 批完自动办」完整搬进系统——会签、或签、动态加签、转办、委派、签收抢单、退回撤回、超时催办,中国式审批语义一个不少;AI 审批与自动化是和「人审批」平级的流程节点,大模型先审、人再签、批完自动执行后续动作,全在一条流程里编排。
本次主要更新
审批配置重构:一处配置,所见即所审

审批节点是审批流里配置最多的环节——「谁来审、怎么审、不同意怎么办」。v1.2.0 把这些配置整合为一套统一模型,设计器上配置什么,引擎就按什么执行,两边一套口径:



配置项

说明



审批人

指定成员 / 角色 / 部门 / 发起人自选,多人时按审批方式处理



审批方式

依次审批(逐个传递)/ 会签(须全部同意)/ 或签(一人通过即可)



审批人为空

找不到审批人时按配置自动处理(如转交上级),流程不会卡死在空节点



驳回规则

驳回发起人 / 驳回上一节点 / 驳回指定节点,发布时自动校验


后续审批人预测:发起那一刻,就知道单子会经过谁

审批流里最常被问的两个问题:「这单接下来到谁?」「还要几个人签?」v1.2.0 提供后续审批人预测——提交申请前就能预览整条审批链路上每个环节的审批人,审批中随时看到「下一步到谁」。

如果流程里有条件分支(比如金额超过 5000 元加签总监审批),预测会按这单的实际内容计算:看到的是这单的真实走向,不是一张静态模板。
驳回安全:退回只往上游走,永不打乱并行分支

审批人发现单子有问题,可以把申请驳回(退回)给前面环节的人修改补充。驳回很有用,但要有边界:当一张单子需要多条线并行审批时(比如同时要走「部门主管」和「财务」两条线),A 线的审批人如果把单子驳回到 B 线的环节,两条线的执行顺序就会乱掉。v1.2.0 给驳回划出清晰边界:


退回目标仅限上游节点——只能退给「前面已经走过」的环节,下游分支的节点永远不会是合法的退回目标;


发布时拦截——流程发布前自动校验驳回配置,不合法的流程图无法发布上线;


运行期兜底——存量流程里不符合新约束的驳回路径,运行期也会自动兜底,不会卡住流程。


安全与多副本:为生产并发而生

作为要嵌进业务系统、扛生产并发的引擎,v1.2.0 做了一轮系统性加固:


越权防护全链路收口:看单、审单、评论、查历史……每个操作都校验「你是不是这条单子的相关人」,横向越权(看别人的单、改别人的任务)一律拦截;鉴权逻辑统一收口到单一模块,工作流管理员统一为 WorkflowAdmin 语义;


租户成员严格校验:多套组织共用一套系统时(多租户),跨租户的操作一律拒绝,还可选开启更严格的成员关系校验;


多副本一致性:业务量大了部署多台服务器时,跨副本执行接入分布式锁、实例变更广播缓存失效——同一张单子不会被两台服务器同时处理;


会签 / 或签状态守卫:加签、减签、终止等操作与多人审批组合时状态不再错乱;或签场景下一票拒绝后,任务不会被并发的通过票「复活」;any 会签首票拒绝即为终局,不会被后续通过票翻案;


AI 审批节点强化:审批附件里的图片、文档可以送给大模型识别(比如发票照片、合同扫描件);AI 的决策结果会记录到实例变量上,实例重新驱动时不会重复调用模型。


GFlow Platform 同步更新:移动端 H5 与收件箱

商业版 GFlow Platform(极风工作流) 随 v1.2.0 同步更新:


移动端 H5:手机浏览器打开就能用——发起申请、处理审批、查看进度与抄送,随时随地签一单;


收件箱式审批中心:待办 / 已办 / 我发起的 / 抄送我集中在一个收件箱处理,支持按状态筛选、键盘快捷流转,审批像处理邮件一样快;公共任务支持签收 / 抢单;


设计器直出新配置:会签 / 或签、审批人为空策略、驳回规则直接在画布上配置;发起与审批时展示后续环节审批人预测;


外部表单接入:业务系统现有的表单直接接入审批,审批结果自动回传,无需重做表单;嵌入更稳定,审批页面按业务名称显示表单内容。



在线演示:http://8.134.32.225:8081(admin / admin123)。
一分钟看懂 GFlow:审批、AI、自动化写在同一条流程里

多数审批工具做到「人签完」就结束了。GFlow 把审批、AI、自动化做成同一条流程上的三类节点,任意编排。以一张报销单为例:

员工提交报销单 → AI 先审(自动核对发票抬头、金额与真伪)→ 主管、财务依次签字 → 签完自动办(自动调用财务接口打款、给员工发通知)。

全程一条流程跑完,没有人需要在系统之间来回搬运,也不会出现「批完了没人接着办」的断档。装进现有系统只要三步:引一个 Go 库、建 7 张表、十几行代码启动引擎(不关心代码的读者可以跳过本段):

  1. // 1. 启动引擎:PostgreSQL / MySQL 开箱即用,内存 SQLite 零依赖上手
  2. cfg := &config.Config{ /* 数据库连接配置 */ }
  3. engine, _ := service.NewWorkflowEngineBuilder().
  4.     SetName("demo").SetConfig(cfg).
  5.     SetIDGenerator(service.NewIDGenerator()).Build()
  6. _ = engine.Start(ctx)
  7. defer engine.Stop(ctx)
  8. _ = components.RegisterFromEngine(engine) // 一步装配全部审批节点

  9. // 2. 部署报销流程:一份 JSON 描述整条链——
  10. //    aiAgent 节点(AI 初审) → userTask 节点(主管/财务) → automation 节点(自动打款)
  11. _, _ = engine.GetProcessService().Deploy(ctx, admin, &model.WfProcess{
  12.     ProcessKey:     "expense_approval",
  13.     Name:           "报销审批",
  14.     DefinitionJSON: expenseChain,
  15.     TenantID:       "default",
  16.     CreatedBy:      "admin",
  17. }, true)

  18. // 3. 员工发起申请,AI 初审自动执行
  19. _, _ = engine.GetRuntimeService().StartProcessInstanceByKey(ctx,
  20.     service.Actor{UserID: "emp001", UserName: "张三", TenantID: "default"},
  21.     "expense_approval", "exp_emp001_1",
  22.     map[string]interface{}{"amount": 480, "reason": "差旅报销"},
  23. )

  24. // 4. AI 初审通过后流转到主管;主管通过,流程自动打款、发通知
  25. //    (taskID 从待办任务查询接口获得)
  26. _ = engine.GetTaskService().CompleteWithApproval(ctx,
  27.     service.Actor{UserID: "mgr001", TenantID: "default"},
  28.     &service.ApprovalRequest{
  29.         TaskID:         taskID,
  30.         ApprovalResult: enums.ApprovalResultApproved,
  31.         Comment:        "同意",
  32.     })
复制代码

流程定义就是 RuleGo 规则链(JSON):条件分支、并行网关、HTTP 调用、定时任务等上百个现成组件直接参与编排;会签(全员同意)/ 或签(一人通过即可)、加签减签、转办委派、签收抢单、退回撤回、超时催办——中国式审批语义一个不少。和其他方案比一比:



关心的维度

GFlow Engine

Java 系引擎(Activiti / Flowable)

钉钉 / 飞书审批



中国式审批玩法(会签 / 加签 / 退回 / 转办 / 委派…)

原生支持

需自行扩展开发

支持



批完自动办事(调接口、跑自动化)

内置,与审批同一条流程







AI 审批

内置节点

自行集成

有限



装进自己现有的系统

引一个 Go 库即可

需部署 JVM 中间件

不可嵌入



数据存在哪

自己的数据库

自己的数据库

平台方



Java 引擎的语义要靠扩展开发补齐,SaaS 审批不可嵌入、数据不在自己手里——GFlow 把「语义原生 + Go 技术栈 + 数据自持」放在了同一个选项里。
升级与兼容

  1. go get github.com/rulego/gflow-engine@v1.2.0
复制代码

要求 Go 1.24+、RuleGo v0.37.2。存量流程定义无需迁移;注意事项两条:


Actor.SuperAdmin 更名为 Actor.WorkflowAdmin,语义对齐「工作流管理员」,宿主应用需同步更名;


驳回配置若不符合新的边界约束,发布会自动拦下,按提示修正退回目标即可。



首次接入请参考官网文档的快速开始,完整可运行示例见引擎仓库 examples/ 目录。
完整更新日志(v1.2.0)
GFlow Engine(开源引擎)
新功能


审批节点配置重构:审批人、审批方式(依次 / 会签 / 或签)、找不到审批人时的处理、驳回与退回规则,统一在一处配置


发起和审批时,可以提前看到后续每个环节由谁来审批


审批人是发起人时自动跳过,不用自己审自己


驳回只能退到前面的环节,不能跨并行分支乱退


申请列表支持按状态筛选和统计


AI 审批支持读取附件,图片和文档都能识别


多租户隔离更严格,跨租户操作一律拒绝


问题修复


修复了一批权限漏洞,越权操作全部拦截


修复多服务器部署时,同一申请可能被重复处理的问题


修复加签、减签、终止等操作时,审批状态可能错乱的问题


修复待签收任务的可见性和签收状态残留问题


修复已作废的申请仍出现在待办、委托归还后缺少审批意见的问题


修复流程重新驱动时,AI 被重复调用的问题


GFlow Platform(商业版)
新功能


新增移动端:手机上直接发起申请、处理审批、查看进度与抄送


审批中心收件箱式改版:待办 / 已办 / 我发起的 / 抄送我集中处理,支持按状态筛选、键盘快速流转


公共待办支持签收、抢单,先认领再审批


界面焕新:列表页统一布局更整齐,发起申请页改版更清爽,审批详情页重新设计,登录页全新品牌视觉


表单与打印更规范:只读内容直接显示为文本,打印单据明细表格化、金额千分位、支持合计


工作台「最近活动」改为与我相关的动态,点击直达审批详情


流程设计器支持更多审批配置:会签 / 或签、找不到审批人怎么办、驳回规则,设计器里直接设置


发起和审批时可预览后续审批人,可开启「审批人是发起人时自动通过」


支持接入外部表单:业务系统现有的表单直接接入审批,审批结果自动回传;嵌入更稳定,审批页按业务名称显示表单内容


问题修复


驳回、退回等操作的报错统一改为易懂的中文提示


修复已被 AI 拒绝的申请还能重复拒绝、切换页签后数据不刷新的问题


修复会签和顺序审批下「发起人自动通过」不生效的问题



--------------------------------

相关链接:


GitHub:https://github.com/rulego/gflow-engine


Gitee:https://gitee.com/rulego/gflow-engine


官网与文档:https://gflow.rulego.cc/


在线演示:http://8.134.32.225:8081(admin / admin123)


底层规则引擎 RuleGo:https://rulego.cc/

原文链接

打赏作者

当前余额:0 Token,打赏后立即到账

主题

0

回帖

0

积分

积分
0
发表于 3 天前 | 显示全部楼层
学到了,v1.2.0这块之前一直似懂非懂,看完这篇清晰多了。

主题

0

回帖

0

积分

积分
0
发表于 3 天前 | 显示全部楼层
学到了,v1.2.0这块之前一直似懂非懂,看完这篇清晰多了。

主题

0

回帖

0

积分

积分
0
发表于 3 天前 | 显示全部楼层
排版舒服内容也硬核,这样的帖子多来点。

主题

0

回帖

0

积分

积分
0
发表于 3 天前 | 显示全部楼层
感谢分享!v1.2.0正好是手头项目要用的,太及时了。

主题

0

回帖

0

积分

积分
0
发表于 3 天前 | 显示全部楼层
这种认真写长文的楼主不多了,必须支持。

主题

0

回帖

0

积分

积分
0
发表于 3 天前 | 显示全部楼层
写得不错,v1.2.0那部分说到点子上了,顶一个。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

{ template common/footer}