# 项目画像(Hurl 测试自动生成用) ## 技术栈 - 语言: Go 1.25 - 框架: Fiber v2.52.9 - ORM: GORM v1.31.1 - JSON: sonic ## 路由定义位置 - 路由注册入口: internal/routes/routes.go → RegisterRoutesWithDoc() - 按模块拆分: internal/routes/{module}.go - 路由注册函数: Register(router, doc, basePath, method, path, handler, spec) - Admin 域挂载: /api/admin(需认证) - Auth 域挂载: /api/auth(部分公开) - C端域挂载: /api/c/v1(JWT 认证) ## Schema 定义位置 - DTO 目录: internal/model/dto/ - 命名规则: {module}_dto.go - 字段标签: json / validate / description - 通用 DTO: common.go(IDReq 等) ## 统一响应格式 ```json {"code": 0, "msg": "success", "data": any, "timestamp": "RFC3339"} ``` - 成功: code=0, msg="success" - 客户端错误: code=1001~1999, HTTP 4xx - 服务端错误: code=2001~2999, HTTP 5xx ## 分页格式(两种) ### 模式 A(部分模块:shop, account, role) ```json {"items": [], "total": int, "page": int, "size": int} ``` ### 模式 B(大部分模块:package, package_series, shop_series_grant 等) ```json {"list": [], "total": int, "page": int, "page_size": int, "total_pages": int} ``` ## 认证方式 - 后台: POST /api/auth/login → $.data.access_token → Authorization: Bearer {token} - C端: JWT → Authorization: Bearer {token}(微信 OAuth 获取) ## 默认测试账号 - 用户名: admin - 密码: Admin@123456 - 手机号: 13800000000 ## 服务端口 - 默认: 3000 ## 错误码与 HTTP 状态码映射 - 1001 (CodeInvalidParam) → 400 - 1002 (CodeMissingToken) → 401 - 1003 (CodeInvalidToken) → 401 - 1005 (CodeForbidden) → 403 - 1006 (CodeNotFound) → 404 - 冲突类 (1013/1014/1022/1024/1031/1034/1036/1101) → 409 - 1008 (CodeTooManyRequests) → 429 - 未明确映射的 1xxx → 400 - 2xxx → 500