Appearance
UserMessageRelation
概述
UserMessageRelation 表示用户与公告/系统消息之间的关系,用于记录消息的投递状态与已读状态。
业务含义
该模型用于描述:
- 某条消息是否投递给某个用户
- 消息的投递方式
- 用户是否已读该消息
- 用户的已读时间
适用于:
- 公告消息
- 系统消息
- 广播消息与定向消息的关系管理
字段定义
| 字段名 | 类型 | 必填 | 默认值 | 说明 | 状态值枚举 |
|---|---|---|---|---|---|
relationId | string | 是 | - | 关系 ID | - |
userId | string | 是 | - | 用户 ID | - |
messageId | string | 是 | - | 消息 ID | - |
deliveryType | enum | 是 | direct | 投递类型 | direct, broadcast |
readStatus | enum | 是 | unread | 已读状态 | unread, read |
readAt | datetime | 否 | null | 已读时间 | - |
createdAt | datetime | 是 | 当前时间 | 创建时间 | - |
枚举说明
deliveryType
direct:定向投递broadcast:广播投递
readStatus
unread:未读read:已读
设计说明
relationId用于唯一标识一条用户消息关系记录。userId与messageId共同关联用户和消息主体。deliveryType用于区分消息是单用户定向发送还是面向多用户广播。readStatus用于标记用户对消息的阅读状态。readAt仅在消息已读后有值,未读时通常为null。createdAt用于记录关系创建时间,便于后续审计与查询。
典型用途
- 用户消息中心已读/未读管理
- 系统公告投递记录追踪
- 广播消息触达关系落库
- 消息阅读行为统计
