分析对象:https://gitee.com/ForgeLab/forge-admin (产品文档 http://www.dlforgelab.com:8084/forge-docs/) 分析人:产品通 | 适用:母婴公司信息部选型评估 | 本文档用于与官方确认功能支持范围
结论:⚠️ 三个子项 —— 身份登录开箱可用,通讯录同步与消息/待办需官方支持实现(其中通讯录同步应最优先)
| 子项 | 判定 | 说明 |
|---|---|---|
| 企微身份登录 | ✅ 开箱支持 | forge-starter-social 基于 JustAuth,原生支持 企业微信 WECHAT_ENTERPRISE、微信、钉钉、飞书等 18+ 平台;可扫码/授权登录,自动注册并绑定本地用户(sys_user_social)。 |
| 通讯录同步 | ⚠️ 需官方支持 | 当前无内置"从企微拉取通讯录"功能。社交登录的 WECHAT_ENTERPRISE 仅做"授权登录 → 自动建当前登录者账号"(autoRegister),拉取的是单个登录用户资料(uuid/昵称/头像/邮箱),不全量拉取部门树 + 全员(源码树无 sync/contact/企微部门同步模块)。需官方提供同步能力:调企微"通讯录管理"API(需单独 secret + 通讯录权限,异于登录用的 agentId)→ 写 forge 部门/用户表 → 建立 企微 userid ↔ forge userid 映射。同步范围含标签:标签走独立接口 tag/list(标签列表)+ tag/get(标签下成员/部门),不是成员 user/get 的字段;反向"某用户属于哪些标签"需遍历所有标签或自行维护 userid → tags 映射。系统自身的部门/用户/岗位(RBAC)可手工维护。 |
| 消息推送到企微 | ⚠️ 需官方支持 | 消息模块(forge-starter-message)默认仅 web(站内信) + sms(短信) 两个渠道,但 MessageChannel 接口可插拔。需官方提供 WeComMessageChannel,调用企微自建应用"发送应用消息"API(文本/卡片)。 |
| 待办进企微 | ⚠️ 需官方支持 | 当前无内置企微待办。需官方提供桥接能力:forge 待办(sys_flow_task) → 企微消息卡片 → 用户点击/回调 → forge 处理审批。依赖企微自建应用 + 公网可达回调 URL + access_token 管理。 |
前置条件与风险
userid 映射(我方已有现成ERP用户与企微身份映射(不带部门信息),是否可以导入或直接读取)。getDeptManager/getUserDept 需本地组织数据的前提冲突)。故需优先确认官方对通讯录同步的支持,作为 OA 审批的前置依赖。tag/list + tag/get,非成员 user/get 字段;反向"用户 → 标签"需遍历标签或自建 userid → tags 映射。标签会增加同步任务的接口调用与映射复杂度,但企微已提供完整接口,技术上可行,已纳入需官方支持的范围。结论:✅ 高度可行,是项目主打场景之一
结论:✅ 可行,架构上对集成友好
forge-flow 是独立流程服务(forge-flow/),自带 REST 控制器(FlowModel / FlowTask / FlowInstance),任意系统可 HTTP 调用(启动流程 / 查询待办 / 审批)。forge-flow-client Spring Boot Starter,其他 Java 系统引入即用 FlowClient(startProcess / approve / getTodoTasks)与 @FlowStart / @FlowCallback 注解驱动;流程事件经 Redis Pub/Sub 回调。TaskCreateListener)。可在节点中调用外部 REST。总体判断:作为「OA 底座 + 多系统集成中枢」是合理选型——技术栈主流、能力覆盖到位、流程引擎对外暴露为独立服务,对集成很友好。
建议路径(能力侧依赖官方提供的范围)
MessageChannel(企微) + 待办回调能力。forge-flow-client 让其他系统发起/认领流程(官方能力);用 Flowable Service Task / HTTP Task 在工作流中调外部 API(官方能力);API 配置模块做接口治理(官方能力)。已澄清信息(用户确认,2026-07-26)
结论:❌ 开箱不能自适应;PC 表单在手机上需官方支持实现
AiForm 组件虽有 gridCols(栅格列数,默认 1)与字段 span 占位,但文档未提供响应式断点——它是固定列数栅格,不会随屏幕宽度自动重排。FormDesigner / FormPreview 同样基于 naive-ui。落地建议(依赖官方支持的范围)
AiForm 层接入 Naive UI 响应式栅格(NGrid 的 cols="1 s:2 m:3")+ viewport 适配,实现一套 Schema 跨端。6.1 多系统集成方式(其他系统非 Java)
forge-flow 暴露的是标准 REST API,非 Java 系统直接 HTTP 调用即可(启动流程 / 查询待办 / 审批),无需依赖仅限 Java 的 forge-flow-client Starter。sys_flow_task 待办表),但属库级耦合,建议优先走 REST / Redis 事件订阅。Service Task / HTTP Task / TaskListener 调用对方 REST API(对方既已提供 API,这条最顺)。6.2 无 SSO → 企微身份成为统一身份抓手
WECHAT_ENTERPRISE 作为统一入口,把 企微 userid ↔ forge 账号 ↔ 其他系统账号 做映射;forge 可作为身份中枢向其他系统透传身份,避免各系统各自登录。6.3 复杂表单 + 层级会签是主要依赖官方支持的部分(P0 优先级)
以下为我方当前企微审批系统的 11 项能力缺口。逐条对照 forge-admin 文档能力判定支持情况;不支持、或仅底层引擎可行但缺配置层的,统一纳入"需厂家支持"清单。
| # | 我方缺口(企微审批不支持) | forge-admin 支持情况 | 判定 |
|---|---|---|---|
| 1 | 基础控件,无布局控件 | AiForm 支持栅格(gridCols/span),Naive UI 含布局组件 |
部分支持;复杂布局控件需与厂家确认 |
| 2 | 明细控件,不支持行内关联 | 动态表单引擎官方自评仅 20%,明细/子表控件尚不成熟 | 需厂家支持/确认 |
| 3 | 不支持跨表数据关联;明细内不支持关联控件 | 当前未见跨表/关联型表单控件(非原生关系型表单能力) | 需厂家支持 |
| 4 | 不支持字段级权限;节点填写值无法作流转条件 | ① 仅有 datascope 数据范围(行级/部门级),字段级权限未见;② 流转条件:Flowable 支持"流程变量 + 网关条件"(技术上可行),但条件可视化配置成熟度仅 30% |
① 需厂家支持;② 底层支持,可视化配置需厂家支持 |
| 5 | 不支持自定义页面 | 支持通过代码新增页面(菜单/路由),但可视化"页面搭建器"未见 | 需厂家支持/确认 |
| 6 | 仅必填校验,不支持自定义校验 | 动态表单成熟度 20%,自定义校验规则能力待确认 | 需厂家支持 |
| 7 | 数据仅审批留存,无业务台账/报表 | 内置"大屏报表"+多数据源,但表单数据→业务台账/报表的自动贯通待确认 | 部分支持;数据贯通需厂家支持 |
| 8 | 不支持自由流程;不支持子流程 | ① 自由流程(任意跳转)非 Flowable BPMN 原生;② 子流程为 Flowable 原生能力 | ① 需厂家支持;② 支持(Flowable 原生) |
| 9 | 不支持退回到指定节点 | Flowable 技术上可行(任意节点跳转),但界面暴露程度取决于审批节点配置(成熟度 40%) | 底层支持;界面完整实现需厂家支持 |
| 10 | 不支持节点触发数据操作(如自动更新关联表) | Flowable Service Task/HTTP Task/TaskListener 可触发外部 API 或数据操作 |
支持(Flowable);可视化配置需厂家支持 |
| 11 | 无流程测试/模拟(需模拟标签/人员测各节点) | 文档未见流程模拟/测试功能 | 需厂家支持 |
说明:表中"支持(Flowable 原生)"的项(子流程、节点触发数据操作、退回到指定节点、节点值作流转条件)底层引擎能力具备,但当前 BPMN 设计器成熟度 30%~50%,易用化/可视化配置仍需厂家支持,对业务人员自主配置不友好。
backend/modules/social.md(社交登录含 WECHAT_ENTERPRISE)backend/modules/message.md(MessageChannel 可插拔、web/sms 渠道)backend/modules/api-config.md(API 自动注册/缓存/刷新)backend/modules/flow-client.md(FlowClient / @FlowStart / @FlowCallback / Redis Pub-Sub)backend/modules/flow-design.md(Flowable 架构与功能成熟度自评)backend/modules/websocket.md(实时推送)frontend/components/overview.md、form-designer.md、ai-form.md(Vue3 + Naive UI、AiForm 固定栅格、FormDesigner 基于 naive-ui、移动端为独立 uni-app H5)