增加租户官网模块

This commit is contained in:
2026-08-19 23:34:28 +08:00
parent ec5cf96d0b
commit 14f2e8b5c1
28 changed files with 3812 additions and 7 deletions
+84
View File
@@ -0,0 +1,84 @@
-- =====================================================================
-- 多租户官网标签模板引擎 - 数据库脚本
-- 说明:本脚本只交付,不代执行,请在数据库后台手动运行
-- 新建表统一使用 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
);