Files
soul-yongping/soul-api/开发文档/miniprogram接口补全说明.md
2026-03-07 22:58:43 +08:00

2.3 KiB
Raw Permalink Blame History

soul-api 小程序接口补全说明

变更背景

miniprogram 功能还原后,需将 VIP 相关接口从 /api/vip/* 迁移至 /api/miniprogram/vip/*,并补充 miniprogram 组下的 users 接口,符合项目边界(小程序只调 /api/miniprogram/*)。

新增接口

1. VIP 接口handler/vip.go

路径 方法 Handler 用途
/api/miniprogram/vip/status GET VipStatus 查询用户 VIP 状态
/api/miniprogram/vip/profile GET VipProfileGet 获取 VIP 资料
/api/miniprogram/vip/profile POST VipProfilePost 更新 VIP 资料
/api/miniprogram/vip/members GET VipMembers VIP 会员列表或单个

实现说明

  • status:按 orders 表查 product_type IN ('fullbook','vip')status='paid' 判断是否 VIP返回 isVipdaysRemainingexpireDateprice
  • profileGET 从 users 表读 nickname、phonePOST 更新 nickname、phone
  • members:无 ?id 时返回有 fullbook/vip 订单的用户列表;有 ?id 时返回单个用户,含 vip_namevip_avatarvip_contactis_vip 等字段

2. 用户接口handler/miniprogram.go

路径 方法 Handler 用途
/api/miniprogram/users GET MiniprogramUsers 用户列表或单个

实现说明

  • ?limit=20:返回用户列表,用于首页「超级个体」不足 4 人时的补充
  • ?id=xxx:返回单个用户,用于会员详情页在 vip/members 失败时的回退
  • 返回格式:{ success, data },与 miniprogram 期望一致

已有接口(无需变更)

以下接口已在 miniprogram 组挂载miniprogram 已正确调用:

  • /api/miniprogram/book/all-chapters
  • /api/miniprogram/book/chapter/:id
  • /api/miniprogram/book/chapter/by-mid/:mid
  • /api/miniprogram/book/hot
  • /api/miniprogram/book/search
  • /api/miniprogram/book/stats

路由注册位置

internal/router/router.go 中 miniprogram 组末尾:

miniprogram.GET("/vip/status", handler.VipStatus)
miniprogram.GET("/vip/profile", handler.VipProfileGet)
miniprogram.POST("/vip/profile", handler.VipProfilePost)
miniprogram.GET("/vip/members", handler.VipMembers)
miniprogram.GET("/users", handler.MiniprogramUsers)