-- IM 模块 MySQL 表结构 -- 基于 yudao-module-im 模块实体类提取 -- 生成时间: 2026-06-30 -- ======================================== -- 1. im_channel - IM 频道表 -- ======================================== DROP TABLE IF EXISTS `im_channel`; CREATE TABLE `im_channel` ( `id` BIGINT NOT NULL AUTO_INCREMENT COMMENT '编号', `code` VARCHAR(64) NOT NULL COMMENT '频道业务码', `name` VARCHAR(128) NOT NULL COMMENT '频道名称', `avatar` VARCHAR(512) DEFAULT NULL COMMENT '频道头像', `sort` INT DEFAULT 0 COMMENT '排序', `status` TINYINT NOT NULL DEFAULT 0 COMMENT '状态(0正常 1禁用)', `creator` VARCHAR(64) DEFAULT '' COMMENT '创建者', `create_time` DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间', `updater` VARCHAR(64) DEFAULT '' COMMENT '更新者', `update_time` DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间', `deleted` BIT(1) NOT NULL DEFAULT b'0' COMMENT '是否删除', PRIMARY KEY (`id`), UNIQUE KEY `uk_code` (`code`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='IM 频道表'; -- ======================================== -- 2. im_channel_material - IM 频道素材表 -- ======================================== DROP TABLE IF EXISTS `im_channel_material`; CREATE TABLE `im_channel_material` ( `id` BIGINT NOT NULL AUTO_INCREMENT COMMENT '编号', `channel_id` BIGINT NOT NULL COMMENT '频道编号', `type` TINYINT NOT NULL COMMENT '素材内容类型', `title` VARCHAR(256) NOT NULL COMMENT '标题', `cover_url` VARCHAR(512) DEFAULT NULL COMMENT '封面图', `summary` VARCHAR(1024) DEFAULT NULL COMMENT '摘要', `content` TEXT DEFAULT NULL COMMENT '富文本 HTML', `url` VARCHAR(512) DEFAULT NULL COMMENT '跳转链接', `creator` VARCHAR(64) DEFAULT '' COMMENT '创建者', `create_time` DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间', `updater` VARCHAR(64) DEFAULT '' COMMENT '更新者', `update_time` DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间', `deleted` BIT(1) NOT NULL DEFAULT b'0' COMMENT '是否删除', PRIMARY KEY (`id`), KEY `idx_channel_id` (`channel_id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='IM 频道素材表'; -- ======================================== -- 3. im_conversation_read - IM 会话读位置表 -- ======================================== DROP TABLE IF EXISTS `im_conversation_read`; CREATE TABLE `im_conversation_read` ( `id` BIGINT NOT NULL AUTO_INCREMENT COMMENT '编号', `user_id` BIGINT NOT NULL COMMENT '用户编号', `conversation_type` TINYINT NOT NULL COMMENT '会话类型(1私聊 2群聊 3频道)', `target_id` BIGINT NOT NULL COMMENT '目标编号', `message_id` BIGINT NOT NULL COMMENT '最大已读消息编号', `read_time` DATETIME DEFAULT NULL COMMENT '最近已读时间', `creator` VARCHAR(64) DEFAULT '' COMMENT '创建者', `create_time` DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间', `updater` VARCHAR(64) DEFAULT '' COMMENT '更新者', `update_time` DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间', `deleted` BIT(1) NOT NULL DEFAULT b'0' COMMENT '是否删除', PRIMARY KEY (`id`), UNIQUE KEY `uk_user_conv` (`user_id`, `conversation_type`, `target_id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='IM 会话读位置表'; -- ======================================== -- 4. im_face_pack - IM 表情包表 -- ======================================== DROP TABLE IF EXISTS `im_face_pack`; CREATE TABLE `im_face_pack` ( `id` BIGINT NOT NULL AUTO_INCREMENT COMMENT '编号', `name` VARCHAR(128) NOT NULL COMMENT '表情包名称', `icon` VARCHAR(512) DEFAULT NULL COMMENT '表情包图标', `sort` INT DEFAULT 0 COMMENT '排序', `status` TINYINT NOT NULL DEFAULT 0 COMMENT '状态(0正常 1禁用)', `creator` VARCHAR(64) DEFAULT '' COMMENT '创建者', `create_time` DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间', `updater` VARCHAR(64) DEFAULT '' COMMENT '更新者', `update_time` DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间', `deleted` BIT(1) NOT NULL DEFAULT b'0' COMMENT '是否删除', PRIMARY KEY (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='IM 表情包表'; -- ======================================== -- 5. im_face_pack_item - IM 表情包项表 -- ======================================== DROP TABLE IF EXISTS `im_face_pack_item`; CREATE TABLE `im_face_pack_item` ( `id` BIGINT NOT NULL AUTO_INCREMENT COMMENT '编号', `pack_id` BIGINT NOT NULL COMMENT '所属表情包编号', `url` VARCHAR(512) NOT NULL COMMENT '表情图 URL', `name` VARCHAR(64) DEFAULT NULL COMMENT '表情名', `width` INT DEFAULT NULL COMMENT '渲染宽度(像素)', `height` INT DEFAULT NULL COMMENT '渲染高度(像素)', `sort` INT DEFAULT 0 COMMENT '排序', `status` TINYINT NOT NULL DEFAULT 0 COMMENT '状态(0正常 1禁用)', `creator` VARCHAR(64) DEFAULT '' COMMENT '创建者', `create_time` DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间', `updater` VARCHAR(64) DEFAULT '' COMMENT '更新者', `update_time` DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间', `deleted` BIT(1) NOT NULL DEFAULT b'0' COMMENT '是否删除', PRIMARY KEY (`id`), KEY `idx_pack_id` (`pack_id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='IM 表情包项表'; -- ======================================== -- 6. im_face_user_item - IM 用户私有表情表 -- ======================================== DROP TABLE IF EXISTS `im_face_user_item`; CREATE TABLE `im_face_user_item` ( `id` BIGINT NOT NULL AUTO_INCREMENT COMMENT '编号', `user_id` BIGINT NOT NULL COMMENT '所属用户编号', `url` VARCHAR(512) NOT NULL COMMENT '表情图 URL', `name` VARCHAR(64) DEFAULT NULL COMMENT '表情名', `width` INT DEFAULT NULL COMMENT '渲染宽度(像素)', `height` INT DEFAULT NULL COMMENT '渲染高度(像素)', `sort` INT DEFAULT 0 COMMENT '排序', `creator` VARCHAR(64) DEFAULT '' COMMENT '创建者', `create_time` DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间', `updater` VARCHAR(64) DEFAULT '' COMMENT '更新者', `update_time` DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间', `deleted` BIT(1) NOT NULL DEFAULT b'0' COMMENT '是否删除', PRIMARY KEY (`id`), KEY `idx_user_id` (`user_id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='IM 用户私有表情表'; -- ======================================== -- 7. im_friend - IM 好友关系表 -- ======================================== DROP TABLE IF EXISTS `im_friend`; CREATE TABLE `im_friend` ( `id` BIGINT NOT NULL AUTO_INCREMENT COMMENT '编号', `user_id` BIGINT NOT NULL COMMENT '用户编号', `friend_user_id` BIGINT NOT NULL COMMENT '好友用户编号', `silent` BIT(1) DEFAULT b'0' COMMENT '是否免打扰', `display_name` VARCHAR(128) DEFAULT NULL COMMENT '好友展示备注', `add_source` TINYINT DEFAULT NULL COMMENT '添加来源', `pinned` BIT(1) DEFAULT b'0' COMMENT '是否置顶联系人', `blocked` BIT(1) DEFAULT b'0' COMMENT '是否拉黑', `status` TINYINT NOT NULL DEFAULT 0 COMMENT '好友状态(0正常 1禁用/已删除)', `add_time` DATETIME DEFAULT NULL COMMENT '添加好友时间', `delete_time` DATETIME DEFAULT NULL COMMENT '删除好友时间', `creator` VARCHAR(64) DEFAULT '' COMMENT '创建者', `create_time` DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间', `updater` VARCHAR(64) DEFAULT '' COMMENT '更新者', `update_time` DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间', `deleted` BIT(1) NOT NULL DEFAULT b'0' COMMENT '是否删除', PRIMARY KEY (`id`), UNIQUE KEY `uk_user_friend` (`user_id`, `friend_user_id`), KEY `idx_friend_user_id` (`friend_user_id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='IM 好友关系表'; -- ======================================== -- 8. im_friend_request - IM 好友申请记录表 -- ======================================== DROP TABLE IF EXISTS `im_friend_request`; CREATE TABLE `im_friend_request` ( `id` BIGINT NOT NULL AUTO_INCREMENT COMMENT '编号', `from_user_id` BIGINT NOT NULL COMMENT '发起方用户编号', `to_user_id` BIGINT NOT NULL COMMENT '接收方用户编号', `apply_content` VARCHAR(256) DEFAULT NULL COMMENT '申请理由', `display_name` VARCHAR(128) DEFAULT NULL COMMENT '发起方对接收方的备注', `add_source` TINYINT DEFAULT NULL COMMENT '添加来源', `handle_result` TINYINT DEFAULT NULL COMMENT '处理结果', `handle_content` VARCHAR(256) DEFAULT NULL COMMENT '处理理由', `handle_time` DATETIME DEFAULT NULL COMMENT '处理时间', `creator` VARCHAR(64) DEFAULT '' COMMENT '创建者', `create_time` DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间', `updater` VARCHAR(64) DEFAULT '' COMMENT '更新者', `update_time` DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间', `deleted` BIT(1) NOT NULL DEFAULT b'0' COMMENT '是否删除', PRIMARY KEY (`id`), KEY `idx_from_user_id` (`from_user_id`), KEY `idx_to_user_id` (`to_user_id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='IM 好友申请记录表'; -- ======================================== -- 9. im_group - IM 群信息表 -- ======================================== DROP TABLE IF EXISTS `im_group`; CREATE TABLE `im_group` ( `id` BIGINT NOT NULL AUTO_INCREMENT COMMENT '编号', `name` VARCHAR(128) NOT NULL COMMENT '群名称', `owner_user_id` BIGINT NOT NULL COMMENT '群主用户编号', `avatar` VARCHAR(512) DEFAULT NULL COMMENT '群头像', `notice` VARCHAR(1024) DEFAULT NULL COMMENT '群公告', `join_approval` BIT(1) DEFAULT b'0' COMMENT '进群是否需审批', `banned` BIT(1) DEFAULT b'0' COMMENT '是否封禁', `banned_reason` VARCHAR(256) DEFAULT NULL COMMENT '封禁原因', `banned_time` DATETIME DEFAULT NULL COMMENT '封禁时间', `status` TINYINT NOT NULL DEFAULT 0 COMMENT '群状态(0正常 1已解散)', `dissolved_time` DATETIME DEFAULT NULL COMMENT '解散时间', `muted_all` BIT(1) DEFAULT b'0' COMMENT '是否全群禁言', `pinned_message_ids` VARCHAR(1024) DEFAULT NULL COMMENT '群置顶消息编号列表', `creator` VARCHAR(64) DEFAULT '' COMMENT '创建者', `create_time` DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间', `updater` VARCHAR(64) DEFAULT '' COMMENT '更新者', `update_time` DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间', `deleted` BIT(1) NOT NULL DEFAULT b'0' COMMENT '是否删除', PRIMARY KEY (`id`), KEY `idx_owner_user_id` (`owner_user_id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='IM 群信息表'; -- ======================================== -- 10. im_group_member - IM 群成员表 -- ======================================== DROP TABLE IF EXISTS `im_group_member`; CREATE TABLE `im_group_member` ( `id` BIGINT NOT NULL AUTO_INCREMENT COMMENT '编号', `group_id` BIGINT NOT NULL COMMENT '群编号', `user_id` BIGINT NOT NULL COMMENT '用户编号', `display_user_name` VARCHAR(128) DEFAULT NULL COMMENT '组内显示名', `group_remark` VARCHAR(256) DEFAULT NULL COMMENT '群备注', `silent` BIT(1) DEFAULT b'0' COMMENT '是否免打扰', `status` TINYINT NOT NULL DEFAULT 0 COMMENT '成员状态(0正常 1禁用)', `role` TINYINT NOT NULL DEFAULT 0 COMMENT '成员角色(0普通成员 1管理员 2群主)', `join_time` DATETIME DEFAULT NULL COMMENT '入群时间', `add_source` TINYINT DEFAULT NULL COMMENT '加入来源', `inviter_user_id` BIGINT DEFAULT NULL COMMENT '邀请人用户编号', `quit_time` DATETIME DEFAULT NULL COMMENT '退群时间', `mute_end_time` DATETIME DEFAULT NULL COMMENT '禁言到期时间', `creator` VARCHAR(64) DEFAULT '' COMMENT '创建者', `create_time` DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间', `updater` VARCHAR(64) DEFAULT '' COMMENT '更新者', `update_time` DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间', `deleted` BIT(1) NOT NULL DEFAULT b'0' COMMENT '是否删除', PRIMARY KEY (`id`), UNIQUE KEY `uk_group_user` (`group_id`, `user_id`), KEY `idx_user_id` (`user_id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='IM 群成员表'; -- ======================================== -- 11. im_group_request - IM 加群申请记录表 -- ======================================== DROP TABLE IF EXISTS `im_group_request`; CREATE TABLE `im_group_request` ( `id` BIGINT NOT NULL AUTO_INCREMENT COMMENT '编号', `group_id` BIGINT NOT NULL COMMENT '群编号', `user_id` BIGINT NOT NULL COMMENT '申请人/被邀请人用户编号', `inviter_user_id` BIGINT DEFAULT NULL COMMENT '邀请人用户编号', `apply_content` VARCHAR(256) DEFAULT NULL COMMENT '申请理由', `add_source` TINYINT DEFAULT NULL COMMENT '加入来源', `handle_result` TINYINT DEFAULT NULL COMMENT '处理结果', `handle_user_id` BIGINT DEFAULT NULL COMMENT '处理人用户编号', `handle_content` VARCHAR(256) DEFAULT NULL COMMENT '处理理由', `handle_time` DATETIME DEFAULT NULL COMMENT '处理时间', `creator` VARCHAR(64) DEFAULT '' COMMENT '创建者', `create_time` DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间', `updater` VARCHAR(64) DEFAULT '' COMMENT '更新者', `update_time` DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间', `deleted` BIT(1) NOT NULL DEFAULT b'0' COMMENT '是否删除', PRIMARY KEY (`id`), KEY `idx_group_id` (`group_id`), KEY `idx_user_id` (`user_id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='IM 加群申请记录表'; -- ======================================== -- 12. im_channel_message - IM 频道消息表 -- ======================================== DROP TABLE IF EXISTS `im_channel_message`; CREATE TABLE `im_channel_message` ( `id` BIGINT NOT NULL AUTO_INCREMENT COMMENT '编号', `channel_id` BIGINT NOT NULL COMMENT '频道编号', `material_id` BIGINT DEFAULT NULL COMMENT '关联素材编号', `type` TINYINT NOT NULL COMMENT '消息类型', `content` TEXT DEFAULT NULL COMMENT '消息内容 JSON', `receiver_user_ids` VARCHAR(1024) DEFAULT NULL COMMENT '接收人编号列表', `send_time` DATETIME DEFAULT NULL COMMENT '发送时间', `creator` VARCHAR(64) DEFAULT '' COMMENT '创建者', `create_time` DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间', `updater` VARCHAR(64) DEFAULT '' COMMENT '更新者', `update_time` DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间', `deleted` BIT(1) NOT NULL DEFAULT b'0' COMMENT '是否删除', PRIMARY KEY (`id`), KEY `idx_channel_id` (`channel_id`), KEY `idx_send_time` (`send_time`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='IM 频道消息表'; -- ======================================== -- 13. im_group_message - IM 群聊消息表 -- ======================================== DROP TABLE IF EXISTS `im_group_message`; CREATE TABLE `im_group_message` ( `id` BIGINT NOT NULL AUTO_INCREMENT COMMENT '编号', `client_message_id` VARCHAR(64) DEFAULT NULL COMMENT '客户端消息编号', `sender_id` BIGINT NOT NULL COMMENT '发送人编号', `group_id` BIGINT NOT NULL COMMENT '群编号', `type` TINYINT NOT NULL COMMENT '消息类型', `content` TEXT DEFAULT NULL COMMENT '消息内容 JSON', `status` TINYINT DEFAULT NULL COMMENT '消息状态', `send_time` DATETIME DEFAULT NULL COMMENT '发送时间', `receiver_user_ids` VARCHAR(1024) DEFAULT NULL COMMENT '定向接收用户编号列表', `at_user_ids` VARCHAR(1024) DEFAULT NULL COMMENT '@目标用户编号列表', `receipt_status` TINYINT DEFAULT NULL COMMENT '回执状态', `creator` VARCHAR(64) DEFAULT '' COMMENT '创建者', `create_time` DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间', `updater` VARCHAR(64) DEFAULT '' COMMENT '更新者', `update_time` DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间', `deleted` BIT(1) NOT NULL DEFAULT b'0' COMMENT '是否删除', PRIMARY KEY (`id`), UNIQUE KEY `uk_client_message_id` (`client_message_id`), KEY `idx_group_id` (`group_id`), KEY `idx_sender_id` (`sender_id`), KEY `idx_send_time` (`send_time`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='IM 群聊消息表'; -- ======================================== -- 14. im_private_message - IM 私聊消息表 -- ======================================== DROP TABLE IF EXISTS `im_private_message`; CREATE TABLE `im_private_message` ( `id` BIGINT NOT NULL AUTO_INCREMENT COMMENT '编号', `client_message_id` VARCHAR(64) DEFAULT NULL COMMENT '客户端消息编号', `sender_id` BIGINT NOT NULL COMMENT '发送人编号', `receiver_id` BIGINT NOT NULL COMMENT '接收人编号', `type` TINYINT NOT NULL COMMENT '消息类型', `content` TEXT DEFAULT NULL COMMENT '消息内容 JSON', `status` TINYINT DEFAULT NULL COMMENT '消息状态', `receipt_status` TINYINT DEFAULT NULL COMMENT '回执状态', `send_time` DATETIME DEFAULT NULL COMMENT '发送时间', `creator` VARCHAR(64) DEFAULT '' COMMENT '创建者', `create_time` DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间', `updater` VARCHAR(64) DEFAULT '' COMMENT '更新者', `update_time` DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间', `deleted` BIT(1) NOT NULL DEFAULT b'0' COMMENT '是否删除', PRIMARY KEY (`id`), UNIQUE KEY `uk_client_message_id` (`client_message_id`), KEY `idx_sender_id` (`sender_id`), KEY `idx_receiver_id` (`receiver_id`), KEY `idx_send_time` (`send_time`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='IM 私聊消息表'; -- ======================================== -- 15. im_rtc_call - IM 通话记录表 -- ======================================== DROP TABLE IF EXISTS `im_rtc_call`; CREATE TABLE `im_rtc_call` ( `id` BIGINT NOT NULL AUTO_INCREMENT COMMENT '编号', `room` VARCHAR(64) NOT NULL COMMENT '业务通话编号(UUID)', `conversation_type` TINYINT NOT NULL COMMENT '会话类型', `media_type` TINYINT NOT NULL COMMENT '媒体类型', `inviter_user_id` BIGINT NOT NULL COMMENT '发起人用户编号', `group_id` BIGINT DEFAULT NULL COMMENT '群编号', `status` TINYINT NOT NULL COMMENT '通话状态', `end_reason` TINYINT DEFAULT NULL COMMENT '结束原因', `start_time` DATETIME DEFAULT NULL COMMENT '发起时间', `accept_time` DATETIME DEFAULT NULL COMMENT '接通时间', `end_time` DATETIME DEFAULT NULL COMMENT '通话结束时间', `creator` VARCHAR(64) DEFAULT '' COMMENT '创建者', `create_time` DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间', `updater` VARCHAR(64) DEFAULT '' COMMENT '更新者', `update_time` DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间', `deleted` BIT(1) NOT NULL DEFAULT b'0' COMMENT '是否删除', PRIMARY KEY (`id`), UNIQUE KEY `uk_room` (`room`), KEY `idx_inviter_user_id` (`inviter_user_id`), KEY `idx_group_id` (`group_id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='IM 通话记录表'; -- ======================================== -- 16. im_rtc_participant - IM 通话参与者表 -- ======================================== DROP TABLE IF EXISTS `im_rtc_participant`; CREATE TABLE `im_rtc_participant` ( `id` BIGINT NOT NULL AUTO_INCREMENT COMMENT '编号', `call_id` BIGINT NOT NULL COMMENT '通话编号', `room` VARCHAR(64) NOT NULL COMMENT '业务通话编号', `user_id` BIGINT NOT NULL COMMENT '参与者用户编号', `role` TINYINT NOT NULL COMMENT '参与角色', `status` TINYINT NOT NULL COMMENT '参与状态', `invite_time` DATETIME DEFAULT NULL COMMENT '被邀请时间', `accept_time` DATETIME DEFAULT NULL COMMENT '接听时间', `leave_time` DATETIME DEFAULT NULL COMMENT '离开时间', `creator` VARCHAR(64) DEFAULT '' COMMENT '创建者', `create_time` DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间', `updater` VARCHAR(64) DEFAULT '' COMMENT '更新者', `update_time` DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间', `deleted` BIT(1) NOT NULL DEFAULT b'0' COMMENT '是否删除', PRIMARY KEY (`id`), KEY `idx_call_id` (`call_id`), KEY `idx_room` (`room`), KEY `idx_user_id` (`user_id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='IM 通话参与者表'; -- ======================================== -- 17. im_sensitive_word - IM 敏感词表 -- ======================================== DROP TABLE IF EXISTS `im_sensitive_word`; CREATE TABLE `im_sensitive_word` ( `id` BIGINT NOT NULL AUTO_INCREMENT COMMENT '编号', `word` VARCHAR(128) NOT NULL COMMENT '敏感词', `status` TINYINT NOT NULL DEFAULT 0 COMMENT '状态(0正常 1禁用)', `creator` VARCHAR(64) DEFAULT '' COMMENT '创建者', `create_time` DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间', `updater` VARCHAR(64) DEFAULT '' COMMENT '更新者', `update_time` DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间', `deleted` BIT(1) NOT NULL DEFAULT b'0' COMMENT '是否删除', PRIMARY KEY (`id`), UNIQUE KEY `uk_word` (`word`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='IM 敏感词表';