-- 主播认证系统数据库表 -- 请在服务器数据库中执行此脚本 -- 1. 在用户表中添加主播相关字段 -- 注意:如果字段已存在会报错,可以忽略 -- 添加主播认证状态字段 ALTER TABLE `eb_user` ADD COLUMN `is_streamer` tinyint(1) NOT NULL DEFAULT 0 COMMENT '是否是认证主播:0-否 1-是'; -- 添加主播认证时间 ALTER TABLE `eb_user` ADD COLUMN `streamer_certified_time` datetime DEFAULT NULL COMMENT '主播认证时间'; -- 添加主播等级 ALTER TABLE `eb_user` ADD COLUMN `streamer_level` int(11) NOT NULL DEFAULT 0 COMMENT '主播等级:0-普通 1-初级 2-中级 3-高级 4-金牌'; -- 添加主播简介 ALTER TABLE `eb_user` ADD COLUMN `streamer_intro` varchar(500) DEFAULT NULL COMMENT '主播简介'; -- 添加主播标签 ALTER TABLE `eb_user` ADD COLUMN `streamer_tags` varchar(200) DEFAULT NULL COMMENT '主播标签,逗号分隔'; -- 2. 主播认证申请表 CREATE TABLE IF NOT EXISTS `eb_streamer_application` ( `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '申请ID', `user_id` int(11) NOT NULL COMMENT '用户ID', `real_name` varchar(50) NOT NULL COMMENT '真实姓名', `id_card` varchar(20) NOT NULL COMMENT '身份证号', `id_card_front` varchar(500) DEFAULT NULL COMMENT '身份证正面照片', `id_card_back` varchar(500) DEFAULT NULL COMMENT '身份证背面照片', `intro` varchar(500) DEFAULT NULL COMMENT '主播简介', `experience` varchar(1000) DEFAULT NULL COMMENT '直播经验描述', `category_ids` varchar(100) DEFAULT NULL COMMENT '擅长分类ID,逗号分隔', `status` tinyint(1) NOT NULL DEFAULT 0 COMMENT '状态:0-待审核 1-审核通过 2-审核拒绝', `reject_reason` varchar(200) DEFAULT NULL COMMENT '拒绝原因', `reviewer_id` int(11) DEFAULT NULL COMMENT '审核人ID', `review_time` datetime DEFAULT NULL COMMENT '审核时间', `create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '申请时间', `update_time` datetime DEFAULT NULL ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间', PRIMARY KEY (`id`), KEY `idx_user_id` (`user_id`), KEY `idx_status` (`status`), KEY `idx_create_time` (`create_time`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='主播认证申请表'; -- 3. 主播封禁记录表 CREATE TABLE IF NOT EXISTS `eb_streamer_ban` ( `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '记录ID', `user_id` int(11) NOT NULL COMMENT '主播用户ID', `ban_type` tinyint(1) NOT NULL DEFAULT 1 COMMENT '封禁类型:1-临时封禁 2-永久封禁', `ban_reason` varchar(500) NOT NULL COMMENT '封禁原因', `ban_start_time` datetime NOT NULL COMMENT '封禁开始时间', `ban_end_time` datetime DEFAULT NULL COMMENT '封禁结束时间(永久封禁为空)', `operator_id` int(11) NOT NULL COMMENT '操作人ID', `is_active` tinyint(1) NOT NULL DEFAULT 1 COMMENT '是否生效:0-已解除 1-生效中', `unban_time` datetime DEFAULT NULL COMMENT '解封时间', `unban_operator_id` int(11) DEFAULT NULL COMMENT '解封操作人ID', `create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间', PRIMARY KEY (`id`), KEY `idx_user_id` (`user_id`), KEY `idx_is_active` (`is_active`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='主播封禁记录表';