-- 为每个配置分类创建对应的页面和默认的排版块 -- 这个迁移文件将创建以下页面: -- 1. app - 应用配置页面 -- 2. database - 数据库配置页面 -- 3. kafka - Kafka配置页面 -- 4. security - 安全配置页面 -- 5. logging - 日志配置页面 -- 6. cache - 缓存配置页面 -- 创建应用配置页面 INSERT INTO pages (id, title, slug, description, is_active, created_at, updated_at) VALUES (gen_random_uuid(), '应用配置', 'app-settings', '应用基本配置管理页面', true, NOW(), NOW()), (gen_random_uuid(), '数据库配置', 'database-settings', '数据库连接和性能配置管理页面', true, NOW(), NOW()), (gen_random_uuid(), 'Kafka配置', 'kafka-settings', 'Kafka消息队列配置管理页面', true, NOW(), NOW()), (gen_random_uuid(), '安全配置', 'security-settings', '安全策略和权限配置管理页面', true, NOW(), NOW()), (gen_random_uuid(), '日志配置', 'logging-settings', '日志级别和文件管理配置页面', true, NOW(), NOW()), (gen_random_uuid(), '缓存配置', 'cache-settings', '缓存策略和性能配置管理页面', true, NOW(), NOW()); -- 获取页面ID用于创建块 DO $$ DECLARE app_page_id UUID; database_page_id UUID; kafka_page_id UUID; security_page_id UUID; logging_page_id UUID; cache_page_id UUID; BEGIN -- 获取页面ID SELECT id INTO app_page_id FROM pages WHERE slug = 'app-settings'; SELECT id INTO database_page_id FROM pages WHERE slug = 'database-settings'; SELECT id INTO kafka_page_id FROM pages WHERE slug = 'kafka-settings'; SELECT id INTO security_page_id FROM pages WHERE slug = 'security-settings'; SELECT id INTO logging_page_id FROM pages WHERE slug = 'logging-settings'; SELECT id INTO cache_page_id FROM pages WHERE slug = 'cache-settings'; -- 为应用配置页面创建块 -- 1. 英雄块 - 页面标题 INSERT INTO hero_blocks (id, page_id, block_order, title, subtitle, background_color, text_color, is_active, created_at, updated_at) VALUES (gen_random_uuid(), app_page_id, 1, '应用配置管理', '管理系统的基本配置信息', '#4F46E5', '#FFFFFF', true, NOW(), NOW()); -- 2. 设置块 - 应用配置 INSERT INTO settings_blocks (id, page_id, block_order, title, category, editable, display_mode, is_active, created_at, updated_at) VALUES (gen_random_uuid(), app_page_id, 2, '应用基本配置', 'app', true, 'form', true, NOW(), NOW()); -- 3. 文本块 - 说明文档 INSERT INTO text_blocks (id, page_id, block_order, title, markdown, is_active, created_at, updated_at) VALUES (gen_random_uuid(), app_page_id, 3, '配置说明', '## 应用配置说明 这里可以管理应用的基本配置信息,包括: - **应用名称**: 系统显示的名称 - **应用版本**: 当前系统版本号 - **调试模式**: 是否启用调试功能 - **系统时区**: 系统使用的时区设置 > 注意:这些配置项为系统级配置,修改后可能需要重启应用才能生效。', true, NOW(), NOW()); -- 为数据库配置页面创建块 -- 1. 英雄块 INSERT INTO hero_blocks (id, page_id, block_order, title, subtitle, background_color, text_color, is_active, created_at, updated_at) VALUES (gen_random_uuid(), database_page_id, 1, '数据库配置管理', '管理数据库连接和性能配置', '#059669', '#FFFFFF', true, NOW(), NOW()); -- 2. 设置块 INSERT INTO settings_blocks (id, page_id, block_order, title, category, editable, display_mode, is_active, created_at, updated_at) VALUES (gen_random_uuid(), database_page_id, 2, '数据库配置', 'database', true, 'form', true, NOW(), NOW()); -- 3. 文本块 INSERT INTO text_blocks (id, page_id, block_order, title, markdown, is_active, created_at, updated_at) VALUES (gen_random_uuid(), database_page_id, 3, '配置说明', '## 数据库配置说明 管理数据库相关的配置参数: - **最大连接数**: 数据库连接池的最大连接数量 - **连接超时**: 数据库连接的超时时间设置 > 警告:修改这些配置可能会影响系统性能,请谨慎操作。', true, NOW(), NOW()); -- 为Kafka配置页面创建块 -- 1. 英雄块 INSERT INTO hero_blocks (id, page_id, block_order, title, subtitle, background_color, text_color, is_active, created_at, updated_at) VALUES (gen_random_uuid(), kafka_page_id, 1, 'Kafka配置管理', '管理Kafka消息队列配置', '#DC2626', '#FFFFFF', true, NOW(), NOW()); -- 2. 设置块 INSERT INTO settings_blocks (id, page_id, block_order, title, category, editable, display_mode, is_active, created_at, updated_at) VALUES (gen_random_uuid(), kafka_page_id, 2, 'Kafka配置', 'kafka', true, 'form', true, NOW(), NOW()); -- 3. 文本块 INSERT INTO text_blocks (id, page_id, block_order, title, markdown, is_active, created_at, updated_at) VALUES (gen_random_uuid(), kafka_page_id, 3, '配置说明', '## Kafka配置说明 管理Kafka消息队列的相关配置: - **最大重试次数**: 消息发送失败时的最大重试次数 - **重试延迟**: 重试之间的延迟时间 > 提示:合理的重试配置可以提高消息传递的可靠性。', true, NOW(), NOW()); -- 为安全配置页面创建块 -- 1. 英雄块 INSERT INTO hero_blocks (id, page_id, block_order, title, subtitle, background_color, text_color, is_active, created_at, updated_at) VALUES (gen_random_uuid(), security_page_id, 1, '安全配置管理', '管理安全策略和权限配置', '#7C3AED', '#FFFFFF', true, NOW(), NOW()); -- 2. 设置块 INSERT INTO settings_blocks (id, page_id, block_order, title, category, editable, display_mode, is_active, created_at, updated_at) VALUES (gen_random_uuid(), security_page_id, 2, '安全配置', 'security', true, 'form', true, NOW(), NOW()); -- 3. 文本块 INSERT INTO text_blocks (id, page_id, block_order, title, markdown, is_active, created_at, updated_at) VALUES (gen_random_uuid(), security_page_id, 3, '配置说明', '## 安全配置说明 管理系统的安全相关配置: - **会话超时**: 用户会话的超时时间 - **最大登录尝试**: 允许的最大登录失败次数 > 重要:这些配置直接影响系统安全性,请根据实际需求谨慎设置。', true, NOW(), NOW()); -- 为日志配置页面创建块 -- 1. 英雄块 INSERT INTO hero_blocks (id, page_id, block_order, title, subtitle, background_color, text_color, is_active, created_at, updated_at) VALUES (gen_random_uuid(), logging_page_id, 1, '日志配置管理', '管理日志级别和文件管理配置', '#F59E0B', '#FFFFFF', true, NOW(), NOW()); -- 2. 设置块 INSERT INTO settings_blocks (id, page_id, block_order, title, category, editable, display_mode, is_active, created_at, updated_at) VALUES (gen_random_uuid(), logging_page_id, 2, '日志配置', 'logging', true, 'form', true, NOW(), NOW()); -- 3. 文本块 INSERT INTO text_blocks (id, page_id, block_order, title, markdown, is_active, created_at, updated_at) VALUES (gen_random_uuid(), logging_page_id, 3, '配置说明', '## 日志配置说明 管理系统日志的相关配置: - **日志级别**: 记录日志的详细程度 - **最大日志文件数**: 保留的日志文件数量 > 建议:生产环境建议使用 info 或 warn 级别,避免过多的日志输出。', true, NOW(), NOW()); -- 为缓存配置页面创建块 -- 1. 英雄块 INSERT INTO hero_blocks (id, page_id, block_order, title, subtitle, background_color, text_color, is_active, created_at, updated_at) VALUES (gen_random_uuid(), cache_page_id, 1, '缓存配置管理', '管理缓存策略和性能配置', '#10B981', '#FFFFFF', true, NOW(), NOW()); -- 2. 设置块 INSERT INTO settings_blocks (id, page_id, block_order, title, category, editable, display_mode, is_active, created_at, updated_at) VALUES (gen_random_uuid(), cache_page_id, 2, '缓存配置', 'cache', true, 'form', true, NOW(), NOW()); -- 3. 文本块 INSERT INTO text_blocks (id, page_id, block_order, title, markdown, is_active, created_at, updated_at) VALUES (gen_random_uuid(), cache_page_id, 3, '配置说明', '## 缓存配置说明 管理系统缓存的配置参数: - **缓存生存时间**: 缓存数据的有效期 - **缓存最大条目数**: 缓存中允许的最大条目数量 > 优化:合理的缓存配置可以显著提升系统性能。', true, NOW(), NOW()); END $$; -- 创建索引以提高查询性能 CREATE INDEX IF NOT EXISTS idx_pages_slug ON pages(slug); CREATE INDEX IF NOT EXISTS idx_hero_blocks_page_id ON hero_blocks(page_id); CREATE INDEX IF NOT EXISTS idx_settings_blocks_page_id ON settings_blocks(page_id); CREATE INDEX IF NOT EXISTS idx_text_blocks_page_id ON text_blocks(page_id);