bindbox-game/.trae/documents/Go 代码规范整改计划.md
邹方成 6ee627139c
Some checks failed
Build docker and publish / linux (1.24.5) (push) Failing after 40s
feat: 新增支付测试小程序与微信支付集成
feat(pay): 添加支付API基础结构
feat(miniapp): 创建支付测试小程序页面与配置
feat(wechatpay): 配置微信支付参数与证书
fix(guild): 修复成员列表查询条件
docs: 更新代码规范文档与需求文档
style: 统一前后端枚举显示与注释格式
refactor(admin): 重构用户奖励发放接口参数处理
test(title): 添加称号效果参数验证测试
2025-11-17 00:42:08 +08:00

2.2 KiB
Raw Blame History

范围

  • API 层:补齐接口文档注释、统一 req/res 模式、限制为路由与参数控制
  • Service 层:迁移业务与数据访问、补齐函数级注释、对齐 activity_* 分层命名

工作项

  1. API 注释补全Swagger
  • 为缺少注释的端点补充 @Summary/@Description/@Tags/@Param/@Success/@Failure/@Router
    • internal/api/activity/draw_app.go:16 ExecuteDraw
    • internal/api/admin/draw_simulate.go:36 SimulateIssueDraw
    • internal/api/admin/issue_random_commit.go:21/48/80 Commit/Get/History
    • internal/api/admin/draw_receipt.go:31/77 GetDrawReceipt/GetDrawReceiptByLogID
    • internal/api/admin/verify_draw.go:34 VerifyDrawReceipt
  1. API 限定职责
  • 将 API 中直接访问数据库的逻辑迁移到 Service 层:
    • internal/api/admin/draw_receipt.go 查询收据改为调用 activity.Service.GetDrawReceipt/GetDrawReceiptByLogID
  • 保持 API 仅做:参数绑定、鉴权、调用 service、返回 res
  1. 统一 req/res 代码风格
  • 统一使用 req := new(XxxRequest) / res := new(XxxResponse),并在所有端点输出 ctx.Payload(res)
  • 检查并修正个别端点的 var req 临时写法
  1. Service 注释与接口规范
  • internal/service/activity/activity.goService 接口所有方法添加函数级注释(功能、参数、返回值)
  • internal/service/activity/*.go(如 draw_execute.go 等)关键导出函数添加注释
  • 保持 internal/service/user/*.go 已有中文注释风格的一致性
  1. 分层与命名对齐
  • 保持并补齐 internal/api/activity/*internal/service/activity/*activity_* 命名映射CRUD、issue、rewards、draw、logs
  • 审核并调整少量不一致的文件/函数命名(如 helper 置于非 API 包或私有化)

验证

  • 运行 Swagger 生成与本地文档预览,检查所有路由均有完整注释
  • 运行单元测试/集成冒烟:抽奖、承诺、收据查询、奖励发放
  • 代码静态检查:确保 API 无直接 DAO 访问、Service 注释完整

交付物

  • 已修正的 API 与 Service 源码
  • 通过的 Swagger 文档与接口列表
  • 简要测试记录(通过用例与关键接口返回示例)