You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
5.0 KiB
5.0 KiB
school_chat_friends 表文档
表概述
表名: school_chat_friends
功能: 聊天好友关系管理表,用于管理员工与学生客户资源之间的聊天关系和消息状态
字段说明
Field Type Collation Null Key Default Extra Privileges Comment
id int unsigned NULL NO PRI NULL auto_increment select,insert,update,references
personnel_id int NULL NO NULL select,insert,update,references 员工人力资源表id
customer_resources_id int NULL NO NULL select,insert,update,references 学生资源表id
unread_count_personnel int NULL NO 0 select,insert,update,references 员工未读消息数量|默认0
unread_count_customer_resources int NULL NO 0 select,insert,update,references 学生端未读消息数量|默认0
created_at timestamp NULL YES CURRENT_TIMESTAMP DEFAULT_GENERATED select,insert,update,references 添加时间
updated_at timestamp NULL YES CURRENT_TIMESTAMP DEFAULT_GENERATED on update CURRENT_TIMESTAMP select,insert,update,references 更新时间
delete_time int NULL NO 0 select,insert,update,references 逻辑删除时间
功能用途
主要功能
- 好友关系管理: 建立和维护员工与学生客户之间的聊天关系
- 消息状态跟踪: 分别跟踪员工端和学生端的未读消息数量
- 聊天会话管理: 管理一对一的聊天会话和对话历史
- 消息计数器: 实时更新双方的未读消息统计
- 关系状态维护: 维护聊天关系的有效性和活跃状态
- 消息提醒: 支持基于未读消息数量的提醒功能
- 会话列表: 为聊天应用提供好友列表和会话列表
- 消息同步: 确保双方消息状态的同步更新
- 关系删除: 支持聊天关系的逻辑删除和恢复
业务场景
- 客户咨询: 学生客户向销售或客服人员进行课程咨询
- 学习指导: 教师与学员进行一对一的学习指导和答疑
- 课程服务: 班主任与学员进行课程安排和学习跟进
- 售后服务: 客服人员处理学员的投诉和建议
- 招生沟通: 招生顾问与潜在客户进行招生宣传和答疑
- 家长沟通: 教师与学员家长进行学习情况沟通
- 紧急通知: 学校向学员发送紧急通知和重要信息
- 作业辅导: 教师为学员提供课后作业指导
- 考试答疑: 考前为学员提供专门的答疑服务
关联关系
主要关联表
school_personnel: 人员表(员工信息)school_customer_resources: 客户资源表(学生客户信息)school_chat_messages: 聊天消息表(具体的聊天消息)school_member: 会员表(正式学员信息)school_sys_user: 系统用户表(用户登录信息)school_course: 课程表(相关课程信息)school_class: 班级表(班级关联信息)school_campus: 校区表(所属校区)
关联说明
- 员工关联: personnel_id关联到school_personnel表的员工信息
- 客户关联: customer_resources_id关联到客户资源表
- 消息关联: 与聊天消息表形成一对多关系
- 用户关联: 通过人员和客户资源关联到系统用户
- 业务关联: 可能关联到具体的课程、班级等业务对象
- 校区关联: 通过人员和客户资源间接关联到校区
- 时间关联: 记录关系建立和更新的时间信息
索引建议
- 主键索引: id(已存在)
- 外键索引:
- personnel_id(员工查询)
- customer_resources_id(客户查询)
- 复合索引:
- (personnel_id, customer_resources_id)(唯一好友关系)
- (personnel_id, delete_time)(员工有效关系查询)
- (customer_resources_id, delete_time)(客户有效关系查询)
- 时间索引:
- created_at(创建时间查询)
- updated_at(更新时间查询)
- 状态索引: delete_time(逻辑删除查询)
- 消息统计索引:
- unread_count_personnel(员工未读消息)
- unread_count_customer_resources(客户未读消息)
注意事项
- 唯一性约束: 确保同一员工与同一客户只能有一个有效的聊天关系
- 消息计数准确性: 保证未读消息计数的准确性和实时性
- 逻辑删除: 使用delete_time字段进行逻辑删除,保留历史记录
- 权限控制: 严格控制聊天关系的建立和访问权限
- 数据同步: 确保消息状态与实际聊天记录的同步
- 性能优化: 大量聊天关系时需要优化查询性能
- 消息清理: 定期清理过期的聊天关系和消息记录
- 隐私保护: 保护聊天关系和消息内容的隐私安全
- 并发控制: 处理消息计数更新时的并发问题
- 关系恢复: 支持已删除聊天关系的恢复功能
- 监控告警: 监控异常的聊天行为和消息量
- 备份策略: 重要的聊天关系数据需要定期备份
- 消息推送: 基于未读消息数量进行消息推送
- 会话管理: 合理管理长期不活跃的聊天会话
- 数据迁移: 支持聊天关系数据的迁移和同步