分类与表单相关表
引用文件
目录
简介
本文件聚焦于工作流模块中的两类核心数据表:流程分类表 bpm_category 与表单定义表 bpm_form,并结合流程定义信息表 bpm_process_definition_info 的关联关系,系统性阐述以下内容:
- 流程分类的设计理念与字段作用(名称、编码、描述、状态、排序等)
- 表单定义表的结构设计与核心特性(配置 conf、表单项 fields、状态管理等)
- 分类与流程定义的关联方式(通过分类编码)
- 表单与流程实例的绑定机制(普通表单 vs 自定义表单)
- 最佳实践与设计指导原则
项目结构
围绕分类与表单的相关文件分布如下:
- 数据库脚本:位于 sql/mysql/bpm.sql,定义了 bpm_category、bpm_form、bpm_process_definition_info 等表结构
- 后端数据对象:BpmCategoryDO、BpmFormDO 映射数据库表
- 控制器与服务:BpmCategoryController、BpmFormController 提供 CRUD 与分页能力;BpmCategoryService、BpmFormService 定义业务接口
- VO 层:BpmCategorySaveReqVO、BpmFormSaveReqVO、BpmFormRespVO 封装请求与响应参数
- 枚举:BpmModelFormTypeEnum 定义流程模型的表单类型(普通表单/自定义表单)
图表来源
- bpm_category 表结构
- bpm_form 表结构
- bpm_process_definition_info 表结构
- BpmCategoryDO 数据对象
- BpmFormDO 数据对象
- BpmCategoryController 控制器
- BpmFormController 控制器
- BpmCategoryService 接口
- BpmFormService 接口
章节来源
- bpm_category 表结构
- bpm_form 表结构
- bpm_process_definition_info 表结构
- BpmCategoryDO 数据对象
- BpmFormDO 数据对象
- BpmCategoryController 控制器
- BpmFormController 控制器
- BpmCategoryService 接口
- BpmFormService 接口
核心组件
- 流程分类表 bpm_category
- 字段要点:id、name、code、description、status、sort、通用审计字段(creator、create_time、updater、update_time、deleted)、tenant_id
- 作用:为流程模型提供分类维度,支持按分类编码在流程定义中引用
- 表单定义表 bpm_form
- 字段要点:id、name、status、conf(表单配置 JSON)、fields(表单项数组,使用 JacksonTypeHandler 持久化为 JSON)、remark、通用审计字段、tenant_id
- 作用:存储动态表单的配置与表单项定义,供流程模型绑定使用
- 流程定义信息表 bpm_process_definition_info
- 关键关联字段:category(分类编码)、form_type(表单类型)、form_id(表单编号)、form_conf、form_fields、form_custom_create_path、form_custom_view_path
- 作用:将流程模型与分类、表单进行解耦绑定,支持“普通表单”和“自定义表单”两种模式
章节来源
架构总览
分类与表单在系统中的交互关系如下:
图表来源
- BpmCategoryDO 数据对象
- BpmFormDO 数据对象
- BpmCategoryController 控制器
- BpmFormController 控制器
- BpmCategoryService 接口
- BpmFormService 接口