智慧教务系统
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

5.3 KiB

school_diy_form_fields 表文档

表概述

表名: school_diy_form_fields
功能: 自定义表单字段管理表,负责管理教务系统中自定义表单的字段配置,包括字段类型、验证规则、显示属性、隐私保护等字段级别的详细配置

字段说明

Field	Type	Collation	Null	Key	Default	Extra	Privileges	Comment
field_id	int	NULL	NO	PRI	NULL	auto_increment	select,insert,update,references	字段id
form_id	int	NULL	NO		0		select,insert,update,references	所属万能表单id
field_key	varchar(255)	utf8mb4_general_ci	NO				select,insert,update,references	字段唯一标识
field_type	varchar(255)	utf8mb4_general_ci	NO				select,insert,update,references	字段类型
field_name	varchar(255)	utf8mb4_general_ci	NO				select,insert,update,references	字段名称
field_remark	varchar(255)	utf8mb4_general_ci	NO				select,insert,update,references	字段说明
field_default	text	utf8mb4_general_ci	YES		NULL		select,insert,update,references	字段默认值
write_num	int	NULL	NO		0		select,insert,update,references	字段填写总数量
field_required	tinyint	NULL	NO		0		select,insert,update,references	字段是否必填 0:否 1:是
field_hidden	tinyint	NULL	NO		0		select,insert,update,references	字段是否隐藏 0:否 1:是
field_unique	tinyint	NULL	NO		0		select,insert,update,references	字段内容防重复 0:否 1:是
privacy_protection	tinyint	NULL	NO		0		select,insert,update,references	隐私保护 0:关闭 1:开启
create_time	int	NULL	NO		0		select,insert,update,references	创建时间
update_time	int	NULL	NO		0		select,insert,update,references	更新时间

功能用途

主要功能

  • 字段配置管理: 管理表单中每个字段的详细配置信息
  • 字段类型控制: 支持多种字段类型(文本、数字、选择、日期等)
  • 验证规则设置: 配置字段的必填、唯一性、格式验证等规则
  • 显示控制: 管理字段的显示/隐藏状态
  • 默认值设置: 为字段设置默认值,提升用户体验
  • 隐私保护: 对敏感字段进行隐私保护设置
  • 填写统计: 统计每个字段的填写次数和使用情况
  • 字段标识: 通过field_key提供字段的唯一标识
  • 字段说明: 为字段提供详细的说明和帮助信息

业务场景

  • 表单设计: 在创建自定义表单时配置各种字段
  • 数据收集: 根据字段配置收集和验证用户输入数据
  • 表单验证: 基于字段规则进行数据验证和格式检查
  • 隐私合规: 对涉及隐私的字段进行特殊保护处理
  • 用户体验: 通过默认值和说明提升表单填写体验
  • 数据分析: 分析各字段的填写情况和使用频率
  • 表单优化: 根据字段使用统计优化表单设计
  • 权限控制: 根据字段属性控制不同用户的访问权限

关联关系

主要关联表

  • school_diy_form: 自定义表单表 (form_id)
  • school_diy_form_data: 表单数据表 (通过field_key关联)
  • school_student: 学生信息表 (表单填写者)
  • school_personnel: 人员信息表 (表单创建者)
  • sys_log: 系统日志表 (字段操作日志)

关联说明

  • 表单关联: form_id关联到school_diy_form表,确定字段所属表单
  • 数据关联: field_key作为字段标识,关联到具体的表单数据
  • 用户关联: 字段配置影响用户填写表单的体验和验证
  • 日志关联: 字段的创建、修改、删除操作需要记录日志
  • 统计关联: write_num字段统计该字段的填写次数

索引建议

  • 主键索引: field_id (已存在)
  • 外键索引: form_id (表单字段查询)
  • 唯一索引: (form_id, field_key) (表单内字段唯一性)
  • 业务索引:
    • field_type (字段类型查询)
    • field_required (必填字段查询)
    • field_hidden (显示字段查询)
    • field_unique (唯一字段查询)
  • 复合索引:
    • (form_id, field_hidden) (表单可见字段查询)
    • (form_id, field_required) (表单必填字段查询)
    • (field_type, field_required) (特定类型必填字段)
  • 统计索引: write_num (字段使用统计)
  • 时间索引:
    • create_time (创建时间查询)
    • update_time (更新时间查询)

注意事项

  • 字段标识唯一性: field_key在同一表单内必须唯一,作为字段的唯一标识
  • 表单关联完整性: form_id必须对应有效的表单记录
  • 字段类型一致性: field_type需要与实际数据类型保持一致
  • 验证规则合理性: 必填、唯一性等规则需要合理设置,避免冲突
  • 默认值格式: field_default需要符合字段类型的格式要求
  • 隐私保护合规: privacy_protection字段涉及数据隐私,需要严格管理
  • 字段依赖关系: 修改字段配置时需要考虑对现有数据的影响
  • 统计数据准确性: write_num需要实时更新,确保统计准确
  • 字段删除影响: 删除字段前需要检查是否有关联的表单数据
  • 权限控制: 字段配置的修改需要适当的权限验证
  • 数据迁移: 修改字段类型时需要考虑数据迁移和兼容性
  • 性能优化: 大量字段的表单需要考虑查询性能优化
  • 缓存策略: 频繁访问的字段配置可以使用缓存
  • 版本管理: 字段配置的变更需要版本控制和回滚机制
  • 监控告警: 字段配置异常需要监控和告警