Files
wwjcloud-nest-v1/.trae/documents/批次二修复计划:编译零错误与Java接口全面对齐.md

3.5 KiB
Raw Permalink Blame History

目标

  • 修复现存编译错误,确保所有接口与 Java 行为完全一致
  • 保持 TypeORM 实体字段与数据库一致;不改表结构/索引
  • 完成工具归一替换并删除重复文件,目录保持干净

待修复清单(按模块)

DIY 模块

  • 枚举迁移:从 Java 复制 TemplateEnumPagesEnumlibs/wwjcloud-core/src/enums/
  • DTO 属性风格统一:将 DiyInfoParam/DiyTabbarParam/DiyTabbarListParam/DiyShareParamsiteId()/memberId() 改为属性访问,字段与 Java 对齐
  • 日志打印:将 JsonUtils.stringify(...) 改为 JSON.stringify(...)(或在工具中补齐 stringify,参考 Java 的 JSON 输出位置)
  • 返回包装:统一使用项目已有返回构造,替换不匹配的 Result<T>(...) 构造

登录与渠道auth/login/channel

  • 注入与导入修正:补充 Site 实体与 CoreSiteServiceImpl/CoreH5ServiceImpl/CorePcServiceImpl 的注入与导入
  • 枚举迁移:复制 Java 的 SiteStatusEnum/ChannelEnumenums/ 并按值一致
  • DTO 字段:MemberInfoParam 使用属性风格 memberId/siteId

会员模块member

  • memberId 非空校验:在提现、地址、信息修改、签到等接口赋值/查询前统一校验未登录;抛出与 Java 一致的错误消息
  • 空值更新路径:所有 update/save 的入参做严格非空判定,避免 null 传入(对齐 Java 空分支逻辑)
  • JSON 校验:替代 JsonUtils.isJson 为安全解析或在工具内按 Java 行为实现

验证与核销captcha/verify

  • Captcha 工具已兼容 ResponseModel 字段;对调用方统一读取 isSuccess/repData/repMsg,移除不兼容字段
  • Verify 查询:SysVerifyRecordsParam 属性访问统一;移除 take: 1;补充 createVerifyCode 相关的 memberId 非空校验

TypeORM 用法与空值

  • 全仓移除 findOne({ take: 1 }),统一 findOne({ where }) 或 QueryBuilder
  • 所有可能为 null 的对象在更新前进行非空收窄;与 Java 分支一致的抛错或新建/返回逻辑

工具归一与清理

  • 将剩余约 16 处 core/common/utils 引用替换为 @wwjBoot/vendor/utilsqrcode/collect/distance/ip/tree/language/wechat/notice
  • 删除重复工具文件:core/common/utils/system-utils.tscore/common/utils/captcha-utils.ts 及其他迁移后的公共工具
  • 保留域专用:request-utils.tsjson/json-module-loader.ts

对齐依据Java 源文件)

  • 公众号/小程序 ServeServeController.javaServeServiceImpl.java
  • jscode2session/手机号:WeappServiceImpl.javalogin/register 流程)
  • 验证码:CoreCaptchaImgServiceImpl.javaResponseModel 字段读取)
  • 短信驱动:SmsLoader.javaBaseSms.javaforName 驱动加载)
  • 插件安装列表 VOInstallAddonListVo.javaicon/cover/supportApp 等字段)
  • DIY 表单配置:CoreDiyFormConfigServiceImpl.java(编辑/提交配置与空值逻辑)

验证与交付

  • 编译:确保零错误
  • 契约:逐端点比对 Java 响应结构与状态码;事务与副作用对齐(日志/缓存失效/事件)
  • Docker构建 API+MySQL+Redis前端 .env.production 指向后端;执行 k6 冒烟与路由契约测试
  • 清理:输出已删除与替换清单,确认目录干净

时间表

  • D1完成工具替换与重复文件删除修复 DIY/登录 的编译与契约
  • D2修复会员/验证/TypeORM 用法与空值路径;完成编译零错误与 Docker 冒烟
  • 并行:枚举/DTO 迁移与接口对齐同步进行,压缩至 1.52 天