# 积分充值系统 - 快速启动 ## 🚀 5分钟快速上手 ### 1️⃣ 执行数据库迁移 ```bash mysql -u root -p 1818ai < V6__add_points_recharge_system.sql ``` **验证**: ```sql -- 检查套餐数据 SELECT name, points, bonus_points, total_points, price FROM points_package; -- 应该看到6个套餐 -- 检查order表新字段 DESC `order`; -- 应该包含 order_type, points_package_id, points_amount ``` --- ### 2️⃣ 启动应用 ```bash mvn spring-boot:run ``` 或者 ```bash mvn clean package java -jar target/1818_user_server-0.0.1-SNAPSHOT.jar ``` --- ### 3️⃣ 测试接口 #### 步骤1:获取套餐列表(无需登录) ```bash curl -X GET "http://localhost:8080/user/points/packages" ``` **预期响应**: ```json { "code": 200, "data": [ { "id": 1, "name": "体验包", "points": 100, "price": 10.00, ... } ] } ``` --- #### 步骤2:用户登录获取Token ```bash curl -X POST "http://localhost:8080/user/auth/login" \ -H "Content-Type: application/json" \ -d '{"phone":"13800138000","password":"123456"}' ``` **获取token**: ```json { "code": 200, "data": { "token": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9..." } } ``` --- #### 步骤3:创建充值订单(需要登录) ```bash curl -X POST "http://localhost:8080/user/points/recharge" \ -H "Authorization: Bearer YOUR_TOKEN_HERE" \ -H "Content-Type: application/json" \ -d '{"packageId":2,"paymentMethod":2}' ``` **预期响应**: ```json { "code": 200, "data": { "orderNo": "ORD20251021123456", "amount": 48.00, "pointsAmount": 605, "paymentMethod": 2 } } ``` **注意**: - `pointsAmount` 可能是 605(500基础+50赠送+55首充奖励) - 如果是首次充值,会有10%的额外奖励 --- #### 步骤4:模拟支付成功(测试用) ```bash curl -X POST "http://localhost:8080/payment/callback/test?orderNo=ORD20251021123456" ``` **预期响应**:`success` --- #### 步骤5:查看用户积分 ```bash curl -X GET "http://localhost:8080/user/info" \ -H "Authorization: Bearer YOUR_TOKEN_HERE" ``` **验证积分是否到账**: ```json { "code": 200, "data": { "points": 605, "pointsExpiresAt": "2026-10-21T12:35:10" } } ``` --- #### 步骤6:查看充值记录 ```bash curl -X GET "http://localhost:8080/user/points/recharge/records?page=1&size=10" \ -H "Authorization: Bearer YOUR_TOKEN_HERE" ``` --- ## 📝 前端快速集成 ### HTML示例 ```html