136 lines
2.7 KiB
Markdown
136 lines
2.7 KiB
Markdown
|
|
# 后端接口 TODO 清单 - 消息聊天模块
|
|||
|
|
|
|||
|
|
## 1. 获取会话列表
|
|||
|
|
**文件**: `MessagesActivity.java`
|
|||
|
|
**接口路径**: `GET /api/conversations`
|
|||
|
|
**请求参数**:
|
|||
|
|
- userId: 当前用户ID(从token中获取)
|
|||
|
|
- page (可选): 页码
|
|||
|
|
- pageSize (可选): 每页数量
|
|||
|
|
**返回数据**:
|
|||
|
|
```json
|
|||
|
|
{
|
|||
|
|
"code": 200,
|
|||
|
|
"data": [
|
|||
|
|
{
|
|||
|
|
"id": "string",
|
|||
|
|
"title": "string",
|
|||
|
|
"lastMessage": "string",
|
|||
|
|
"timeText": "string",
|
|||
|
|
"unreadCount": "number",
|
|||
|
|
"isMuted": "boolean",
|
|||
|
|
"avatarUrl": "string"
|
|||
|
|
}
|
|||
|
|
]
|
|||
|
|
}
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
## 2. 获取会话消息列表
|
|||
|
|
**文件**: `ConversationActivity.java`
|
|||
|
|
**接口路径**: `GET /api/conversations/{conversationId}/messages`
|
|||
|
|
**请求参数**:
|
|||
|
|
- conversationId: 会话ID(路径参数)
|
|||
|
|
- page (可选): 页码
|
|||
|
|
- pageSize (可选): 每页数量,默认20
|
|||
|
|
- beforeMessageId (可选): 获取指定消息ID之前的消息
|
|||
|
|
**返回数据**:
|
|||
|
|
```json
|
|||
|
|
{
|
|||
|
|
"code": 200,
|
|||
|
|
"data": [
|
|||
|
|
{
|
|||
|
|
"messageId": "string",
|
|||
|
|
"userId": "string",
|
|||
|
|
"username": "string",
|
|||
|
|
"avatarUrl": "string",
|
|||
|
|
"message": "string",
|
|||
|
|
"timestamp": "number",
|
|||
|
|
"status": "sent|read"
|
|||
|
|
}
|
|||
|
|
]
|
|||
|
|
}
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
## 3. 发送私信消息
|
|||
|
|
**文件**: `ConversationActivity.java`
|
|||
|
|
**接口路径**: `POST /api/conversations/{conversationId}/messages`
|
|||
|
|
**请求参数**:
|
|||
|
|
```json
|
|||
|
|
{
|
|||
|
|
"conversationId": "string",
|
|||
|
|
"message": "string",
|
|||
|
|
"userId": "string"
|
|||
|
|
}
|
|||
|
|
```
|
|||
|
|
**返回数据**: 返回创建的 ChatMessage 对象
|
|||
|
|
|
|||
|
|
## 4. 删除消息
|
|||
|
|
**文件**: `ConversationActivity.java`
|
|||
|
|
**接口路径**: `DELETE /api/messages/{messageId}`
|
|||
|
|
**请求参数**: messageId (路径参数)
|
|||
|
|
**返回数据**:
|
|||
|
|
```json
|
|||
|
|
{
|
|||
|
|
"code": 200,
|
|||
|
|
"data": {
|
|||
|
|
"success": true
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
## 5. 标记会话为已读
|
|||
|
|
**文件**: `MessagesActivity.java`, `ConversationActivity.java`
|
|||
|
|
**接口路径**: `POST /api/conversations/{conversationId}/read`
|
|||
|
|
**请求参数**:
|
|||
|
|
```json
|
|||
|
|
{
|
|||
|
|
"conversationId": "string",
|
|||
|
|
"userId": "string"
|
|||
|
|
}
|
|||
|
|
```
|
|||
|
|
**返回数据**:
|
|||
|
|
```json
|
|||
|
|
{
|
|||
|
|
"code": 200,
|
|||
|
|
"data": {
|
|||
|
|
"success": true
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
## 6. 删除会话
|
|||
|
|
**文件**: `MessagesActivity.java`
|
|||
|
|
**接口路径**: `DELETE /api/conversations/{conversationId}`
|
|||
|
|
**请求参数**: conversationId (路径参数)
|
|||
|
|
**返回数据**:
|
|||
|
|
```json
|
|||
|
|
{
|
|||
|
|
"code": 200,
|
|||
|
|
"data": {
|
|||
|
|
"success": true
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
## 7. 搜索会话
|
|||
|
|
**文件**: `MessagesActivity.java`
|
|||
|
|
**接口路径**: `GET /api/conversations/search`
|
|||
|
|
**请求参数**:
|
|||
|
|
- keyword: 搜索关键词
|
|||
|
|
- userId: 当前用户ID(从token中获取)
|
|||
|
|
**返回数据**: 同获取会话列表接口
|
|||
|
|
|
|||
|
|
## 8. 获取未读消息总数
|
|||
|
|
**文件**: `MainActivity.java`
|
|||
|
|
**接口路径**: `GET /api/messages/unread/count`
|
|||
|
|
**请求参数**: userId(从token中获取)
|
|||
|
|
**返回数据**:
|
|||
|
|
```json
|
|||
|
|
{
|
|||
|
|
"code": 200,
|
|||
|
|
"data": {
|
|||
|
|
"unreadCount": "number"
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
```
|