课程笔记,包括理论和代码实践部分。理论部分参考了Lab的wiki。
图例:
-
✅ : 已实现
-
❌ : 未实现
-
⚠️ : 部分实现或存在差异 (已在备注说明)
-
📱 : 仅移动端/小程序功能 (管理端无需实现)
| 模块 | API 路径 (Base: /api) |
方法 | 描述 | 后端 (Scenery_backend) | 前端 (Attraction-Web) | 备注 |
|---|---|---|---|---|---|---|
| 认证 | /auth/adminLogin |
POST | 管理员登录 | ✅ | ✅ | 前端原为 /admin/login,已修正 |
/auth/login |
POST | 游客/用户登录 | ✅ | 📱 | ||
/auth/register |
POST | 用户注册 | ✅ | 📱 | ||
/auth/bindPhone |
POST | 绑定手机号 | ✅ | 📱 | ||
/auth/logout |
POST | 退出登录 | ❌ | ✅ | 后端缺失,前端已定义 | |
| 内容 | /public/introduction |
GET | 获取简介 | ✅ | ✅ | 前端原为 /intro,已修正 |
/intro |
PUT | 更新简介 | ❌ | ✅ | 后端只有 GET,无 PUT | |
/activity |
GET | 获取活动说明 | ❌ | ✅ | ||
/activity |
PUT | 更新活动说明 | ❌ | ✅ | ||
/hotline |
GET | 获取客服热线 | ❌ | ✅ | ||
/hotline |
PUT | 更新客服热线 | ❌ | ✅ | ||
| 景点 (POI) | /admin/spots |
GET | 获取景点列表 (管理) | ✅ | ✅ | 前端原为 /admin/pois,已修正 |
/admin/spots |
POST | 创建景点 | ✅ | ✅ | ||
/admin/spots/{id} |
PUT | 更新景点 | ✅ | ✅ | ||
/admin/spots/{id} |
DELETE | 删除景点 | ✅ | ✅ | ||
/admin/spots/{id} |
GET | 获取单个景点详情 | ❌ | ✅ | 后端 AdminController 只有列表,无详情接口 | |
/public/spots |
GET | 获取景点列表 (公开) | ✅ | 📱 | ||
/public/nearby |
GET | 附近景点 | ✅ | 📱 | ||
| 商家 | /admin/merchants |
GET | 获取商家列表 | ❌ | ✅ | |
/admin/merchants/{id} |
GET | 获取商家详情 | ❌ | ✅ | ||
/admin/merchants |
POST | 创建商家 | ❌ | ✅ | ||
/admin/merchants/{id} |
PUT | 更新商家 | ❌ | ✅ | ||
/admin/merchants/{id} |
DELETE | 删除商家 | ❌ | ✅ | ||
| 营销 (礼品) | /prize/list |
GET | 获取礼品列表 | ✅ | ✅ | 前端原为 /admin/gifts,已修正 |
/admin/gifts |
POST | 创建礼品 | ❌ | ✅ | 后端仅有查看和兑换,无管理增删改 | |
/admin/gifts/{id} |
PUT | 更新礼品 | ❌ | ✅ | ||
/admin/gifts/{id} |
DELETE | 删除礼品 | ❌ | ✅ | ||
/prize/exchange |
POST | 兑换礼品 (用户) | ✅ | 📱 | ||
/admin/verifyPrize/{code} |
POST | 核销礼品 | ✅ | ✅ | 前端新实现 | |
| 营销 (供应商) | /admin/suppliers |
GET | 获取供应商列表 | ❌ | ✅ | |
/admin/suppliers |
POST | 创建供应商 | ❌ | ✅ | ||
| 营销 (积分) | /admin/points-rules |
GET | 获取积分规则 | ❌ | ✅ | |
/admin/points-rules/{id} |
PUT | 更新积分规则 | ❌ | ✅ | ||
/admin/adjustPoints |
POST | 管理员调整积分 | ✅ | ✅ | 前端新实现 | |
/points/list |
GET | 获取积分记录 | ✅ | 📱 | ||
| 打卡 | /checkin/create |
POST | 用户打卡 | ✅ | 📱 | |
/checkin/like |
POST | 点赞打卡 | ✅ | 📱 | ||
/checkin/my |
GET | 我的打卡记录 | ✅ | 📱 | ||
/checkin/feed |
GET | 打卡动态广场 | ✅ | 📱 | ||
| 系统/用户 | /admin/users |
GET | 获取用户列表 | ✅ | ✅ | 前端新实现 |
/users/roles |
GET | 获取角色列表 | ❌ | ✅ | ||
/users/permissions |
GET | 获取权限列表 | ❌ | ✅ | ||
/user/profile |
GET | 获取个人资料 | ✅ | 📱 | ||
/user/avatar |
POST | 更新头像 | ✅ | 📱 | ||
| 统计 | /admin/stats/overview |
GET | 仪表盘统计 | ❌ | ✅ | |
/admin/stats/checkins |
GET | 打卡趋势统计 | ❌ | ✅ | ||
/public/ranking |
GET | 排行榜 | ✅ | 📱 |
总结 #
-
前端已修正: 登录、简介、景点管理、礼品列表等接口路径已修正为匹配后端。
-
前端已新增: 用户列表、核销礼品、积分调整等后端已有但前端缺失的功能已补全。
-
后端缺失严重:
-
内容管理: 简介/活动/热线的更新 (PUT) 接口全无。
-
资源管理: 商家 (Merchant) 的所有增删改查接口全无。
-
营销管理: 礼品 (Gift) 的增删改接口全无(只有列表和兑换);供应商管理全无;积分规则管理全无。
-
系统管理: 角色、权限、统计图表接口全无。
-
其他: 景点详情 (
GET /admin/spots/{id}) 缺失,前端编辑时可能无法回显数据。
前后端 API 对照表 #
本文档详细列出了 Attraction-Web (前端管理端) 和 Scenery_backend (后端) 中涉及的所有 API 及其实现状态。
图例:
- ✅ : 已实现
- ❌ : 未实现
- ⚠️ : 部分实现或存在差异 (已在备注说明)
- 📱 : 仅移动端/小程序功能 (管理端无需实现)
| 模块 | API 路径 (Base: /api) |
方法 | 描述 | 后端 (Scenery_backend) | 前端 (Attraction-Web) | 备注 |
|---|---|---|---|---|---|---|
| 认证 | /auth/adminLogin |
POST | 管理员登录 | ✅ | ✅ | 前端原为 /admin/login,已修正 |
/auth/login |
POST | 游客/用户登录 | ✅ | 📱 | ||
/auth/register |
POST | 用户注册 | ✅ | 📱 | ||
/auth/bindPhone |
POST | 绑定手机号 | ✅ | 📱 | ||
/auth/logout |
POST | 退出登录 | ❌ | ✅ | 后端缺失,前端已定义 | |
| 内容 | /public/introduction |
GET | 获取简介 | ✅ | ✅ | 前端原为 /intro,已修正 |
/intro |
PUT | 更新简介 | ❌ | ✅ | 后端只有 GET,无 PUT | |
/activity |
GET | 获取活动说明 | ❌ | ✅ | ||
/activity |
PUT | 更新活动说明 | ❌ | ✅ | ||
/hotline |
GET | 获取客服热线 | ❌ | ✅ | ||
/hotline |
PUT | 更新客服热线 | ❌ | ✅ | ||
| 景点 (POI) | /admin/spots |
GET | 获取景点列表 (管理) | ✅ | ✅ | 前端原为 /admin/pois,已修正 |
/admin/spots |
POST | 创建景点 | ✅ | ✅ | ||
/admin/spots/{id} |
PUT | 更新景点 | ✅ | ✅ | ||
/admin/spots/{id} |
DELETE | 删除景点 | ✅ | ✅ | ||
/admin/spots/{id} |
GET | 获取单个景点详情 | ❌ | ✅ | 后端 AdminController 只有列表,无详情接口 | |
/public/spots |
GET | 获取景点列表 (公开) | ✅ | 📱 | ||
/public/nearby |
GET | 附近景点 | ✅ | 📱 | ||
| 商家 | /admin/merchants |
GET | 获取商家列表 | ❌ | ✅ | |
/admin/merchants/{id} |
GET | 获取商家详情 | ❌ | ✅ | ||
/admin/merchants |
POST | 创建商家 | ❌ | ✅ | ||
/admin/merchants/{id} |
PUT | 更新商家 | ❌ | ✅ | ||
/admin/merchants/{id} |
DELETE | 删除商家 | ❌ | ✅ | ||
| 营销 (礼品) | /prize/list |
GET | 获取礼品列表 | ✅ | ✅ | 前端原为 /admin/gifts,已修正 |
/admin/gifts |
POST | 创建礼品 | ❌ | ✅ | 后端仅有查看和兑换,无管理增删改 | |
/admin/gifts/{id} |
PUT | 更新礼品 | ❌ | ✅ | ||
/admin/gifts/{id} |
DELETE | 删除礼品 | ❌ | ✅ | ||
/prize/exchange |
POST | 兑换礼品 (用户) | ✅ | 📱 | ||
/admin/verifyPrize/{code} |
POST | 核销礼品 | ✅ | ✅ | 前端新实现 | |
| 营销 (供应商) | /admin/suppliers |
GET | 获取供应商列表 | ❌ | ✅ | |
/admin/suppliers |
POST | 创建供应商 | ❌ | ✅ | ||
| 营销 (积分) | /admin/points-rules |
GET | 获取积分规则 | ❌ | ✅ | |
/admin/points-rules/{id} |
PUT | 更新积分规则 | ❌ | ✅ | ||
/admin/adjustPoints |
POST | 管理员调整积分 | ✅ | ✅ | 前端新实现 | |
/points/list |
GET | 获取积分记录 | ✅ | 📱 | ||
| 打卡 | /checkin/create |
POST | 用户打卡 | ✅ | 📱 | |
/checkin/like |
POST | 点赞打卡 | ✅ | 📱 | ||
/checkin/my |
GET | 我的打卡记录 | ✅ | 📱 | ||
/checkin/feed |
GET | 打卡动态广场 | ✅ | 📱 | ||
| 系统/用户 | /admin/users |
GET | 获取用户列表 | ✅ | ✅ | 前端新实现 |
/users/roles |
GET | 获取角色列表 | ❌ | ✅ | ||
/users/permissions |
GET | 获取权限列表 | ❌ | ✅ | ||
/user/profile |
GET | 获取个人资料 | ✅ | 📱 | ||
/user/avatar |
POST | 更新头像 | ✅ | 📱 | ||
| 统计 | /admin/stats/overview |
GET | 仪表盘统计 | ❌ | ✅ | |
/admin/stats/checkins |
GET | 打卡趋势统计 | ❌ | ✅ | ||
/public/ranking |
GET | 排行榜 | ✅ | 📱 |
总结 #
- 前端已修正: 登录、简介、景点管理、礼品列表等接口路径已修正为匹配后端。
- 前端已新增: 用户列表、核销礼品、积分调整等后端已有但前端缺失的功能已补全。
- 后端缺失严重:
- 内容管理: 简介/活动/热线的更新 (PUT) 接口全无。
- 资源管理: 商家 (Merchant) 的所有增删改查接口全无。
- 营销管理: 礼品 (Gift) 的增删改接口全无(只有列表和兑换);供应商管理全无;积分规则管理全无。
- 系统管理: 角色、权限、统计图表接口全无。
- 其他: 景点详情 (
GET /admin/spots/{id}) 缺失,前端编辑时可能无法回显数据。