41 lines
2.2 KiB
MySQL
41 lines
2.2 KiB
MySQL
|
|
-- 私聊会话表
|
||
|
|
CREATE TABLE IF NOT EXISTS `eb_conversation` (
|
||
|
|
`id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '会话ID',
|
||
|
|
`user1_id` int(11) NOT NULL COMMENT '用户1的ID',
|
||
|
|
`user2_id` int(11) NOT NULL COMMENT '用户2的ID',
|
||
|
|
`last_message` varchar(500) DEFAULT '' COMMENT '最后一条消息内容',
|
||
|
|
`last_message_time` datetime DEFAULT NULL COMMENT '最后一条消息时间',
|
||
|
|
`user1_unread_count` int(11) DEFAULT 0 COMMENT '用户1的未读数量',
|
||
|
|
`user2_unread_count` int(11) DEFAULT 0 COMMENT '用户2的未读数量',
|
||
|
|
`user1_deleted` tinyint(1) DEFAULT 0 COMMENT '用户1是否删除会话',
|
||
|
|
`user2_deleted` tinyint(1) DEFAULT 0 COMMENT '用户2是否删除会话',
|
||
|
|
`user1_muted` tinyint(1) DEFAULT 0 COMMENT '用户1是否静音',
|
||
|
|
`user2_muted` tinyint(1) DEFAULT 0 COMMENT '用户2是否静音',
|
||
|
|
`create_time` datetime DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
|
||
|
|
`update_time` datetime DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
|
||
|
|
PRIMARY KEY (`id`),
|
||
|
|
KEY `idx_user1_id` (`user1_id`),
|
||
|
|
KEY `idx_user2_id` (`user2_id`),
|
||
|
|
KEY `idx_last_message_time` (`last_message_time`)
|
||
|
|
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='私聊会话表';
|
||
|
|
|
||
|
|
-- 私信消息表
|
||
|
|
CREATE TABLE IF NOT EXISTS `eb_private_message` (
|
||
|
|
`id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '消息ID',
|
||
|
|
`conversation_id` bigint(20) NOT NULL COMMENT '会话ID',
|
||
|
|
`sender_id` int(11) NOT NULL COMMENT '发送者用户ID',
|
||
|
|
`receiver_id` int(11) NOT NULL COMMENT '接收者用户ID',
|
||
|
|
`content` text COMMENT '消息内容',
|
||
|
|
`message_type` varchar(20) DEFAULT 'text' COMMENT '消息类型: text, image, file',
|
||
|
|
`status` varchar(20) DEFAULT 'sent' COMMENT '消息状态: sending, sent, read',
|
||
|
|
`sender_deleted` tinyint(1) DEFAULT 0 COMMENT '发送者是否删除',
|
||
|
|
`receiver_deleted` tinyint(1) DEFAULT 0 COMMENT '接收者是否删除',
|
||
|
|
`create_time` datetime DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
|
||
|
|
`read_time` datetime DEFAULT NULL COMMENT '已读时间',
|
||
|
|
PRIMARY KEY (`id`),
|
||
|
|
KEY `idx_conversation_id` (`conversation_id`),
|
||
|
|
KEY `idx_sender_id` (`sender_id`),
|
||
|
|
KEY `idx_receiver_id` (`receiver_id`),
|
||
|
|
KEY `idx_create_time` (`create_time`)
|
||
|
|
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='私信消息表';
|