ARTICLE DETAIL

资讯详情

深耕网站建设与运营推广的一线实战洞察。

在 AI 面前,表单设计器与流程设计器还有用吗?——从驰骋 BPM 的两个设计器说起

在 AI 面前,表单设计器与流程设计器还有用吗?——从驰骋 BPM 的两个设计器说起 在 AI 面前表单设计器与流程设计器还有用吗——从驰骋 BPM 的两个设计器说起依据代码Vue3/src/WF/Admin/FoolFormDesigner/表单设计器、Vue3/src/WF/Admin/FlowDesignerV2/流程设计器、WF_Admin_AIFrm.cs、WF_Admin_AIFlow*.cs文档版本2026-09写作口径只讨论仓库里能对得上的机制。不预设「AI 取代设计器」或「设计器不可替代」的立场而是看两者各自在管什么。一、把问题拆开「AI 能不能替代设计器」这个问题问得太粗因为「设计器」在两个层面同时存在层面作用AI 能否生成产物层面生成字段、节点、连线这些内容能且已经实现机制层面定义这些内容如何存储、如何生效、如何被校验不能也不该由 AI 决定驰骋的 AI 向导GPN_AIFrm、GPN_AIFlowNew已经在做第一层——用提示词出字段、出节点。但从代码看AI 生成的东西最后全都要「回到设计器」生成完跳到/WF/Designer/Form?FrmIDxxx或GloComm.UrlFlowD(flowNo)打开流程设计器。这个「跳回」不是没做完而是设计。为什么下面分两个设计器说。二、表单设计器在管什么FoolFormDesigner/main.vue顶部有三个模式页签可视化设计 / 预览 / 数据建模。这三个页签恰好对应了 AI 不碰的三件事。2.1 结构字段不只是字段AI 生成字段时AITools.Frm_Words让它按No / Name / 数据类型 / 逻辑类型 / 长度 / 分组 / ExtInfo / Tip输出。这是一份压缩过的字段描述。但设计器里一个字段的真实状态远不止这些从props/database/FormInfo.ts、MapAttr与各*Widget.ts看至少还要管控件类型文本、数字、金额、日期、日期时间、枚举、外键、单选、复选、富文本、附件、图片、手写签批、评分、进度…分组归属字段属于哪个GroupField分组本身还有顺序与折叠行为校验与联动MapExt里的扩展配置计算公式、级联、自动填充、正则数据存储数据类型长度决定物理列逻辑类型决定存的是值还是外键AI 一次生成的是一份「字段清单」设计器管的是这些字段在一个表单模型里的完整状态。这份状态不是文本能穷举的——它是元数据表Sys_MapAttr、Sys_GroupField、Sys_MapExt的联合。2.2 落库数据建模页的「同步」FoolFormDesigner/components/datamodel/DataModelPage.vue有一棵「主表 / 从表」的树每个表节点上有个状态点已同步 / 未同步tree-sync-dot。DbAttrsTab.vue里明确写着新增字段先保存元数据删除字段先标记执行同步数据库时清理元数据及关联配置。也就是说字段在设计器里改完元数据和物理表结构是两件事中间隔着一个显式的「同步」动作且同步前会二次确认。AI 直接生成 SQL 改表结构并不难但谁来保证元数据与物理表一致、谁来处理「删字段时关联配置怎么办」这类一致性维护必须有一个带状态的界面让操作者看得见「哪张表还没同步」。这是设计器的职责不是模型的。2.3 关联一流程多表单、节点换表单表单不是孤立对象。节点可以绑定不同表单方案NodeFormType一个流程可能挂多张表。所以表单设计器保存的不只是一张表单而是它在流程里的挂接关系。AI 生成的表单要进入这个关系网必须经过设计器的绑定流程。三、流程设计器在管什么FlowDesignerV2基于vue-flow/core组件目录里有CustomNode.vue、EditableEdge.vue、NodeContextMenu.vue、EdgePortModal.vue、FlowToolbarV2.vue等。它不是「画图工具」而是流程元数据的编辑器。3.1 节点属性AI 最难补齐的部分AI 生成流程时WF_Admin_AIFlow.cs的提示词只能让模型填Name / X,Y / DeliveryWay / CondModel / FWCSta这几个字段。但一个节点的真实配置远不止这些。FlowDesignerV2/utils/nodeQuickSettings.logic.ts里的「快速设置」本身就暴露了一批设置项底层字段含义谁执行WhoExeIt0~4 多种执行方式待办模式TodolistModel抢办 / 协作 / 队列 / 共享 / 协作组长撤销模式CancelRoleCancelDisWhenRead三个值映射到两个字段无人接收WhenNoWorkerIsOpenSelecter报错 / 选人 / 跳过注意最后两行的写法用户看到的是一个下拉背后是两个字段的组合。deriveRevokeMode/buildNodeQuickSettingsPatch专门做「界面上的一档 ↔ 底层的字段组合」双向映射。这正说明设计器的价值它把分散在多个字段、有隐含约束的组合配置收敛成操作者能理解的选项。AI 生成的 JSON 里如果只写了CancelRole1没写CancelDisWhenRead语义就不完整——设计器的映射层正是为了防止这种「半套配置」。3.2 接收人规则50 种且有前置条件nodeQuickSettings.logic.ts里DELIVERY_WAY_LABELS是一张接收人规则的中文对照表从「按角色智能计算」到「按 WebAPI 计算」到「自定义组合规则」编号一直排到 90。这还只是快速设置里露出的部分。完整的DeliveryWay有 50 多种且很多规则带参数与前置条件——比如「按绑定角色计算」要先选角色「按明细表拆分子线程」要先有从表。上一篇文章提到过WF_Admin_AI.AiNode_DeliveryWaysSave有一条白名单AiSafeDeliveryWays只放行「与上一节点处理人相同 / 与发起人相同 / 部门负责人 / 直属领导 / 分管领导」这五种不需要额外绑定的客观型规则其余一律返回提示让用户手工配。原因写得很直白为避免节点缺失配置导致发送失败AI 暂不作为全自动落库。这说明连驰骋自己都认为接收人这种「选错就发不出去」的配置不适合让 AI 直接定案。设计器接收人规则页GPE_AccepterRole在这里的角色不是「落后的手工工具」而是「带前置条件的配置守门人」。3.3 连线与条件图 ↔ 模型的互转EditableEdge.vue、EdgeLabelModal.vue、EdgePortModal.vue处理的是连线。而在后端连线对应Dir方向与Cond方向条件两组数据。设计器要做的是把用户拖出的线翻译成NDFrom / NDTo / Des与条件记录把条件记录里的FK_Attr / FK_Operator如ND101_QingJiaTianShu 10翻译回线上看得懂的标签保证「从 A 到 B 只有一条线」「条件字段必须属于本流程的表单」这类约束。AI 生成流程时输出的Cond记录字段名必须与表单实际字段严格对应提示词里反复强调「用真实 NodeID勿臆造」。生成容易保证引用有效很难——这是设计器与流程检查要接住的。3.4 流程检查设计器自带的质量闸门GL_FlowCheckInfo.ts是设计器里的「流程检查」面板数据来自后端Flow.DoCheck。它把问题分三级级别颜色处理建议信息绿记录节点检测信息不影响运转警告黄较严重建议注意不一定要立即改错误红必须立即修改否则可能影响运转帮助里还写明两条关键信息检测有局限性无法 100% 保证无问题以及系统具备自动更正与数据表结构修复能力。这个面板的存在回答了一个很实际的问题AI 生成流程很快但生成完谁来验收答案是设计器里的检查器——它把「流程能不能跑」这件事变成了可枚举的红黄绿清单而不是靠人肉看画布。四、AI 与设计器的真实分工把上面的观察收拢成一张表维度AI 向导设计器输入自然语言 / 截图结构化的点击配置产出内容草稿字段、节点、连线完整元数据 生效状态落点生成后跳回设计器元数据表 / 物理表同步正确性概率输出需清洗带约束、可校验兜底靠白名单 人工确认流程检查、同步确认、自动更正强项从 0 到 0.7 很快从 0.7 到 1 且稳定一句话AI 负责把空白页填出个七八成设计器负责让这七八成真正变成能跑的系统。两者不是替代关系而是「输入法」和「编译器」的关系——这个比喻在上一篇里用过这里可以再补一句设计器不只是编译器它还兼任规格检查器和一致性维护器。五、回应的三个常见说法说法一「拖拽太慢了AI 一句话就能出表。」出表快是真的。但EnsureMergedSelectionSource那套「先勾选、再落库」的交互说明连驰骋自己都没让 AI 直接落库——生成的是候选选择权在人。快不等于可以直接用。说法二「设计器生成的东西也一堆坑AI 至少省事。」设计器的坑大多来自「配置项太多」。但nodeQuickSettings.logic.ts那种「一个下拉映射两个字段」的设计恰恰是在减少坑。AI 不会自动帮你处理字段组合的完整性反而更容易产出半套配置。说法三「以后 AI 直接把配置写库设计器就没了。」技术上可行工程上危险。AiSafeDeliveryWays白名单已经给出驰骋的判断会导致运行时失败的配置不能交给概率。设计器提供的「显式确认 校验 检查报告」是让 AI 产物可上生产的前提。六、结论不是「AI 来了设计器就没用」而是要分清两件事AI 让设计器的「起点」变高——不用再从空白画布开始而是从一句描述开始。设计器让 AI 的「终点」可信——把草稿固化成有约束、可校验、能同步、能检查的元数据。如果非要给一个判断AI 越强设计器越需要「厚」。因为 AI 生成得越快对「谁来保证正确」的要求就越高。驰骋把流程检查、数据同步、接收人白名单这些都做进设计器和后端校验里方向是对的对选型者来说评估一个低代码平台时与其看它「AI 能不能生成」不如看它「AI 生成完之后有没有一套机制接得住」。附录本文涉及的代码索引主题路径表单设计器主入口Vue3/src/WF/Admin/FoolFormDesigner/main.vue表单数据建模元数据 ↔ 物理表FoolFormDesigner/components/datamodel/DataModelPage.vue、tabs/DbAttrsTab.vue表单控件与属性FoolFormDesigner/components/widgets/、props/widgets/、props/database/FormInfo.ts流程设计器Vue3/src/WF/Admin/FlowDesignerV2/index.vue节点/连线交互FlowDesignerV2/components/CustomNode.vue、EditableEdge.vue、NodeContextMenu.vue、EdgePortModal.vue节点快速设置映射FlowDesignerV2/utils/nodeQuickSettings.logic.ts流程检查面板FlowDesignerV2/models/GL_FlowCheckInfo.tsAI 接收人白名单CCFlow/Components/BP.WF/HttpHandler/WF_Admin_AI.csAI 流程/表单生成WF_Admin_AIFlow.cs、WF_Admin_AIFrm.cs、AITools.cs本文基于当前仓库源码静态分析撰写功能具体行为以你部署的版本为准。
返回列表