-- ===================================================================== -- 多租户官网标签模板引擎 - 数据库脚本 -- 说明:本脚本只交付,不代执行,请在数据库后台手动运行 -- 新建表统一使用 yz_cms_frontend_ 前缀(官网前台专用) -- ===================================================================== -- 1. 模板登记表(platform 端登记,供租户选用) CREATE TABLE IF NOT EXISTS `yz_cms_frontend_template` ( `id` bigint unsigned NOT NULL AUTO_INCREMENT, `code` varchar(50) NOT NULL DEFAULT '' COMMENT '模板编码,对应 themes/{code}/ 目录', `name` varchar(100) NOT NULL DEFAULT '' COMMENT '模板名称', `description` varchar(500) NOT NULL DEFAULT '' COMMENT '模板描述', `preview` varchar(500) NOT NULL DEFAULT '' COMMENT '预览图地址', `status` tinyint NOT NULL DEFAULT 1 COMMENT '1启用 0停用', `sort` int NOT NULL DEFAULT 0 COMMENT '排序', `create_time` datetime NOT NULL, `update_time` datetime DEFAULT NULL, `delete_time` datetime DEFAULT NULL, PRIMARY KEY (`id`), KEY `idx_code` (`code`), KEY `idx_status` (`status`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='官网模板登记表'; -- 2. 官网 Banner 表(按租户隔离) CREATE TABLE IF NOT EXISTS `yz_cms_frontend_banner` ( `id` bigint unsigned NOT NULL AUTO_INCREMENT, `tid` bigint unsigned NOT NULL DEFAULT 0 COMMENT '租户ID', `title` varchar(255) NOT NULL DEFAULT '' COMMENT '标题', `desc` varchar(500) NOT NULL DEFAULT '' COMMENT '简介', `image` varchar(500) NOT NULL DEFAULT '' COMMENT '图片地址', `url` varchar(500) NOT NULL DEFAULT '' COMMENT '跳转地址', `sort` int NOT NULL DEFAULT 0 COMMENT '排序', `status` tinyint NOT NULL DEFAULT 1 COMMENT '1启用 0停用', `create_time` datetime NOT NULL, `update_time` datetime DEFAULT NULL, `delete_time` datetime DEFAULT NULL, PRIMARY KEY (`id`), KEY `idx_tid_status` (`tid`, `status`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='官网Banner表'; -- 3. 友情链接表(按租户隔离) CREATE TABLE IF NOT EXISTS `yz_cms_frontend_friendlink` ( `id` bigint unsigned NOT NULL AUTO_INCREMENT, `tid` bigint unsigned NOT NULL DEFAULT 0 COMMENT '租户ID', `link_name` varchar(100) NOT NULL DEFAULT '' COMMENT '链接名称', `link_url` varchar(500) NOT NULL DEFAULT '' COMMENT '链接地址', `link_logo` varchar(500) NOT NULL DEFAULT '' COMMENT 'Logo地址', `description` varchar(500) NOT NULL DEFAULT '' COMMENT '描述', `sort` int NOT NULL DEFAULT 0 COMMENT '排序', `status` tinyint NOT NULL DEFAULT 1 COMMENT '1启用 0禁用', `create_time` datetime NOT NULL, `update_time` datetime DEFAULT NULL, `delete_time` datetime DEFAULT NULL, PRIMARY KEY (`id`), KEY `idx_tid_status` (`tid`, `status`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='官网友情链接表'; -- 4. 单页表(按租户隔离,path 租户内唯一) CREATE TABLE IF NOT EXISTS `yz_cms_frontend_onepage` ( `id` bigint unsigned NOT NULL AUTO_INCREMENT, `tid` bigint unsigned NOT NULL DEFAULT 0 COMMENT '租户ID', `title` varchar(255) NOT NULL DEFAULT '' COMMENT '单页标题', `path` varchar(100) NOT NULL DEFAULT '' COMMENT '访问路径标识,租户内唯一,如 about', `content` longtext COMMENT '富文本内容', `sort` int NOT NULL DEFAULT 0 COMMENT '排序', `status` tinyint NOT NULL DEFAULT 1 COMMENT '1启用 0停用', `create_time` datetime NOT NULL, `update_time` datetime DEFAULT NULL, `delete_time` datetime DEFAULT NULL, PRIMARY KEY (`id`), KEY `idx_tid_path` (`tid`, `path`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='官网单页表'; -- 5. 租户站点设置表新增模板编码字段(租户选用的官网模板) ALTER TABLE `yz_system_tenant_site_setting` ADD COLUMN `template_code` varchar(50) NOT NULL DEFAULT '' COMMENT '选用的官网模板编码'; -- 6. 初始登记内置默认模板(可选,platform 端扫描目录也会自动登记) INSERT INTO `yz_cms_frontend_template` (`code`, `name`, `description`, `preview`, `status`, `sort`, `create_time`) SELECT 'default', '默认模板', '系统内置默认官网模板', '/themes/default/static/preview.png', 1, 0, NOW() FROM DUAL WHERE NOT EXISTS ( SELECT 1 FROM `yz_cms_frontend_template` WHERE `code` = 'default' AND `delete_time` IS NULL );