# 仪表板接口文档 ## 接口概述 本文档描述了管理后台仪表板数据获取接口的详细信息。 ## 接口详情 ### 获取仪表板数据 **接口地址:** `GET /api/v1/admin/dashboard` **接口描述:** 获取管理后台仪表板的统计数据、最近活动和系统信息 **请求方式:** GET **认证方式:** Bearer Token #### 请求头 ``` Authorization: Bearer {token} Content-Type: application/json ``` #### 请求参数 无 #### 响应格式 **成功响应 (200)** ```json { "success": true, "code": 200, "message": "获取成功", "data": { "statistics": { "totalUsers": 0, "totalAnimals": 0, "totalTravels": 0, "totalClaims": 0, "todayNewUsers": 0, "todayNewAnimals": 0, "todayNewTravels": 0, "todayNewClaims": 0 }, "recentActivities": [], "systemInfo": { "serverTime": "2025-09-21T14:58:00.554Z", "uptime": "0小时0分钟", "version": "1.0.0", "environment": "development" } } } ``` **错误响应 (401)** ```json { "success": false, "code": 401, "message": "无效的认证token" } ``` #### 响应字段说明 ##### statistics 统计数据 | 字段名 | 类型 | 描述 | |--------|------|------| | totalUsers | number | 用户总数 | | totalAnimals | number | 动物总数 | | totalTravels | number | 旅行总数 | | totalClaims | number | 认领总数 | | todayNewUsers | number | 今日新增用户数 | | todayNewAnimals | number | 今日新增动物数 | | todayNewTravels | number | 今日新增旅行数 | | todayNewClaims | number | 今日新增认领数 | ##### recentActivities 最近活动 | 字段名 | 类型 | 描述 | |--------|------|------| | id | number | 活动ID | | type | string | 活动类型 | | description | string | 活动描述 | | user | object | 相关用户信息 | | timestamp | string | 活动时间 | ##### systemInfo 系统信息 | 字段名 | 类型 | 描述 | |--------|------|------| | serverTime | string | 服务器当前时间 | | uptime | string | 服务器运行时间 | | version | string | 系统版本 | | environment | string | 运行环境 | #### 错误码说明 | 错误码 | 描述 | |--------|------| | 401 | 未授权,token无效或已过期 | | 403 | 权限不足 | | 500 | 服务器内部错误 | ## OpenAPI 3.0 规范 ```yaml openapi: 3.0.0 info: title: 仪表板接口 version: 1.0.0 description: 管理后台仪表板数据接口 paths: /api/v1/admin/dashboard: get: summary: 获取仪表板数据 tags: - Admin Dashboard security: - bearerAuth: [] responses: '200': description: 获取成功 content: application/json: schema: type: object properties: success: type: boolean example: true code: type: integer example: 200 message: type: string example: "获取成功" data: type: object properties: statistics: type: object properties: totalUsers: type: integer description: 用户总数 totalAnimals: type: integer description: 动物总数 totalTravels: type: integer description: 旅行总数 totalClaims: type: integer description: 认领总数 todayNewUsers: type: integer description: 今日新增用户数 todayNewAnimals: type: integer description: 今日新增动物数 todayNewTravels: type: integer description: 今日新增旅行数 todayNewClaims: type: integer description: 今日新增认领数 recentActivities: type: array items: type: object properties: id: type: integer type: type: string description: type: string user: type: object timestamp: type: string format: date-time systemInfo: type: object properties: serverTime: type: string format: date-time uptime: type: string version: type: string environment: type: string '401': description: 未授权 content: application/json: schema: type: object properties: success: type: boolean example: false code: type: integer example: 401 message: type: string example: "无效的认证token" components: securitySchemes: bearerAuth: type: http scheme: bearer bearerFormat: JWT ``` ## 测试示例 ### 使用 curl 测试 1. 首先登录获取token: ```bash curl -X POST http://localhost:3200/api/v1/admin/login \ -H "Content-Type: application/json" \ -d '{"username":"admin","password":"admin123"}' ``` 2. 使用token访问仪表板接口: ```bash curl -X GET http://localhost:3200/api/v1/admin/dashboard \ -H "Authorization: Bearer {your_token_here}" ``` ### 默认管理员账户 - 用户名:admin - 密码:admin123 ## 注意事项 1. 所有请求必须携带有效的JWT token 2. token有效期为24小时 3. 统计数据实时计算,可能会有轻微延迟 4. 最近活动默认显示最新的10条记录 5. 系统信息包含服务器运行状态和环境信息