status: done created: 2026-06-21 complexity: 🟡中等
当前流程模型设计页已替换为钉钉式审批流程设计器,适合人员审批、条件分支、抄送和表单权限等低门槛审批场景。但用户反馈该模式会限制通用业务工作流,旧 BPMN.js 专业设计器能力不应被移除。
本次改造目标:
9a2049b5^ 恢复原 components/bpmn BPMN.js 专业设计器。避免使用“专业 BPMN”作为主要入口文案,减少技术化;在说明文字中保留 BPMN 作为能力说明。
sys_flow_model 增加 designer_type 字段,默认 approval,兼容历史模型。FlowModel 实体增加 designerType。designerType 渲染:
approval:现有 DingFlowDesigner。business:恢复的 BPMN.js FlowModeler + NodePropertiesPanel。flow_type,避免与请假、报销、采购等业务类型冲突。designer_type 时默认按 approval 处理,保证已有审批流程不受影响。bpmnXml,部署链路继续复用现有 Flowable 部署逻辑。| 操作 | 表名 | 字段 | 说明 |
|---|---|---|---|
| 新增列 | sys_flow_model |
designer_type varchar(32) NOT NULL DEFAULT 'approval' |
approval 审批流程,business 业务流程 |
| 接口 | 方法 | 变更内容 |
|---|---|---|
/api/flow/model |
POST/PUT | 请求体和响应体透传 designerType |
/api/flow/model/page |
GET | 列表记录返回 designerType |
/api/flow/model/{id} |
GET | 详情返回 designerType |
bpmn-js 相关包。bpmn-js 依赖可能需要执行 pnpm 安装。git diff --check 检查空白错误。