Files
hjc-web/database/migrate-cms-website-template-id.sql
T
gxwebsoft 2b69686795 feat(app): 添加多模板关于我们页面及相关路由和404页面
- 新增404页面,优化未找到页面体验,避免被搜索引擎索引
- 增加文件代理接口,隐藏真实文件服务器地址,支持文件请求代理
- 实现/article、/case、/product及/page动态路由兼容列表与详情展示
- 添加动态CMS页面兼容入口处理旧式路径,统一路由与SEO设置
- 新增模板1、模板7、模板2、模板3关于我们页面,实现多模板支持
- 模板增强支持CMS单页内容加载及SEO信息动态设置
- 配置环境变量及Git忽略文件规则辅助开发和构建环境管理
2026-09-08 12:13:44 +08:00

44 lines
2.8 KiB
SQL
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
-- ============================================================
-- 迁移:cms_website.template_id 字段语义变更
-- ------------------------------------------------------------
-- 旧语义:template_id 存的是「克隆来源租户UID」(如 10257),
-- 由 CmsWebsiteServiceImpl.create() 写入并用作建站克隆来源。
-- 新语义:template_id = 真正的模板IDcms_template.id1~6),
-- 由 CmsTemplateController.use() 按租户写入,前端据此渲染 template-XX。
-- 克隆来源改由新字段 clone_tenant_id 承载,与模板ID彻底解耦。
-- ============================================================
-- 1) 将原 template_id 列重命名为 clone_tenant_id(保留克隆来源,建站克隆逻辑依赖它)
ALTER TABLE cms_website
CHANGE COLUMN template_id clone_tenant_id INT(11) DEFAULT NULL
COMMENT '克隆来源租户UID(原 template_id 语义)';
-- 2) 新增真正的模板ID列(cms_template.id1~6
ALTER TABLE cms_website
ADD COLUMN template_id INT(11) DEFAULT NULL
COMMENT '模板ID(cms_template.id1~6,对应前端 template-XX)';
-- 3) 迁移存量数据:克隆来源租户UID → 对应 cms_template.id
-- 已知映射(各模板的克隆参考租户;如与实际库不符请按实调整):
UPDATE cms_website SET template_id = 5 WHERE clone_tenant_id = 10257; -- 10257 = template-05 参考租户
-- UPDATE cms_website SET template_id = ? WHERE clone_tenant_id = ?; -- 其余模板参考租户 → 对应 cms_template.id
-- 4) 核查:列出尚未迁移的存量行(template_id 为空但 clone_tenant_id 非空)
-- 这些站点在管理员于后台「模板选择器」重新选用一次后会自动写入正确 template_id
-- 在重新选用前会临时回落到默认模板(template-01),不会丢数据。
-- SELECT website_id, tenant_id, clone_tenant_id
-- FROM cms_website
-- WHERE template_id IS NULL AND clone_tenant_id IS NOT NULL;
-- ============================================================
-- 配套代码改动(已完成,供复核):
-- - CmsWebsite.java:新增 cloneTenantId 字段;templateId 注释更正为「模板ID」
-- - CmsWebsiteServiceImpl.create():克隆来源改用 cloneTenantId
-- 新站点 template_id 取克隆来源站点自身已选定的模板(迁移后= cms_template.id)
-- - CmsTemplateController.use()/current():改为读写 cms_website.template_id(按租户隔离),
-- 不再写 app_product.template_id
-- - 前端 useTemplate.ts:解析优先级调整为 站点(cms_website) > 应用(app_product)
-- 避免共享产品级残留值盖掉租户级选择
-- - 前端 utils/index.ts:移除临时 TEMPLATE_ID_MAPtoTemplateKey 直接支持 1~6
-- ============================================================