主要修复: 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 调试工具
3.7 KiB
3.7 KiB
测试脚本使用说明
快速开始
1. 确保服务正在运行
# 检查服务状态
curl http://localhost:8080/health
# 如果未运行,启动服务
cd ~/Desktop/projects/monisuo
java -jar target/monisuo-1.0.jar
2. 运行测试
方式一:快速测试(推荐)
cd ~/Desktop/projects/monisuo
./test_approve_fix.sh
这个脚本会:
- 自动登录管理员账号
- 查询待审批订单
- 执行审批操作
- 验证订单状态和余额
方式二:完整测试
cd ~/Desktop/projects/monisuo
./test_complete_flow.sh
这个脚本会执行更详细的测试,包括:
- 服务状态检查
- 审批前余额记录
- 审批操作
- 审批后余额验证
- 详细测试报告
3. 查看测试结果
测试脚本会输出详细的测试过程和结果:
✓ 所有测试通过!
测试结果汇总:
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
1. ✓ 订单状态更新正确
充值订单: 待确认(2) → 已完成(3)
2. ✓ 用户余额变化正确
余额: 50.00 → 150.00 USDT (+100.00)
3. ✓ 资金流水记录已生成
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
手动测试
如果没有待审批订单,可以手动创建:
1. 用户登录
curl -X POST http://localhost:8080/api/user/login \
-H "Content-Type: application/json" \
-d '{"username":"testuser","password":"password"}'
2. 申请充值
curl -X POST http://localhost:8080/api/fund/deposit \
-H "Authorization: Bearer <USER_TOKEN>" \
-H "Content-Type: application/json" \
-d '{"amount":100}'
3. 确认打款
curl -X POST http://localhost:8080/api/fund/confirm \
-H "Authorization: Bearer <USER_TOKEN>" \
-H "Content-Type: application/json" \
-d '{"orderNo":"F20260324001"}'
4. 管理员审批
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: 先启动后端服务:
cd ~/Desktop/projects/monisuo
java -jar target/monisuo-1.0.jar
Q2: 没有待审批订单
A: 先创建测试订单:
- 用户登录
- 申请充值
- 确认打款
- 再次运行测试脚本
Q3: 登录失败
A: 检查数据库中是否有管理员账号,默认账号是 admin/admin123
Q4: 余额未变化
A: 检查日志输出,确认审批操作是否成功执行
日志查看
查看应用日志
# 如果使用 nohup 启动
tail -f nohup.out
# 或者直接查看控制台输出
关键日志
[充值审批] 订单号: xxx, 用户ID: xxx, 充值金额: xxx, 审批前余额: xxx, 审批后余额: xxx
[审批完成] 订单号: xxx, 订单类型: 充值, 审批结果: 通过, 最终状态: 3, 审批人: 管理员
修复验证清单
- 服务正常启动
- 管理员登录成功
- 查询到待审批订单
- 审批操作成功
- 订单状态正确(充值:3, 提现:2)
- 用户余额正确变化
- 资金流水记录生成
联系方式
如有问题,请查看修复报告:APPROVAL_FIX_REPORT.md