chore: 重写初始提交(清空历史,整理后全量提交)

This commit is contained in:
ywxapp
2026-08-16 16:54:14 +08:00
commit 6c1a106bc1
1808 changed files with 238144 additions and 0 deletions
+142
View File
@@ -0,0 +1,142 @@
-- +----------------------------------------------------------------------
-- | YwxApp 轻社区论坛插件(forum)数据表
-- | 基于 Fly-3.0 社区模板结构分析设计
-- | 表前缀:__PREFIX__forum_*
-- +----------------------------------------------------------------------
SET NAMES utf8mb4;
-- ----------------------------
-- 版块 / 专栏(对应 Fly 的专栏分类)
-- ----------------------------
CREATE TABLE IF NOT EXISTS `__PREFIX__forum_board` (
`id` INT UNSIGNED NOT NULL AUTO_INCREMENT,
`parent_id` INT UNSIGNED NOT NULL DEFAULT 0 COMMENT '父版块ID0为顶级',
`name` VARCHAR(60) NOT NULL DEFAULT '' COMMENT '版块名称',
`slug` VARCHAR(60) NOT NULL DEFAULT '' COMMENT '英文标识,用于URL',
`icon` VARCHAR(255) NOT NULL DEFAULT '' COMMENT '图标',
`description` VARCHAR(255) NOT NULL DEFAULT '' COMMENT '版块简介',
`sort` INT NOT NULL DEFAULT 0 COMMENT '排序',
`topic_count` INT UNSIGNED NOT NULL DEFAULT 0 COMMENT '帖子数',
`reply_count` INT UNSIGNED NOT NULL DEFAULT 0 COMMENT '回复数',
`status` TINYINT NOT NULL DEFAULT 1 COMMENT '1启用0禁用',
`create_at` INT NOT NULL DEFAULT 0,
`update_at` INT NOT NULL DEFAULT 0,
PRIMARY KEY (`id`),
KEY `parent_id` (`parent_id`),
KEY `slug` (`slug`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='论坛版块';
-- ----------------------------
-- 帖子(对应 Fly 的 jie
-- ----------------------------
CREATE TABLE IF NOT EXISTS `__PREFIX__forum_topic` (
`id` INT UNSIGNED NOT NULL AUTO_INCREMENT,
`board_id` INT UNSIGNED NOT NULL DEFAULT 0 COMMENT '版块ID',
`user_id` INT UNSIGNED NOT NULL DEFAULT 0 COMMENT '作者会员ID',
`title` VARCHAR(200) NOT NULL DEFAULT '' COMMENT '标题',
`content` MEDIUMTEXT NOT NULL COMMENT '正文(HTML',
`type` SMALLINT NOT NULL DEFAULT 0 COMMENT '类型:0提问 99分享 100讨论 101建议 168公告 169动态',
`status` TINYINT NOT NULL DEFAULT 1 COMMENT '1正常 0待审 -1删除',
`is_top` TINYINT NOT NULL DEFAULT 0 COMMENT '置顶',
`is_essence` TINYINT NOT NULL DEFAULT 0 COMMENT '加精',
`audit_reason` VARCHAR(255) NOT NULL DEFAULT '' COMMENT '审核结论/驳回理由',
`lat` DECIMAL(10,7) NOT NULL DEFAULT '0.0000000' COMMENT '纬度(可选,用于附近)',
`lng` DECIMAL(10,7) NOT NULL DEFAULT '0.0000000' COMMENT '经度(可选,用于附近)',
`views` INT UNSIGNED NOT NULL DEFAULT 0 COMMENT '浏览数',
`reply_count` INT UNSIGNED NOT NULL DEFAULT 0 COMMENT '回复数',
`last_reply_id` INT UNSIGNED NOT NULL DEFAULT 0 COMMENT '最后回复ID',
`last_reply_uid` INT UNSIGNED NOT NULL DEFAULT 0 COMMENT '最后回复用户ID',
`last_reply_time` INT NOT NULL DEFAULT 0 COMMENT '最后回复时间',
`create_at` INT NOT NULL DEFAULT 0,
`update_at` INT NOT NULL DEFAULT 0,
PRIMARY KEY (`id`),
KEY `board_id` (`board_id`),
KEY `user_id` (`user_id`),
KEY `type` (`type`),
KEY `status` (`status`),
KEY `is_top` (`is_top`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='论坛帖子';
-- ----------------------------
-- 回复(对应 Fly 的帖子详情里的回复列表)
-- ----------------------------
CREATE TABLE IF NOT EXISTS `__PREFIX__forum_reply` (
`id` INT UNSIGNED NOT NULL AUTO_INCREMENT,
`topic_id` INT UNSIGNED NOT NULL DEFAULT 0 COMMENT '所属帖子',
`user_id` INT UNSIGNED NOT NULL DEFAULT 0 COMMENT '回复用户ID',
`content` MEDIUMTEXT NOT NULL COMMENT '回复内容(HTML',
`floor` INT UNSIGNED NOT NULL DEFAULT 0 COMMENT '楼层',
`status` TINYINT NOT NULL DEFAULT 1 COMMENT '1正常 -1删除',
`create_at` INT NOT NULL DEFAULT 0,
`update_at` INT NOT NULL DEFAULT 0,
PRIMARY KEY (`id`),
KEY `topic_id` (`topic_id`),
KEY `user_id` (`user_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='论坛回复';
-- ----------------------------
-- 标签
-- ----------------------------
CREATE TABLE IF NOT EXISTS `__PREFIX__forum_tag` (
`id` INT UNSIGNED NOT NULL AUTO_INCREMENT,
`name` VARCHAR(40) NOT NULL DEFAULT '',
`topic_count` INT UNSIGNED NOT NULL DEFAULT 0,
`create_at` INT NOT NULL DEFAULT 0,
PRIMARY KEY (`id`),
UNIQUE KEY `name` (`name`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='论坛标签';
-- ----------------------------
-- 帖子-标签关联
-- ----------------------------
CREATE TABLE IF NOT EXISTS `__PREFIX__forum_topic_tag` (
`topic_id` INT UNSIGNED NOT NULL,
`tag_id` INT UNSIGNED NOT NULL,
PRIMARY KEY (`topic_id`, `tag_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='帖子标签关联';
-- ----------------------------
-- 消息(@提醒 / 回复通知 / 系统)
-- ----------------------------
CREATE TABLE IF NOT EXISTS `__PREFIX__forum_message` (
`id` INT UNSIGNED NOT NULL AUTO_INCREMENT,
`user_id` INT UNSIGNED NOT NULL DEFAULT 0 COMMENT '接收人',
`from_uid` INT UNSIGNED NOT NULL DEFAULT 0 COMMENT '发送人,0为系统',
`type` VARCHAR(20) NOT NULL DEFAULT 'reply' COMMENT 'reply/at/system',
`topic_id` INT UNSIGNED NOT NULL DEFAULT 0,
`reply_id` INT UNSIGNED NOT NULL DEFAULT 0,
`content` VARCHAR(255) NOT NULL DEFAULT '',
`is_read` TINYINT NOT NULL DEFAULT 0 COMMENT '0未读1已读',
`create_at` INT NOT NULL DEFAULT 0,
PRIMARY KEY (`id`),
KEY `user_id` (`user_id`),
KEY `is_read` (`is_read`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='论坛消息';
-- ----------------------------
-- 种子数据:默认版块(与 Fly 专栏一致)
-- ----------------------------
INSERT INTO `__PREFIX__forum_board` (`id`, `parent_id`, `name`, `slug`, `icon`, `description`, `sort`, `status`, `create_at`, `update_at`)
SELECT 1, 0, '提问', 'ask', '', '遇到难题?在这里提问', 1, 1, UNIX_TIMESTAMP(), UNIX_TIMESTAMP()
FROM DUAL WHERE NOT EXISTS (SELECT 1 FROM `__PREFIX__forum_board` WHERE `id` = 1);
INSERT INTO `__PREFIX__forum_board` (`id`, `parent_id`, `name`, `slug`, `icon`, `description`, `sort`, `status`, `create_at`, `update_at`)
SELECT 2, 0, '分享', 'share', '', '好东西大家一起分享', 2, 1, UNIX_TIMESTAMP(), UNIX_TIMESTAMP()
FROM DUAL WHERE NOT EXISTS (SELECT 1 FROM `__PREFIX__forum_board` WHERE `id` = 2);
INSERT INTO `__PREFIX__forum_board` (`id`, `parent_id`, `name`, `slug`, `icon`, `description`, `sort`, `status`, `create_at`, `update_at`)
SELECT 3, 0, '讨论', 'discuss', '', '随意讨论技术话题', 3, 1, UNIX_TIMESTAMP(), UNIX_TIMESTAMP()
FROM DUAL WHERE NOT EXISTS (SELECT 1 FROM `__PREFIX__forum_board` WHERE `id` = 3);
INSERT INTO `__PREFIX__forum_board` (`id`, `parent_id`, `name`, `slug`, `icon`, `description`, `sort`, `status`, `create_at`, `update_at`)
SELECT 4, 0, '建议', 'suggest', '', '给社区提建议', 4, 1, UNIX_TIMESTAMP(), UNIX_TIMESTAMP()
FROM DUAL WHERE NOT EXISTS (SELECT 1 FROM `__PREFIX__forum_board` WHERE `id` = 4);
INSERT INTO `__PREFIX__forum_board` (`id`, `parent_id`, `name`, `slug`, `icon`, `description`, `sort`, `status`, `create_at`, `update_at`)
SELECT 5, 0, '公告', 'notice', '', '社区公告', 5, 1, UNIX_TIMESTAMP(), UNIX_TIMESTAMP()
FROM DUAL WHERE NOT EXISTS (SELECT 1 FROM `__PREFIX__forum_board` WHERE `id` = 5);
INSERT INTO `__PREFIX__forum_board` (`id`, `parent_id`, `name`, `slug`, `icon`, `description`, `sort`, `status`, `create_at`, `update_at`)
SELECT 6, 0, '动态', 'dynamic', '', '社区新鲜事', 6, 1, UNIX_TIMESTAMP(), UNIX_TIMESTAMP()
FROM DUAL WHERE NOT EXISTS (SELECT 1 FROM `__PREFIX__forum_board` WHERE `id` = 6);