hl-api-changelog/changelogs-v2/2026-06/15_司机自助录入已发放链接前端写死改接现成端点-接口已存在无需补-管理后台.md

4.1 KiB

【前端接线·管理后台】司机自助录入「已发放链接」等整块是前端写死/mock——后端 6 个端点早已存在,请直接接,无需后端补

服务hl-fleet-serviceH5TokenAdminController,FLEET v1.5 §4.1/§4.6 | 无 PR后端端点早已存在并部署 | 测试服网关 9443 实测返回真实数据2026-06-15 背景wx 在「车务管理→司机自助录入」页看「已发放链接」列表,指出这块是前端写死的,要求改走后端接口、没有就补。经核实后端接口早已存在且可用,前端当前展示的是 mock 数据未接线。

⚠️ 关键判定:前端在用写死数据,不是后端缺接口

截图「已发放链接」里 token 是 kx7m9qz / ab3d8fh6–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/csvUTF-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 短链),数据真实可用。后端无需任何改动。