mahjong_group/docs/1.0.0/历史需求/后台-站内信管理使用说明.md
2026-01-01 14:39:23 +08:00

183 lines
5.1 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# 后台站内信管理使用说明
## 功能概述
后台站内信管理系统用于管理员向用户发送系统通知和查看消息记录。
---
## 访问路径
后台管理系统 → SQ管理 → 站内信管理
或直接访问:`/views/sq/sqmessage/index.html`
---
## 主要功能
### 1. 查看消息列表
**位置**:消息管理首页
**功能说明**
- 显示所有已发送的消息记录
- 支持按条件筛选:
- 消息ID精确查询
- 消息标题:模糊搜索
- 目标类型:指定用户 / 全员广播
- 消息类型:系统通知 / 私信
**列表字段**
- ID消息唯一标识
- 消息标题:显示消息主题
- 目标类型:
- 🔵 指定用户:发送给特定用户
- 🟠 全员广播:发送给所有用户
- 消息类型:
- 🔵 系统通知:自动触发或手动发送的通知
- 🟢 私信:一对一消息
- 接收用户ID如果是指定用户消息显示用户ID
- 创建时间:消息发送时间
---
### 2. 发送全员广播
**位置**:消息列表页 → 点击"发送全员广播"按钮
**操作步骤**
1. 点击页面顶部的"发送全员广播"按钮
2. 在弹出窗口中填写:
- **消息标题**必填最多200字
- **消息内容**(必填,支持换行)
3. 检查无误后,点击"立即发送"
4. 系统会将消息发送给所有用户
5. 用户在前端"我的消息"中可以看到
**注意事项**
- ⚠️ 全员广播会发送给**所有注册用户**,请谨慎操作
- 消息发送后无法撤回,但可以删除记录
- 建议发送前仔细检查标题和内容
---
### 3. 查看消息详情
**位置**:消息列表 → 操作列 → 点击"查看"
**详情信息**
- 消息ID
- 目标类型(指定用户/全员广播)
- 消息类型(系统通知/私信)
- 接收用户ID如果是指定用户消息
- 消息标题
- 消息内容(完整显示)
- 是否已读(对指定用户消息有效)
- 关联业务信息(如果是业务触发的消息)
- 创建时间
- 更新时间
---
### 4. 删除消息
**位置**:消息列表 → 操作列 → 点击"删除"
**删除方式**
1. **单条删除**:点击单条记录的"删除"按钮
2. **批量删除**:勾选多条记录,点击"批量删除"按钮
**注意事项**
- ⚠️ 删除后无法恢复
- 删除后台记录不影响用户端已收到的消息
- 建议只删除测试消息或错误消息
---
## 使用场景
### 场景1系统维护通知
**操作**:发送全员广播
**示例内容**
```
标题:系统维护通知
内容:
尊敬的用户:
系统将于今晚22:00-23:00进行维护升级届时将无法正常使用。
请提前做好安排,感谢您的理解与支持!
```
### 场景2活动公告
**操作**:发送全员广播
**示例内容**
```
标题:周末特惠活动开启
内容:
本周末12月9-10日全场房间8折优惠
快邀请好友一起来玩吧!
活动详情请查看活动页面。
```
### 场景3查看自动通知记录
**操作**:筛选查看
**步骤**
1. 在"消息类型"中选择"系统通知"
2. 点击"筛选"按钮
3. 查看所有自动触发的通知记录(如组局成功/失败)
---
## 常见问题
### Q1发送全员广播后用户什么时候能看到
**A**:消息立即发送,用户打开"我的消息"页面即可看到。
### Q2如何发送给指定用户
**A**目前后台页面只提供全员广播功能。如需发送给指定用户可以通过API接口调用
- 接口:`POST /api/SQMessage/SendToUser`
- 参数:`userId`, `title`, `content`, `messageType`
### Q3消息可以编辑吗
**A**:已发送的消息无法编辑,只能查看或删除。如需修改,请删除后重新发送。
### Q4如何查看某条消息有多少人已读
**A**
- 全员广播:目前无法直接查看,需要在数据库中查询 `SQMessageRead`
- 指定用户消息:在详情页可以看到是否已读
### Q5自动发送的消息能看到吗
**A**:可以。所有消息(包括自动发送的)都会显示在列表中。可以通过"消息类型"=系统通知来筛选。
---
## 技术说明
### 数据库表
- `SQMessage`:消息主表,存储所有消息
- `SQMessageRead`:已读记录表,记录全员广播的已读状态
### 消息类型说明
- **target_type = 0**:指定用户消息
- **target_type = 1**:全员广播
- **message_type = 0**:系统通知(自动发送)
- **message_type = 1**:私信(手动发送)
### 自动触发消息
以下场景会自动发送站内信:
1. 组局成功:通知所有参与人
2. 组局失败:通知所有参与人
3. 其他业务事件(可扩展)
---
## 页面功能对照表
| 页面文件 | 功能 | 说明 |
|---------|------|------|
| `index.html` | 消息列表 | 查看、筛选、删除消息,入口页面 |
| `broadcast.html` | 发送全员广播 | 填写标题和内容,发送给所有用户 |
| `details.html` | 消息详情 | 查看消息的完整信息 |
---
## 更新日志
- **2025-12-07**:初始版本发布,包含基础的消息管理和全员广播功能