Skip to content

审批接入(流程表单)

流程表单是 RuoYi Office 内置的在线表单设计器,无需编写代码即可拖拽搭建审批表单,适合简单的审批场景。

1. 操作步骤

1.0 第零步:了解流程表单

流程表单基于 form-create 组件实现,支持在线拖拽设计表单字段、校验规则等。表单数据存储在 Flowable 的流程变量(ACT_RU_VARIABLE)中。

适用场景:

  • 简单审批(如请假、报销等标准化流程)
  • 无需与业务数据关联的独立表单
  • 快速原型验证

1.1 第一步:定义流程

① 新建流程模型

进入「流程中心 → 流程模型」,点击「新建模型」按钮:

流程模型列表

填写基本信息:

  • 流程标识:唯一标识,如 leaveexpense
  • 流程名称:显示名称
  • 流程分类:选择流程所属分类
  • 流程图标:选择图标
  • 流程描述:可选描述

② 设计表单

在「表单设计」步骤,选择「流程表单」类型。 然后访问流程表单菜单,进入流程表单设计

流程表单列表流程表单设计

支持的字段类型:

  • 文本输入、数字输入、多行文本
  • 下拉选择、单选、复选
  • 日期、时间、日期范围
  • 上传文件、上传图片
  • 富文本编辑器
  • 级联选择、树形选择

最后在「表单设计」步骤中选择流程表单 流程表单关联

③ 设计流程

选择流程设计器(BPMN 或 钉钉/飞书 设计器),设计审批流程节点。 流程表单设计 每个审批节点可配置:

  • 审批人规则:指定角色、部门、岗位等
  • 表单字段权限:每个字段可设为只读、可编辑、隐藏
  • 多人审批方式:会签、或签、依次审批
  • 操作按钮:通过、拒绝、驳回、转办、委派等

④ 发布流程

流程设计完成后,点击「发布」按钮,流程即可在「发起流程」页面使用。 发布流程

1.2 第二步:发起流程

进入「流程中心 → 发起流程」,找到已发布的流程,填写表单后提交。

发起流程

1.3 第三步:审批流程

审批人在「待办任务」中查看并处理审批请求。

待办任务

支持的审批操作:

  • 通过:同意当前审批
  • 不通过:拒绝流程
  • 驳回:退回到指定节点
  • 转办:转交给其他人审批
  • 委派:委派给其他人审批后再返回
  • 加签:临时增加审批人

2. 流程表单管理

2.1 表结构

流程表单存储在 bpm_form 表中:

字段类型说明
idbigint表单编号
namevarchar(64)表单名称
statustinyint状态(开启/关闭)
conftext表单设计器配置(JSON)
fieldstext表单字段列表(JSON)

2.2 前端组件

前端技术栈:Vue3 + Vben Admin + Ant Design Vue。相关页面位于 ruoyi-office-vben/apps/web-antd/src/views/bpm

组件路径说明
表单设计器ruoyi-office-vben/apps/web-antd/src/views/bpm/form/designer/在线拖拽设计表单
表单列表ruoyi-office-vben/apps/web-antd/src/views/bpm/form/index.vue表单管理列表页
表单详情ruoyi-office-vben/apps/web-antd/src/views/bpm/form/modules/detail.vue表单预览与填写

流程表单列表

3. 常见问题

流程表单 vs 业务表单如何选择?

维度流程表单业务表单
开发成本低(无需写代码)高(需要开发前后端)
数据存储Flowable 变量表独立业务表
数据查询需要特殊 SQL标准 SQL 查询
灵活性一般高(可自定义 UI)
适用场景简单审批复杂业务场景

如果你的审批场景需要复杂的业务逻辑或数据关联,建议使用 业务表单