4.1 KiB
【前端接线·管理后台】司机自助录入「已发放链接」等整块是前端写死/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,二维码用返回的
qrCodeUrl、复制用url、短信用shortUrl(别再用 elujiwo.com 域名/短假 token)。 - 「已发放链接」表改调 #2(替换写死的 3 行 mock),列直接映射上面字段;操作列「作废/重发/重新生成」接 #4/#5/#6,「导出」接 #3。
- 状态列直接用后端
statusLabel(已是中文,6 态实时派生),不要前端自己算。
实测
GET /admin/fleet/h5/tokens?page=1&pageSize=5 → code=200,返回多条真实 VALID_UNSUBMITTED 记录(32 位 token + hr.1814.love?t= 链接 + web.test 短链),数据真实可用。后端无需任何改动。