docs(changelog): 司机自助录入已发放链接前端写死→接现成6端点(H5TokenAdminController已存在,实测真实数据,无需补) [前端通知]
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
这个提交包含在:
父节点
9fb1d5a9fc
当前提交
09cfc2f644
@ -0,0 +1,49 @@
|
||||
# 【前端接线·管理后台】司机自助录入「已发放链接」等整块是前端写死/mock——后端 6 个端点早已存在,请直接接,无需后端补
|
||||
|
||||
> 服务:hl-fleet-service(H5TokenAdminController,FLEET v1.5 §4.1/§4.6) | 无 PR(后端端点早已存在并部署) | 测试服网关 9443 实测返回真实数据(2026-06-15)
|
||||
> 背景:wx 在「车务管理→司机自助录入」页看「已发放链接」列表,指出这块是前端写死的,要求改走后端接口、没有就补。经核实**后端接口早已存在且可用**,前端当前展示的是 mock 数据未接线。
|
||||
|
||||
## ⚠️ 关键判定:前端在用写死数据,不是后端缺接口
|
||||
|
||||
截图「已发放链接」里 token 是 `kx7m9qz` / `ab3d8fh`(6–7 位短串)、二维码域名 `hr.elujiwo.com/driver-intake/kx7m9qz`(路径式)。而**后端真实数据**是:
|
||||
|
||||
```
|
||||
GET /admin/fleet/h5/tokens?page=1&pageSize=5 (测试服实测 code=200)
|
||||
records[0] = {
|
||||
"pendingId": "2066323803964637186",
|
||||
"mode": "new", "modeLabel": "新招",
|
||||
"token": "18bf0d0208a7459684621727c4511109", // 32 位 UUID,不是 kx7m9qz
|
||||
"name": "", "phone": "138****0000",
|
||||
"createTime": "2026-06-15 08:56:00", "expireAt": "2026-07-15 08:56:00",
|
||||
"status": "VALID_UNSUBMITTED", "statusLabel": "...",
|
||||
"url": "https://hr.1814.love/driver-intake?t=18bf0d02...", // hr.1814.love + ?t=,不是 elujiwo.com
|
||||
"shortUrl": "https://web.test.1814.love:9443/s/tRE4y8bc7" // 真实短链
|
||||
}
|
||||
```
|
||||
|
||||
token 长度、域名、链接格式全对不上 → **前端那几行是写死/mock 的,请替换为下列现成端点**。
|
||||
|
||||
## 现成端点全清单(base `/admin/fleet/h5`,网关 `/admin/fleet/**` 已覆盖,全部无需后端改动)
|
||||
|
||||
| # | 用途 | 方法 + 路径 | 关键说明 |
|
||||
|---|------|-----------|---------|
|
||||
| 1 | 生成录入 token(二维码/链接)| `POST /admin/fleet/h5/token` | 入参 mode(new/renew)/targetDriverId(renew必填)/phoneHint/expireDays;返回 token/url/**shortUrl**/qrCodeUrl(300×300 PNG Base64)/expireAt |
|
||||
| 2 | **已发放链接列表**(红框这块)| `GET /admin/fleet/h5/tokens` | 过滤 mode/status(6派生态)/keyword(姓名或token);分页 page/pageSize;返回 `PageResult<H5TokenListItemRespVO>` |
|
||||
| 3 | 导出 CSV | `GET /admin/fleet/h5/tokens/export` | 同列表入参无分页,返回 text/csv(UTF-8 BOM)|
|
||||
| 4 | 作废链接 | `POST /admin/fleet/h5/tokens/{pendingId}/void` | 仅 APPROVED 不可作废;已 VOIDED 幂等;600402 不存在/600304 已通过 |
|
||||
| 5 | 重发录入短信 | `POST /admin/fleet/h5/tokens/{pendingId}/resend` | 仅 VALID_UNSUBMITTED/REJECTED 可重发;走短链;600307 无手机号/600308 状态不可重发 |
|
||||
| 6 | 重新生成链接 | `POST /admin/fleet/h5/tokens/{pendingId}/regenerate` | SUBMITTED/APPROVED 不可重生;作废旧+建新返新 token/qr;600309 已提交/已通过 |
|
||||
|
||||
## 列表项字段(H5TokenListItemRespVO,端点 #2 返回)
|
||||
|
||||
`pendingId`(String雪花) / `mode`+`modeLabel`(new=新招·renew=续签) / `token`(32位) / `name`(未提交为空串) / `phone`(脱敏 138****2345) / `createTime` / `expireAt` / `submittedAt`(未提交 null) / `reviewStatus`(pending/approved/rejected) / `status`(6派生态 VOIDED/APPROVED/REJECTED/SUBMITTED/EXPIRED/VALID_UNSUBMITTED) / `statusLabel`(中文) / `url`(可复制转发的完整长链) / `shortUrl`(短信实投短链,旧行无短码时 null,前端降级显示 url)。
|
||||
|
||||
## 前端动作
|
||||
|
||||
1. 「生成专属链接 + 二维码」改调 #1,二维码用返回的 `qrCodeUrl`、复制用 `url`、短信用 `shortUrl`(别再用 elujiwo.com 域名/短假 token)。
|
||||
2. 「已发放链接」表改调 #2(替换写死的 3 行 mock),列直接映射上面字段;操作列「作废/重发/重新生成」接 #4/#5/#6,「导出」接 #3。
|
||||
3. 状态列直接用后端 `statusLabel`(已是中文,6 态实时派生),不要前端自己算。
|
||||
|
||||
## 实测
|
||||
|
||||
`GET /admin/fleet/h5/tokens?page=1&pageSize=5` → code=200,返回多条真实 VALID_UNSUBMITTED 记录(32 位 token + hr.1814.love?t= 链接 + web.test 短链),数据真实可用。**后端无需任何改动。**
|
||||
正在加载...
x
在新工单中引用
屏蔽一个用户