Service 状态新增 WAITLIST (2026-02-28)

影响接口

  • POST /api/artist_center/services/create
  • POST /api/artist_center/services/update
  • POST /api/content/artist/list
  • GET /api/content/service/info
  • POST /api/content/products/info
  • GET /api/bookmark/saved_artists
  • POST /api/withdraw_accounts/unbind

变更点

  • service.status 新增枚举值:
    • OPEN = 1
    • CLOSE = 2
    • WAITLIST = 3(新增)
  • POST /api/artist_center/services/createPOST /api/artist_center/services/updatestatus 参数增加了枚举校验,仅允许 1/2/3
  • 画师“可接单”判定从“仅 OPEN”调整为“OPEN + WAITLIST”:
    • POST /api/content/artist/listis_open=true 会把 WAITLIST 视为可接单状态。
    • POST /api/content/artist/listis_open=false 会把 WAITLIST 视为非关闭状态(即不会归入 false 集合)。
    • order_by=recommend 时,排序中“无可接单服务的画师后置”规则也按 OPEN + WAITLIST 判断。
  • 下列接口中的 services_open_total 统计口径调整为 OPEN + WAITLIST
    • POST /api/content/artist/list
    • GET /api/content/service/info(返回中的 artist.services_open_total
    • POST /api/content/products/info(返回中的 artist.services_open_total
    • GET /api/bookmark/saved_artists
  • POST /api/withdraw_accounts/unbind 的副作用更新:解绑成功后,原先只会关闭 OPEN 服务;现在会同时关闭 WAITLIST 服务(同币种)。

请求示例

POST /api/artist_center/services/update

{
  "id": 123,
  "status": 3
}

POST /api/content/artist/list

{
  "is_open": true,
  "order_by": "recommend",
  "page": 1,
  "per_page": 10
}

返回示例

POST /api/content/artist/list

{
  "data": [
    {
      "id": 2001,
      "services_total": 2,
      "services_open_total": 2
    }
  ],
  "current_page": 1,
  "total": 1
}

GET /api/content/service/info

{
  "data": {
    "id": 123,
    "status": 3,
    "artist": {
      "id": 2001,
      "services_total": 2,
      "services_open_total": 2
    }
  }
}

兼容性说明

  • 前端/客户端如维护 service.status 白名单,需要新增 3WAITLIST)。
  • 若历史上依赖“status 任意整数可写入”,现在 create/update 会对非法值返回参数校验错误。
  • 依赖 is_open 筛选与 services_open_total 的页面,需要按“OPEN + WAITLIST 都算可接单”更新展示文案与统计预期。