在线客服系统实现客服群组对接单个访客-群聊消息数据库表设计-vx llike620

数据库表设计

复制代码
DROP TABLE IF EXISTS `member`;
CREATE TABLE `member` (
    `id` int(11) NOT NULL AUTO_INCREMENT,
    `name` varchar(125) NOT NULL DEFAULT '' COMMENT '账户',
    `password` varchar(50) NOT NULL DEFAULT '' COMMENT '密码,md5加密',
    `nickname` varchar(50) NOT NULL DEFAULT '' COMMENT '昵称',
    `created_at` DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
    `updated_at` DATETIME NULL DEFAULT NULL COMMENT '更新时间',
    `avator` varchar(500) NOT NULL DEFAULT '' COMMENT '头像',
    `online_status` tinyint(4) NOT NULL DEFAULT 1 COMMENT '在线状态,1在线,2离线',
    `status` tinyint(4) NOT NULL DEFAULT '0' COMMENT '开启状态,0正常,1关闭',
    `email` varchar(125) NOT NULL DEFAULT '' COMMENT '绑定邮箱',
    `tel` varchar(125) NOT NULL DEFAULT '' COMMENT '绑定手机',
    `uuid` varchar(125) NOT NULL DEFAULT '' COMMENT 'uuid',
 PRIMARY KEY (`id`) COMMENT '自增主键索引',
 UNIQUE KEY `idx_name` (`name`) COMMENT '账户唯一索引',
 KEY `idx_tel` (`tel`) COMMENT '手机号索引',
 KEY `idx_email` (`email`) COMMENT '邮箱索引',
 KEY `idx_uuid` (`uuid`) COMMENT 'uuid索引',
 KEY `idx_updated_at` (`updated_at`) COMMENT '更新时间索引'
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT '成员表';
DROP TABLE IF EXISTS `chat_group`;
CREATE TABLE chat_group (
    `id` INT NOT NULL AUTO_INCREMENT,
    `ent_id` varchar(100) NOT NULL DEFAULT ''  COMMENT '企业ID',
    `member_id` varchar(500) NOT NULL DEFAULT ''  COMMENT '成员ID',
    `group_name` VARCHAR(500) NOT NULL DEFAULT '' COMMENT '群名称',
    `uuid` VARCHAR(500) NOT NULL DEFAULT '' COMMENT '唯一ID',
    `member_type` tinyint(4) NOT NULL DEFAULT 2 COMMENT '成员类型,1管理,2成员',
    `unread` int(11) NOT NULL DEFAULT '0' COMMENT '未读消息数',
    `created_at` DATETIME DEFAULT CURRENT_TIMESTAMP,
    PRIMARY KEY (`id`),
    KEY `uuid` (`uuid`)  COMMENT '唯一ID索引',
    KEY `member_id` (`member_id`)  COMMENT '成员ID索引',
    KEY `ent_id` (`ent_id`)  COMMENT '企业ID索引'
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT '聊天群(写扩散)';
DROP TABLE IF EXISTS `group_member`;
CREATE TABLE group_member (
    `id` INT NOT NULL AUTO_INCREMENT,
    `ent_id` varchar(100) NOT NULL DEFAULT ''  COMMENT '企业ID',
    `member_id` varchar(500) NOT NULL DEFAULT ''  COMMENT '成员ID',
    `member_name` varchar(500) NOT NULL DEFAULT ''  COMMENT '成员名称',
    `member_avatar` varchar(500) NOT NULL DEFAULT ''  COMMENT '成员头像',
    `group_id` VARCHAR(500) NOT NULL DEFAULT '' COMMENT '群ID',
    `member_type` tinyint(4) NOT NULL DEFAULT 2 COMMENT '成员类型,1管理,2成员',
    `created_at` DATETIME DEFAULT CURRENT_TIMESTAMP,
    PRIMARY KEY (`id`),
    KEY `group_id` (`group_id`)  COMMENT '群ID索引',
    KEY `member_id` (`member_id`)  COMMENT '成员ID索引',
    KEY `ent_id` (`ent_id`)  COMMENT '企业ID索引'
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT '聊天群成员(写扩散)';
DROP TABLE IF EXISTS `group_message`;
CREATE TABLE group_message (
    `id` INT NOT NULL AUTO_INCREMENT,
    `ent_id` varchar(100) NOT NULL DEFAULT ''  COMMENT '企业ID',
    `sender` varchar(500) NOT NULL DEFAULT ''  COMMENT '发送成员ID',
    `sender_name` varchar(500) NOT NULL DEFAULT ''  COMMENT '发送成员名称',
    `sender_avatar` varchar(500) NOT NULL DEFAULT ''  COMMENT '发送成员头像',
    `group_id` VARCHAR(500) NOT NULL DEFAULT '' COMMENT '群ID',
    `message_type` tinyint(4) NOT NULL DEFAULT 1 COMMENT '消息类型,1消息,2通知',
    `message_content` TEXT DEFAULT NULL COMMENT '消息内容',
    `created_at` DATETIME DEFAULT CURRENT_TIMESTAMP,
    PRIMARY KEY (`id`),
    KEY `group_id` (`group_id`)  COMMENT '群ID索引',
    KEY `sender` (`sender`)  COMMENT '发送成员ID索引',
    KEY `ent_id` (`ent_id`)  COMMENT '企业ID索引'
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT '聊天群消息(读扩散)';
复制代码

适当数据冗余,实现都扩散和写扩散的结合

 

posted @   唯一客服系统开发笔记  阅读(25)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· AI技术革命,工作效率10个最佳AI工具
历史上的今天:
2022-11-18 javascript中js实现导出CSV文件功能
2022-11-18 javascript中js实现类似PHP的trim()函数效果
2022-11-18 在线客服系统源码开发实战总结:Golang实现CMS内容管理增删查改功能
2019-11-18 [Go] 使用go mod安装beego
2017-11-18 [编程] C语言的结构体
点击右上角即可分享
微信分享提示
1
chat with us