智慧教务系统
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.9 KiB

school_diy_form_submit_config 表文档

表概述

表名: school_diy_form_submit_config
功能: 自定义表单提交配置表,负责管理教务系统中表单的提交规则和配置,包括提交限制、验证规则、通知设置等表单提交行为的控制和管理

字段说明

Field	Type	Collation	Null	Key	Default	Extra	Privileges	Comment
id	int	NULL	NO	PRI	NULL	auto_increment	select,insert,update,references	主键id
form_id	int	NULL	NO		0		select,insert,update,references	所属万能表单id
submit_after_action	varchar(255)	utf8mb4_general_ci	NO				select,insert,update,references	填表人提交后操作,text:文字信息,voucher:核销凭证
tips_type	varchar(255)	utf8mb4_general_ci	NO		NULL		select,insert,update,references	提示内容类型,default:默认提示,diy:自定义提示
tips_text	varchar(255)	utf8mb4_general_ci	NO				select,insert,update,references	自定义提示内容
time_limit_type	varchar(255)	utf8mb4_general_ci	NO		0		select,insert,update,references	核销凭证有效期限制类型,no_limit:不限制,specify_time:指定固定开始结束时间,submission_time:按提交时间设置有效期
time_limit_rule	text	utf8mb4_general_ci	YES		NULL		select,insert,update,references	核销凭证时间限制规则,json格式
voucher_content_rule	text	utf8mb4_general_ci	YES		NULL		select,insert,update,references	核销凭证内容,json格式
success_after_action	text	utf8mb4_general_ci	YES		NULL		select,insert,update,references	填写成功后续操作
create_time	int	NULL	NO		0		select,insert,update,references	创建时间
update_time	int	NULL	NO		0		select,insert,update,references	更新时间

功能用途

主要功能

  • 提交规则配置: 配置表单的提交次数限制、时间限制等规则
  • 验证规则管理: 设置表单提交时的数据验证规则和要求
  • 通知配置: 配置表单提交后的通知方式和接收人
  • 权限控制: 设置表单提交的权限要求和访问控制
  • 状态管理: 管理表单的启用/禁用状态和提交开关
  • 限制设置: 设置单用户提交次数、总提交次数等限制
  • 时间控制: 配置表单的开放时间和截止时间
  • 审核配置: 设置表单提交后的审核流程和规则
  • 数据处理: 配置提交数据的处理方式和存储规则

业务场景

  • 报名表单: 配置课程报名表单的提交限制和验证规则
  • 调查问卷: 设置问卷调查的提交次数和时间限制
  • 申请表单: 配置各类申请表单的审核流程和通知
  • 反馈表单: 设置用户反馈表单的提交规则和处理方式
  • 考试报名: 配置考试报名表单的时间限制和资格验证
  • 活动报名: 设置活动报名表单的人数限制和条件
  • 信息收集: 配置信息收集表单的数据验证和处理
  • 预约表单: 设置预约表单的时间限制和冲突检查
  • 评价表单: 配置课程评价表单的提交规则和统计

关联关系

主要关联表

  • school_diy_form: 自定义表单表 (form_id)
  • school_diy_form_records: 表单记录表 (提交记录)
  • school_member: 会员信息表 (提交权限)
  • school_student: 学生信息表 (学员权限)
  • school_personnel: 人员信息表 (教职工权限)
  • school_course: 课程信息表 (课程相关表单)
  • school_class: 班级信息表 (班级相关表单)
  • sys_log: 系统日志表 (配置变更日志)

关联说明

  • 表单关联: form_id关联到school_diy_form表,确定配置所属表单
  • 提交记录: 与school_diy_form_records表关联,控制提交行为
  • 用户权限: 通过member_id等关联用户信息,控制提交权限
  • 业务关联: 可能关联课程、班级等业务对象
  • 配置继承: 子表单可以继承父表单的提交配置
  • 规则应用: 配置规则应用到实际的表单提交过程
  • 通知关联: 提交后的通知与用户和管理员关联

索引建议

  • 主键索引: id (已存在)
  • 外键索引:
    • form_id (表单配置查询)
    • site_id (站点配置查询)
  • 唯一索引: form_id (每个表单唯一配置)
  • 业务索引:
    • status (状态查询)
    • submit_limit_type (限制类型查询)
    • is_need_login (登录要求查询)
    • is_need_verify (验证要求查询)
  • 复合索引:
    • (site_id, status) (站点状态查询)
    • (form_id, status) (表单状态查询)
    • (submit_limit_type, submit_limit_num) (限制规则查询)
  • 时间索引:
    • submit_start_time (开始时间查询)
    • submit_end_time (结束时间查询)
    • create_time (创建时间查询)
    • update_time (更新时间查询)
  • 统计索引:
    • submit_limit_num (限制数量统计)
    • total_submit_num (总提交数统计)

注意事项

  • 表单关联完整性: form_id必须对应有效的表单记录
  • 时间逻辑一致性: submit_start_time必须小于submit_end_time
  • 限制规则合理性: submit_limit_num必须为正数且合理
  • 状态管理: status变更需要考虑已有提交记录的影响
  • 权限验证: is_need_login和is_need_verify需要与实际验证逻辑一致
  • 时间有效性: 需要定期检查表单的时间有效性
  • 限制计数: submit_limit_num的计数需要准确维护
  • 并发控制: 高并发提交时需要考虑限制数量的准确性
  • 配置缓存: 频繁查询的配置可以使用缓存提高性能
  • 变更影响: 配置变更可能影响正在进行的提交流程
  • 数据一致性: 配置与实际提交行为需要保持一致
  • 审核流程: 如果启用审核,需要配置相应的审核人员
  • 通知设置: 通知配置需要确保接收人的有效性
  • 备份恢复: 重要配置需要定期备份
  • 权限控制: 配置修改需要严格的权限控制
  • 日志记录: 配置变更需要详细的日志记录
  • 性能监控: 监控配置对表单提交性能的影响
  • 兼容性: 配置变更需要考虑向后兼容性