添加链接管理功能,包括路由配置、权限设置和在管理布局中显示链接管理菜单项
This commit is contained in:
182
README_LINKS.md
Normal file
182
README_LINKS.md
Normal file
@@ -0,0 +1,182 @@
|
||||
# 链接管理功能
|
||||
|
||||
## 功能概述
|
||||
|
||||
链接管理页面提供了批量生成链接的功能,支持设置生成次数和每次生成的链接数量。根据您提供的API接口,系统会调用 `POST /api/link/generate` 接口来生成链接。
|
||||
|
||||
## 主要功能
|
||||
|
||||
### 1. 批量生成链接
|
||||
- **生成次数**: 1-100次
|
||||
- **每次链接数量**: 1-50个
|
||||
- 支持表单验证
|
||||
- 生成成功后自动刷新列表
|
||||
|
||||
### 2. 链接列表管理
|
||||
- 分页显示已生成的链接批次
|
||||
- 显示批次ID、机器编号、扣除积分、过期时间
|
||||
- 支持查看、删除操作
|
||||
- 根据过期时间自动判断链接状态
|
||||
- 支持导出CSV数据
|
||||
|
||||
### 3. 二维码功能
|
||||
- 根据机器编号生成对应的链接二维码
|
||||
- 支持下载二维码图片
|
||||
- 使用在线二维码生成服务
|
||||
- 自动生成游戏链接地址
|
||||
|
||||
### 4. 权限控制
|
||||
- 管理员:拥有所有权限(生成、查看、删除、导出)
|
||||
- 代理商:只有查看权限
|
||||
|
||||
## API接口
|
||||
|
||||
### 生成链接
|
||||
```http
|
||||
POST /api/link/generate
|
||||
Authorization: Bearer {token}
|
||||
Content-Type: application/json
|
||||
|
||||
{
|
||||
"times": 10, // 生成次数
|
||||
"linkCount": 5 // 每次链接数量
|
||||
}
|
||||
```
|
||||
|
||||
**返回数据示例:**
|
||||
```json
|
||||
{
|
||||
"batchId": 6,
|
||||
"deductPoints": 50,
|
||||
"expireAt": "2025-08-26T12:29:13.63955",
|
||||
"codeNos": [
|
||||
"X3T9ND84"
|
||||
]
|
||||
}
|
||||
```
|
||||
|
||||
### 获取链接列表
|
||||
```http
|
||||
GET /api/link/list?page=1&pageSize=20
|
||||
Authorization: Bearer {token}
|
||||
```
|
||||
|
||||
### 删除链接
|
||||
```http
|
||||
DELETE /api/link/{id}
|
||||
Authorization: Bearer {token}
|
||||
```
|
||||
|
||||
## 页面路由
|
||||
|
||||
- **路径**: `/links`
|
||||
- **名称**: `Links`
|
||||
- **权限**: `LINK_VIEW`
|
||||
|
||||
## 文件结构
|
||||
|
||||
```
|
||||
src/
|
||||
├── api/
|
||||
│ └── links.js # 链接相关API接口
|
||||
├── views/links/
|
||||
│ └── LinkGenerate.vue # 链接生成页面
|
||||
├── utils/
|
||||
│ └── links.js # 链接管理工具函数
|
||||
├── config/
|
||||
│ └── links.js # 链接管理配置文件
|
||||
├── router/
|
||||
│ └── index.js # 路由配置(已更新)
|
||||
├── layouts/
|
||||
│ └── AdminLayout.vue # 导航菜单(已更新)
|
||||
└── utils/
|
||||
└── permission.js # 权限配置(已更新)
|
||||
```
|
||||
|
||||
## 使用说明
|
||||
|
||||
### 1. 生成链接
|
||||
1. 在"生成次数"输入框中输入要生成的次数(1-100)
|
||||
2. 在"每次链接数量"输入框中输入每次生成的链接数量(1-50)
|
||||
3. 点击"开始生成"按钮
|
||||
4. 系统会调用API生成链接,成功后显示提示信息
|
||||
|
||||
### 2. 管理链接
|
||||
- 查看已生成的链接列表
|
||||
- 点击"查看二维码"查看链接对应的二维码
|
||||
- 点击"删除"删除不需要的链接
|
||||
- 使用"导出CSV"功能导出链接数据
|
||||
|
||||
### 3. 权限说明
|
||||
- 管理员可以执行所有操作
|
||||
- 代理商只能查看链接列表,无法生成或删除链接
|
||||
|
||||
## 注意事项
|
||||
|
||||
1. **API地址**: 确保后端API地址配置正确(当前配置为 `http://localhost:18080`)
|
||||
2. **认证**: 需要有效的Bearer Token才能访问API
|
||||
3. **二维码**: 使用在线二维码生成服务,确保网络连接正常
|
||||
4. **批量限制**: 单次最多生成50个链接,避免API压力过大
|
||||
5. **链接地址**: 系统会自动根据机器编号生成游戏链接地址,格式为 `https://yourdomain.com/play?code={机器编号}`
|
||||
6. **状态判断**: 链接状态根据过期时间自动判断(正常/即将过期/已过期)
|
||||
7. **配置自定义**: 可以在 `src/config/links.js` 中自定义链接地址生成规则和状态配置
|
||||
|
||||
## 配置说明
|
||||
|
||||
### 链接地址配置 (`src/config/links.js`)
|
||||
|
||||
```javascript
|
||||
export const LINK_CONFIG = {
|
||||
// 基础域名
|
||||
BASE_URL: 'https://yourdomain.com',
|
||||
|
||||
// 游戏页面路径
|
||||
GAME_PATH: '/play',
|
||||
|
||||
// 机器编号参数名
|
||||
CODE_PARAM: 'code',
|
||||
|
||||
// 链接地址模板
|
||||
getLinkUrl: (codeNo) => {
|
||||
return `${LINK_CONFIG.BASE_URL}${LINK_CONFIG.GAME_PATH}?${LINK_CONFIG.CODE_PARAM}=${codeNo}`
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
### 状态配置
|
||||
|
||||
```javascript
|
||||
export const STATUS_CONFIG = {
|
||||
// 状态标签类型
|
||||
LABEL_TYPES: {
|
||||
NORMAL: 'success', // 正常
|
||||
EXPIRING: 'warning', // 即将过期
|
||||
EXPIRED: 'danger', // 已过期
|
||||
UNKNOWN: 'info' // 未知
|
||||
},
|
||||
|
||||
// 过期时间阈值(毫秒)
|
||||
EXPIRING_THRESHOLD: 24 * 60 * 60 * 1000, // 24小时
|
||||
}
|
||||
```
|
||||
|
||||
## 扩展功能
|
||||
|
||||
可以根据需要添加以下功能:
|
||||
- 链接状态切换(启用/禁用)
|
||||
- 链接过期时间设置
|
||||
- 链接使用统计
|
||||
- 自定义链接模板
|
||||
- 批量操作(批量删除、批量导出等)
|
||||
- 链接访问统计和监控
|
||||
|
||||
## 技术特点
|
||||
|
||||
- 使用Vue 3 Composition API
|
||||
- Element Plus UI组件库
|
||||
- 响应式设计
|
||||
- 权限控制集成
|
||||
- 错误处理和用户提示
|
||||
- 支持CSV导出
|
||||
|
||||
|
||||
Reference in New Issue
Block a user