# school_document_data_source_config_backup 表文档 ## 表概述 **表名**: school_document_data_source_config_backup **功能**: 文档数据源配置备份表,用于备份和管理文档生成时的数据源配置信息 ## 字段说明 ``` Field Type Collation Null Key Default Extra Privileges Comment id int NULL NO PRI NULL auto_increment select,insert,update,references 配置ID contract_id int NULL NO MUL 0 select,insert,update,references 合同ID table_name varchar(64) utf8mb4_general_ci NO MUL NULL select,insert,update,references 数据表名 table_alias varchar(64) utf8mb4_general_ci YES NULL select,insert,update,references 表别名(显示名称) field_name varchar(64) utf8mb4_general_ci NO NULL select,insert,update,references 字段名 field_alias varchar(64) utf8mb4_general_ci YES NULL select,insert,update,references 字段别名(显示名称) field_type varchar(32) utf8mb4_general_ci YES text select,insert,update,references 字段类型:text-文本,number-数字,date-日期,datetime-日期时间 is_active tinyint(1) NULL YES MUL 1 select,insert,update,references 是否启用:1-启用,0-禁用 sort_order int NULL YES 0 select,insert,update,references 排序 created_at timestamp NULL YES CURRENT_TIMESTAMP DEFAULT_GENERATED select,insert,update,references 创建时间 updated_at timestamp NULL YES CURRENT_TIMESTAMP DEFAULT_GENERATED on update CURRENT_TIMESTAMP select,insert,update,references 更新时间 ``` ## 功能用途 ### 主要功能 - **配置备份**: 备份文档生成时使用的数据源配置信息 - **合同关联**: 通过contract_id关联具体的合同文档 - **表结构映射**: 记录数据表名和字段名的映射关系 - **别名管理**: 管理表名和字段名的显示别名,提高可读性 - **字段类型**: 定义字段的数据类型(文本、数字、日期等) - **状态控制**: 通过is_active控制配置的启用状态 - **排序管理**: 通过sort_order控制字段的显示顺序 - **版本控制**: 记录配置的创建和更新时间,支持版本追踪 - **数据恢复**: 在配置丢失时可以从备份中恢复 - **配置审计**: 提供配置变更的审计追踪功能 ### 业务场景 - **合同文档生成**: 为合同文档生成提供数据源配置备份 - **报表模板**: 为各类报表模板提供数据字段配置 - **文档模板**: 为文档模板系统提供数据源映射配置 - **数据导出**: 为数据导出功能提供字段配置信息 - **配置恢复**: 在系统故障时恢复数据源配置 - **版本管理**: 管理不同版本的数据源配置 - **配置迁移**: 在系统升级时迁移配置数据 - **模板复制**: 复制现有模板的数据源配置 - **批量处理**: 批量处理多个合同的配置备份 - **配置审计**: 审计配置变更历史和操作记录 ## 关联关系 ### 主要关联表 - **school_contract**: 合同表,通过contract_id关联合同信息 - **school_document_data_source_config**: 原始数据源配置表 - **school_document_template**: 文档模板表,关联模板信息 - **school_document_generate_log**: 文档生成日志表,关联生成记录 - **school_sys_user**: 系统用户表,关联配置操作用户 - **school_member**: 会员表,合同相关的会员信息 - **school_course**: 课程表,课程相关的合同配置 - **school_campus**: 校区表,校区相关的配置信息 ### 关联说明 - `contract_id` 关联 `school_contract.id`,标识配置所属的合同 - `table_name` 标识数据源表名,对应系统中的实际数据表 - `field_name` 标识具体的字段名,对应表中的实际字段 - `table_alias` 和 `field_alias` 提供用户友好的显示名称 - **配置关联**: 与原始配置表关联,实现配置的备份和恢复 - **模板关联**: 与文档模板关联,支持模板的数据源配置 - **合同关联**: 与合同表关联,获取合同的详细信息 - **日志关联**: 与生成日志关联,追踪配置的使用情况 - **用户关联**: 与用户表关联,记录配置的操作者 ## 索引建议 ```sql -- 主键索引(自动创建) PRIMARY KEY (id) -- 合同ID索引(用于查询合同的配置备份) INDEX idx_contract_id (contract_id) -- 表名索引(用于按表查询配置) INDEX idx_table_name (table_name) -- 启用状态索引(用于查询启用的配置) INDEX idx_is_active (is_active) -- 创建时间索引(用于按时间查询) INDEX idx_created_at (created_at) -- 更新时间索引(用于按更新时间查询) INDEX idx_updated_at (updated_at) -- 复合索引(用于查询合同的启用配置) INDEX idx_contract_active (contract_id, is_active) -- 复合索引(用于查询表的字段配置) INDEX idx_table_field (table_name, field_name) -- 复合索引(用于排序查询) INDEX idx_contract_sort (contract_id, sort_order) ``` ## 注意事项 - **数据一致性**: 确保备份的配置与原始配置保持一致 - **字段类型**: field_type字段值需要严格按照规范设置 - **表名有效性**: table_name必须对应系统中实际存在的数据表 - **字段名有效性**: field_name必须对应表中实际存在的字段 - **别名唯一性**: 在同一合同内,别名应该保持唯一性 - **排序合理性**: sort_order应该保证字段显示的合理顺序 - **状态管理**: is_active状态变更需要考虑对文档生成的影响 - **备份时机**: 在配置变更前应及时创建备份 - **数据清理**: 定期清理过期或无效的配置备份 - **权限控制**: 配置备份的查看和操作需要严格权限控制 - **版本管理**: 通过时间戳实现配置的版本管理 - **恢复验证**: 从备份恢复配置时需要验证数据完整性 - **性能优化**: 大量配置查询时需要考虑缓存机制 - **监控告警**: 监控配置备份的创建和使用情况 - **数据备份**: 重要的配置备份数据需要定期备份到外部存储