update:1.修复一对一模式修改大纲名称没有同步更新章节名称 2.修复一对一模式全新生成大纲,没有关联删除对应章节问题 3.优化根据分析建议重新生成章节内容时引用默认写作风格 5.将写作风格调整至用户级,在一个项目中添加全局可见(需要更新数据库)

This commit is contained in:
xiamuceer
2025-11-28 20:23:42 +08:00
parent deb6cc37a4
commit 3be62e1482
12 changed files with 302 additions and 108 deletions
@@ -0,0 +1,36 @@
-- 迁移写作风格从项目级别到用户级别
-- 将 writing_styles 表的 project_id 字段改为 user_id
-- 步骤1: 添加新的 user_id 字段
ALTER TABLE writing_styles ADD COLUMN user_id VARCHAR(255);
-- 步骤2: 将现有数据从 project_id 映射到 user_id
-- 通过 projects 表关联,将项目的用户ID填充到风格的 user_id
UPDATE writing_styles ws
SET user_id = (
SELECT p.user_id
FROM projects p
WHERE p.id = ws.project_id
)
WHERE ws.project_id IS NOT NULL;
-- 步骤3: 添加外键约束
ALTER TABLE writing_styles
ADD CONSTRAINT fk_writing_styles_user
FOREIGN KEY (user_id) REFERENCES users(user_id) ON DELETE CASCADE;
-- 步骤4: 删除旧的 project_id 外键约束
ALTER TABLE writing_styles DROP CONSTRAINT IF EXISTS writing_styles_project_id_fkey;
-- 步骤5: 删除 project_id 列
ALTER TABLE writing_styles DROP COLUMN project_id;
-- 步骤6: 更新注释
COMMENT ON COLUMN writing_styles.user_id IS '所属用户ID(NULL表示全局预设风格)';
-- 验证迁移结果
SELECT
COUNT(*) as total_styles,
COUNT(user_id) as user_styles,
COUNT(*) FILTER (WHERE user_id IS NULL) as preset_styles
FROM writing_styles;