智慧教务系统
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.
 
 
 
 
 
 

6.0 KiB

school_sys_notice_log 表文档

表概述

表名: school_sys_notice_log
功能: 系统通知日志表,用于记录系统发送的各类通知消息的详细信息,包括短信、微信等多渠道通知,支持消息追踪、用户行为统计和发送结果监控,为学校提供完整的通知管理和数据分析功能

字段说明

Field	Type	Collation	Null	Key	Default	Extra	Privileges	Comment
id	int unsigned	NULL	NO	PRI	NULL	auto_increment	select,insert,update,references	通知记录ID
key	varchar(255)	utf8mb4_general_ci	YES				select,insert,update,references	消息key
notice_type	varchar(50)	utf8mb4_general_ci	YES		sms		select,insert,update,references	消息类型(sms,wechat.weapp)
uid	int unsigned	NULL	NO		0		select,insert,update,references	通知的用户id
member_id	int	NULL	NO		0		select,insert,update,references	消息的会员id
nickname	varchar(255)	utf8mb4_general_ci	NO				select,insert,update,references	接收人用户昵称或姓名
receiver	varchar(255)	utf8mb4_general_ci	NO				select,insert,update,references	接收人(对应手机号,openid)
content	text	utf8mb4_general_ci	YES		NULL		select,insert,update,references	消息数据
is_click	tinyint unsigned	NULL	NO		0		select,insert,update,references	点击次数
is_visit	tinyint unsigned	NULL	NO		0		select,insert,update,references	访问次数
visit_time	int	NULL	NO		0		select,insert,update,references	访问时间
create_time	int unsigned	NULL	NO		0		select,insert,update,references	消息时间
result	varchar(1000)	utf8mb4_general_ci	NO				select,insert,update,references	结果
params	text	utf8mb4_general_ci	YES		NULL		select,insert,update,references	

功能用途

主要功能

  • 通知记录管理: 记录系统发送的各类通知消息的详细信息
  • 多渠道支持: 支持短信(sms)、微信小程序(wechat.weapp)等多种通知渠道
  • 用户关联: 关联系统用户和会员,支持精准的消息推送
  • 消息追踪: 跟踪消息的点击次数、访问次数等用户行为数据
  • 发送结果: 记录消息发送的结果状态,便于监控和统计
  • 内容存档: 完整保存通知内容和发送参数,便于审计和查询
  • 接收人管理: 记录接收人的昵称和联系方式(手机号/openid)
  • 消息分类: 通过key字段对不同类型的消息进行分类管理
  • 时间追踪: 记录消息创建时间和用户访问时间

业务场景

  • 课程通知: 发送上课提醒、课程变更、请假通知等
  • 缴费提醒: 发送学费到期、缴费成功、欠费提醒等
  • 考试通知: 发送考试安排、成绩发布、补考通知等
  • 活动推广: 发送营销活动、优惠信息、新课程推荐等
  • 系统公告: 发送系统维护、政策变更、重要通知等
  • 生日祝福: 发送生日祝福、节日问候、纪念日提醒等
  • 考勤提醒: 发送考勤异常、迟到提醒、请假审批等
  • 服务提醒: 发送服务到期、续费提醒、客服回访等
  • 紧急通知: 发送紧急停课、安全提醒、突发事件等
  • 互动消息: 发送评价邀请、问卷调查、反馈收集等

关联关系

主要关联表

  • school_sys_user: 系统用户表 (uid外键关联)
  • school_member: 会员表 (member_id外键关联)
  • school_sys_notice: 系统通知配置表 (key字段关联)
  • school_personnel: 人员表 (通过receiver关联)
  • school_student: 学员表 (通过receiver关联)
  • school_course: 课程表 (课程相关通知)
  • school_pay: 支付表 (支付相关通知)
  • school_campus: 校区表 (校区相关通知)

关联说明

  • 用户关联: uid关联school_sys_user表,确定通知的系统用户
  • 会员关联: member_id关联school_member表,确定通知的会员用户
  • 配置关联: key字段关联school_sys_notice表的通知配置
  • 接收人关联: receiver字段存储手机号或openid,关联具体接收人
  • 业务关联: 根据通知类型关联相应的业务表(课程、支付等)
  • 渠道关联: notice_type字段确定通知发送的具体渠道

索引建议

-- 主键索引(自动创建)
PRIMARY KEY (id)

-- 用户ID索引(用于查询用户通知记录)
INDEX idx_uid (uid)

-- 会员ID索引(用于查询会员通知记录)
INDEX idx_member_id (member_id)

-- 消息key索引(用于按消息类型查询)
INDEX idx_key (key)

-- 通知类型索引(用于按渠道查询)
INDEX idx_notice_type (notice_type)

-- 接收人索引(用于查询接收人记录)
INDEX idx_receiver (receiver)

-- 创建时间索引(用于按时间查询)
INDEX idx_create_time (create_time)

-- 访问时间索引(用于统计分析)
INDEX idx_visit_time (visit_time)

-- 复合索引(用于统计查询)
INDEX idx_uid_notice_type_time (uid, notice_type, create_time)
INDEX idx_member_key_time (member_id, key, create_time)
INDEX idx_receiver_notice_type (receiver, notice_type)

注意事项

  • 用户标识: uid和member_id不能同时为0,至少要有一个有效的用户标识
  • 接收人格式: receiver字段根据notice_type存储不同格式的接收人标识
  • 消息内容: content字段可能包含敏感信息,需要注意数据安全
  • 点击统计: is_click和is_visit字段用于统计用户行为,需要准确记录
  • 时间一致性: create_time和visit_time需要保证时间的准确性
  • 结果记录: result字段应详细记录发送结果,便于问题排查
  • 参数安全: params字段可能包含敏感参数,需要加密存储
  • 数据清理: 定期清理过期的通知记录,控制数据量增长
  • 性能优化: 大量通知记录查询时需要考虑分页和缓存
  • 监控告警: 建立通知发送失败率的监控和告警机制
  • 权限控制: 通知记录查询需要严格的权限控制
  • 数据备份: 重要通知记录需要定期备份
  • 统计分析: 利用点击和访问数据进行用户行为分析
  • 渠道管理: 不同通知渠道的处理逻辑需要区分管理
  • 消息去重: 避免重复发送相同的通知消息