Files
monisuo/FIX_CHECKLIST.md
sion 4f17e7ea8a 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 调试工具
2026-03-24 09:41:23 +08:00

2.8 KiB
Raw Blame History

StackOverflowError 修复清单

修复日期: 2026-03-24 00:33 状态: 已完成

📝 修改的文件列表

实体类Entity

  • src/main/java/com/it/rattan/monisuo/entity/User.java

    • @Data → @Getter + @Setter
  • src/main/java/com/it/rattan/monisuo/entity/AccountFund.java

    • @Data → @Getter + @Setter
  • src/main/java/com/it/rattan/monisuo/entity/AccountTrade.java

    • @Data → @Getter + @Setter
  • src/main/java/com/it/rattan/monisuo/entity/OrderFund.java

    • @Data → @Getter + @Setter
  • src/main/java/com/it/rattan/monisuo/entity/Coin.java

    • @Data → @Getter + @Setter
  • src/main/java/com/it/rattan/monisuo/entity/AccountFlow.java

    • @Data → @Getter + @Setter
  • src/main/java/com/it/rattan/monisuo/entity/Admin.java

    • @Data → @Getter + @Setter
    • 添加 @JsonIgnore 到 password 字段
  • src/main/java/com/it/rattan/monisuo/entity/OrderTrade.java

    • @Data → @Getter + @Setter
  • src/main/java/com/it/rattan/monisuo/entity/ColdWallet.java

    • @Data → @Getter + @Setter

DTO 类

  • src/main/java/com/it/rattan/monisuo/dto/DepositRequest.java

    • @Data → @Getter + @Setter
  • src/main/java/com/it/rattan/monisuo/dto/WithdrawRequest.java

    • @Data → @Getter + @Setter

公共类

  • src/main/java/com/it/rattan/monisuo/common/Result.java

    • @Data → @Getter + @Setter
  • src/main/java/com/it/rattan/monisuo/context/UserContext.java

    • @Data → @Getter + @Setter

配置类

  • src/main/java/com/it/rattan/monisuo/config/JacksonConfig.java
    • 优化配置,移除不兼容的 WRITE_SELF_REFERENCES_AS_NULL
    • 简化配置以适配 Spring Boot 2.2.4

📊 修改统计

  • 总计修改文件: 14 个
  • 修改的实体类: 9 个
  • 修改的 DTO 类: 2 个
  • 修改的公共类: 2 个
  • 修改的配置类: 1 个

🧪 测试方法

方法 1: 使用测试脚本(推荐)

cd ~/Desktop/projects/monisuo
./test_fix.sh

方法 2: 手动测试

# 1. 编译
mvn clean package -DskipTests

# 2. 启动
java -jar target/monisuo-1.0.jar

# 3. 测试接口
curl -H "Authorization: Bearer <token>" http://localhost:8080/api/asset/overview
curl -H "Authorization: Bearer <token>" http://localhost:8080/api/asset/trade
curl -H "Authorization: Bearer <token>" http://localhost:8080/api/asset/fund

验证清单

  • 代码修改完成
  • 编译成功
  • 服务启动成功(需要 Java 环境)
  • 接口测试通过(需要 Java 环境)
  • 无 StackOverflowError

📚 相关文档

  • 详细修复报告: STACKOVERFLOW_FIX_REPORT.md
  • 测试脚本: test_fix.sh
  • 本清单: FIX_CHECKLIST.md

修复完成!请在有 Java 环境的机器上运行 ./test_fix.sh 进行验证。