bindbox-game/.trae/documents/初始化并排查称号管理列表为空.md
邹方成 8141a47690
Some checks failed
Build docker and publish / linux (1.24.5) (push) Failing after 39s
feat(称号系统): 新增称号管理功能与抽奖效果集成
- 新增系统称号模板与效果配置表及相关CRUD接口
- 实现用户称号分配与抽奖效果应用逻辑
- 优化抽奖接口支持用户ID参数以应用称号效果
- 新增称号管理前端页面与分配功能
- 修复Windows时区错误与JSON字段初始化问题
- 移除无用管理接口代码并更新文档说明
2025-11-16 11:37:40 +08:00

1.7 KiB
Raw Blame History

现象与猜测

  • 运营端“称号管理”页面为空,极可能是尚未调用初始化接口或请求被鉴权拦截。

执行步骤

  • 后端健康检查
    • 确认服务已启动且数据库连接正常(启动日志不报错)。
  • 管理员登录获取 Token
    • 账号:admin;密码:chat2025 → 先做 MD539f841df6f9a4768330b00d3ab9f1b4d
    • POST /api/admin/login,记录返回 token
  • 初始化 6 个称号与效果
    • POST /api/admin/system_titles/seed_default
    • 期望返回:{ created: N, exists: M, ids: [...] }(总数 6
  • 菜单补齐(后端动态菜单模式)
    • POST /api/menu/ensure_titles
    • 期望返回:{ ensured: true, parent_id: <Operations>, menu_id: <Titles> }
  • 验证后端数据
    • GET /api/admin/system_titles?page=1&page_size=20,请求头加 Authorization: Bearer <token>
    • 期望:list 含 6 条数据,total=6
  • 前端验证
    • 进入“运营管理 → 称号管理”,若仍为空:
      • 打开浏览器网络面板检查 admin/system_titles 响应码与返回体401 表示未登录200 且 list=[] 表示数据未初始化或失败(重试初始化)。

注意点

  • 初始化接口在非认证组,便于快速拉起;列表接口需要登录。
  • 之前的路由重复注册已修复(避免 Gin panic
  • 若你希望把占位参数(券模板 template_id、奖品 target_prize_ids)替换为真实运营配置,我将更新 params_json 并再次初始化。

验收标准

  • 初始化后,GET /api/admin/system_titles 返回 6 条记录;前端列表显示 6 条。

确认后我将按照以上步骤执行初始化与验证,确保页面数据正常展示。