父节点
1b93c1b0ad
当前提交
fc07470760
@ -0,0 +1,69 @@
|
||||
# feat(C端定制): `/mp/custom/products/all` 改为按定制师过滤 —— 新增**必填** `adminId`
|
||||
|
||||
> **类型**: feat(**接口契约变更,前端必须改**)
|
||||
> **关联 PR**: #3037(已合并 dev) / **关联工单**: #3036
|
||||
> **日期**: 2026-05-26
|
||||
> **影响接口**: `GET /mp/custom/products/all`
|
||||
> **接收方**: mmg
|
||||
> **前端**: **必须改**(否则调用直接 400);已部署测试服并实测通过
|
||||
|
||||
---
|
||||
|
||||
## 🎯 变更内容
|
||||
|
||||
`/mp/custom/products/all` 原为「无登录浏览**全部**定制产品」,返回所有定制产品。
|
||||
|
||||
现改为「**只返回指定定制师本人创建的定制产品**」:接口**新增必填 query 参数 `adminId`**(定制师 ID),后端按 `产品.created_by = adminId` 过滤。
|
||||
|
||||
> 业务语义:这里的 `adminId` 就是定制师身份接口 `GET /mp/customizer/me` 返回的 `adminId`(与分享名片链接 `?adminId={adminId}` 用的是同一个值)。前端已在拿/存这个值,本接口直接带上即可。
|
||||
|
||||
---
|
||||
|
||||
## 📋 接口契约(变更后)
|
||||
|
||||
### 请求 `GET /mp/custom/products/all`
|
||||
|
||||
| 参数 | 类型 | 必填 | 说明 |
|
||||
|------|------|------|------|
|
||||
| `adminId` | number(long) | **是(新增)** | 定制师 ID,只返回该定制师创建的定制产品;取自 `/mp/customizer/me` 的 `adminId` |
|
||||
| `page` | number | 否 | 页码,默认 1,`<1` 纠正为 1 |
|
||||
| `pageSize` | number | 否 | 每页条数,默认 20,上限 100 |
|
||||
|
||||
### 响应
|
||||
|
||||
- 结构**不变**(仍是 `PageResult<定制产品列表项>`:`{ code, data: { records: [...], total, page, pageSize }, success }`)。
|
||||
- 仅是结果集从「全部」收窄为「该 `adminId` 创建的」。
|
||||
|
||||
### 示例
|
||||
|
||||
```
|
||||
GET /mp/custom/products/all?page=1&pageSize=20&adminId=1002
|
||||
→ 200 { code:200, data:{ total:3, records:[...3 条...] }, success:true }
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## ⚠️ 前端需要做的事(Breaking)
|
||||
|
||||
1. **调用本接口时必须带 `adminId`**:值取自 `GET /mp/customizer/me` 返回的 `data.adminId`。
|
||||
2. **不传 `adminId` 会直接报错**:
|
||||
```json
|
||||
{ "code": 400, "message": "缺少必要参数: adminId", "data": null, "success": false }
|
||||
```
|
||||
原先「不带参数返回全部」的行为已**不存在**,请确认所有调用点都补上 `adminId`。
|
||||
3. 若页面语义是「查看某定制师的定制产品案例」,直接用该定制师的 `adminId`;若是「我(定制师本人)的定制产品」,用 `/mp/customizer/me` 返回的本人 `adminId`。
|
||||
|
||||
---
|
||||
|
||||
## ✅ 测试服验证(已通过)
|
||||
|
||||
经测试服网关 `api.test.1814.love:9443` 实测:
|
||||
|
||||
| 请求 | 结果 |
|
||||
|------|------|
|
||||
| `adminId=1002` | `total=3`(= 该定制师在库的有效定制产品数) |
|
||||
| `adminId=1001` | `total=3` |
|
||||
| `adminId=999999999`(不存在) | `total=0`,空列表 |
|
||||
| 不传 `adminId` | `400 缺少必要参数: adminId` |
|
||||
|
||||
软删除产品已被正确排除。
|
||||
正在加载...
x
在新工单中引用
屏蔽一个用户