fix: 修复订单审批状态不更新的问题
主要修复: 1. 添加 MetaObjectHandler 自动填充时间字段 2. 启用 @EnableTransactionManagement 显式事务管理 3. 使用 LambdaUpdateWrapper 强制更新订单状态 4. 完善 MyBatis Plus 配置和字段更新策略 5. 添加详细的调试日志配置 6. 前端集成 vconsole 调试工具 关键修改文件: - SpcCloudApplication.java: 添加 @EnableTransactionManagement - FundService.java: 使用 LambdaUpdateWrapper 显式更新 - MyBatisPlusMetaObjectHandler.java: 自动填充时间字段 - application-dev.yml: 完善配置和日志 - monisuo-admin: 添加 vconsole 调试工具
This commit is contained in:
167
TEST_README.md
Normal file
167
TEST_README.md
Normal file
@@ -0,0 +1,167 @@
|
||||
# 测试脚本使用说明
|
||||
|
||||
## 快速开始
|
||||
|
||||
### 1. 确保服务正在运行
|
||||
|
||||
```bash
|
||||
# 检查服务状态
|
||||
curl http://localhost:8080/health
|
||||
|
||||
# 如果未运行,启动服务
|
||||
cd ~/Desktop/projects/monisuo
|
||||
java -jar target/monisuo-1.0.jar
|
||||
```
|
||||
|
||||
### 2. 运行测试
|
||||
|
||||
#### 方式一:快速测试(推荐)
|
||||
```bash
|
||||
cd ~/Desktop/projects/monisuo
|
||||
./test_approve_fix.sh
|
||||
```
|
||||
|
||||
这个脚本会:
|
||||
- 自动登录管理员账号
|
||||
- 查询待审批订单
|
||||
- 执行审批操作
|
||||
- 验证订单状态和余额
|
||||
|
||||
#### 方式二:完整测试
|
||||
```bash
|
||||
cd ~/Desktop/projects/monisuo
|
||||
./test_complete_flow.sh
|
||||
```
|
||||
|
||||
这个脚本会执行更详细的测试,包括:
|
||||
- 服务状态检查
|
||||
- 审批前余额记录
|
||||
- 审批操作
|
||||
- 审批后余额验证
|
||||
- 详细测试报告
|
||||
|
||||
### 3. 查看测试结果
|
||||
|
||||
测试脚本会输出详细的测试过程和结果:
|
||||
|
||||
```
|
||||
✓ 所有测试通过!
|
||||
|
||||
测试结果汇总:
|
||||
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
|
||||
1. ✓ 订单状态更新正确
|
||||
充值订单: 待确认(2) → 已完成(3)
|
||||
|
||||
2. ✓ 用户余额变化正确
|
||||
余额: 50.00 → 150.00 USDT (+100.00)
|
||||
|
||||
3. ✓ 资金流水记录已生成
|
||||
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
|
||||
```
|
||||
|
||||
## 手动测试
|
||||
|
||||
如果没有待审批订单,可以手动创建:
|
||||
|
||||
### 1. 用户登录
|
||||
```bash
|
||||
curl -X POST http://localhost:8080/api/user/login \
|
||||
-H "Content-Type: application/json" \
|
||||
-d '{"username":"testuser","password":"password"}'
|
||||
```
|
||||
|
||||
### 2. 申请充值
|
||||
```bash
|
||||
curl -X POST http://localhost:8080/api/fund/deposit \
|
||||
-H "Authorization: Bearer <USER_TOKEN>" \
|
||||
-H "Content-Type: application/json" \
|
||||
-d '{"amount":100}'
|
||||
```
|
||||
|
||||
### 3. 确认打款
|
||||
```bash
|
||||
curl -X POST http://localhost:8080/api/fund/confirm \
|
||||
-H "Authorization: Bearer <USER_TOKEN>" \
|
||||
-H "Content-Type: application/json" \
|
||||
-d '{"orderNo":"F20260324001"}'
|
||||
```
|
||||
|
||||
### 4. 管理员审批
|
||||
```bash
|
||||
curl -X POST http://localhost:8080/admin/order/approve \
|
||||
-H "Authorization: Bearer <ADMIN_TOKEN>" \
|
||||
-H "Content-Type: application/json" \
|
||||
-d '{"orderNo":"F20260324001","status":2,"adminRemark":"审批通过"}'
|
||||
```
|
||||
|
||||
## 测试数据
|
||||
|
||||
### 默认管理员账号
|
||||
- 用户名: `admin`
|
||||
- 密码: `admin123`
|
||||
|
||||
### 测试订单状态
|
||||
- 充值订单:
|
||||
- 1 = 待付款
|
||||
- 2 = 待确认(用户已确认打款)
|
||||
- 3 = 已完成(管理员审批通过)✅
|
||||
- 4 = 已驳回
|
||||
- 5 = 已取消
|
||||
|
||||
- 提现订单:
|
||||
- 1 = 待审批
|
||||
- 2 = 已完成(管理员审批通过)✅
|
||||
- 3 = 已驳回
|
||||
- 4 = 已取消
|
||||
|
||||
## 常见问题
|
||||
|
||||
### Q1: 测试脚本报错 "服务未运行"
|
||||
**A**: 先启动后端服务:
|
||||
```bash
|
||||
cd ~/Desktop/projects/monisuo
|
||||
java -jar target/monisuo-1.0.jar
|
||||
```
|
||||
|
||||
### Q2: 没有待审批订单
|
||||
**A**: 先创建测试订单:
|
||||
1. 用户登录
|
||||
2. 申请充值
|
||||
3. 确认打款
|
||||
4. 再次运行测试脚本
|
||||
|
||||
### Q3: 登录失败
|
||||
**A**: 检查数据库中是否有管理员账号,默认账号是 `admin/admin123`
|
||||
|
||||
### Q4: 余额未变化
|
||||
**A**: 检查日志输出,确认审批操作是否成功执行
|
||||
|
||||
## 日志查看
|
||||
|
||||
### 查看应用日志
|
||||
```bash
|
||||
# 如果使用 nohup 启动
|
||||
tail -f nohup.out
|
||||
|
||||
# 或者直接查看控制台输出
|
||||
```
|
||||
|
||||
### 关键日志
|
||||
```
|
||||
[充值审批] 订单号: xxx, 用户ID: xxx, 充值金额: xxx, 审批前余额: xxx, 审批后余额: xxx
|
||||
[审批完成] 订单号: xxx, 订单类型: 充值, 审批结果: 通过, 最终状态: 3, 审批人: 管理员
|
||||
```
|
||||
|
||||
## 修复验证清单
|
||||
|
||||
- [ ] 服务正常启动
|
||||
- [ ] 管理员登录成功
|
||||
- [ ] 查询到待审批订单
|
||||
- [ ] 审批操作成功
|
||||
- [ ] 订单状态正确(充值:3, 提现:2)
|
||||
- [ ] 用户余额正确变化
|
||||
- [ ] 资金流水记录生成
|
||||
|
||||
## 联系方式
|
||||
|
||||
如有问题,请查看修复报告:`APPROVAL_FIX_REPORT.md`
|
||||
Reference in New Issue
Block a user