From 72e05778e299d86027ddf42045dba5f68d2d2b37 Mon Sep 17 00:00:00 2001 From: API Changelog Bot Date: Fri, 18 Sep 2026 15:47:21 +0800 Subject: [PATCH] =?UTF-8?q?docs(changelog):=20=E5=9B=A2=E6=9C=9F=E7=9C=8B?= =?UTF-8?q?=E6=9D=BF=E4=B8=8D=E8=A6=81=E6=98=BE=E7=A4=BA=2028=20=E4=BD=8D?= =?UTF-8?q?=E7=8F=AD=E6=9C=9F=E7=BC=96=E5=8F=B7=20batchNo=EF=BC=88?= =?UTF-8?q?=E5=89=8D=E7=AB=AF=E7=BC=BA=E9=99=B7=EF=BC=8C=E4=BA=A4=E6=8E=A5?= =?UTF-8?q?=20mmg=EF=BC=89?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit batchNo 实际值为 Q + yyyyMMdd + 19 位雪花(28 位),窄列折行截断成 「Q20 / 26…999490」,对用户无可读意义;同行已有 batchLabel(第N期)与 batchName 足以识别,请前端移除其显示(仍保留为 keyword 匹配字段)。 连带记录:搜索框标注「期号 / 名称」,但 keyword 只匹配 batchNo/batchName 不含 batchLabel,实测「第3期」零命中、「3」因雪花数字全量返回。 后端侧已立单 #7942。 Co-Authored-By: Claude Opus 5 (1M context) Claude-Session: https://claude.ai/code/session_01Mg1eNKoacprUHNvuEKxjqq --- ...�要显示28位班期编号batchNo-前端缺陷-管理后台.md | 93 +++++++++++++++++++ 1 file changed, 93 insertions(+) create mode 100644 changelogs-v2/2026-09/18_frontend_团期看板不要显示28位班期编号batchNo-前端缺陷-管理后台.md diff --git a/changelogs-v2/2026-09/18_frontend_团期看板不要显示28位班期编号batchNo-前端缺陷-管理后台.md b/changelogs-v2/2026-09/18_frontend_团期看板不要显示28位班期编号batchNo-前端缺陷-管理后台.md new file mode 100644 index 00000000..80ab4ace --- /dev/null +++ b/changelogs-v2/2026-09/18_frontend_团期看板不要显示28位班期编号batchNo-前端缺陷-管理后台.md @@ -0,0 +1,93 @@ +--- +schema: "hl-changelog/v2" +ticket: "frontend" +title: "团期看板不要显示 28 位班期编号 batchNo" +consumer: "admin" +author: "wx(GIT)" +change_type: "前端缺陷" +backend_status: "not_required" +gateway_status: "not_required" +frontend_status: "pending" +frontend_owner: "mmg" +frontend_ref: "" +target_release: "" +verified_at: "" +status_note: "纯前端条目,后端零改动。团期看板每行在班期名称右侧渲染了 batchNo,而 batchNo 的实际值是 Q + yyyyMMdd + 19 位雪花 id(共 28 位,如 Q202610082100839310855999490),在窄列里被折行截断成「Q20 / 26…999490」,对用户没有任何可读意义。行内已有 batchLabel(第N期)与 batchName(如「10月8日出发团」)足以识别该班期,请前端移除 batchNo 的显示。注意 batchNo 仍是 keyword 搜索的匹配字段之一,只是不再展示,不要从请求里删掉。" +updated_at: "2026-09-18" +base: "dev-v3" +--- + +# 团期看板不要显示 28 位班期编号 batchNo(前端缺陷) + +> **服务**: hl-order-service-v3(**后端零改动**) +> **页面**: 管理后台 团期订单 → 选中产品 → 右侧班期列表每一行 +> **接口**: `GET /v3/admin/order/group-batch/board` +> **日期**: 2026-09-18 +> **影响范围**: 仅前台渲染;无端点、无出入参、无路由、无 DDL 变化 + +--- + +## 一、现象 + +班期行在名称右侧渲染 `batchNo`,实际值形如: + +``` +Q202610082100839310855999490 +``` + +共 28 位(`Q` + `yyyyMMdd` + 19 位雪花 id)。窄列放不下,被折成两行显示成 +「`Q20`」换行「`26…999490`」,用户完全读不出含义。 + +## 二、请前端移除该字段的显示 + +同一行里已经有两个可读标识,足以定位班期: + +| 字段 | 示例 | 说明 | +|---|---|---| +| `batchLabel` | `第3期` | 班期序号,人读的期号 | +| `batchName` | `10月8日出发团` | 班期名称 | +| `batchNo` | `Q202610082100839310855999490` | **请不要显示** | + +⚠️ **只是不显示,不要从请求或响应处理里删掉** —— `batchNo` 仍然是关键词搜索的匹配字段之一 +(见下节),前端内部仍可能需要它。 + +## 三、为什么后端不改这个编号格式 + +后端契约里 `batchNo` 的示例值是 `GB-26-000001` +(`GroupBatchBoardItemRespVO.java:35` 的 `@ApiModelProperty(example = ...)`), +原型稿里则是 `XMM-26-01` 这类短码——都是人可读的业务编号。 + +但**实际生成规则**是 +`ProductConstants.BATCH_NO_PREFIX + dateStr + IdWorker.getId()` +(`hl-product-service-v2` 的 `ProductPricingService.java:931`、`ProductCopyService.java:272` 两处), +即固定前缀 `Q` 加日期加雪花 id。 + +改生成规则会动到 `group_tour_batch.uk_batch_no` 这个全局唯一键与全部存量数据, +不是前端这条能顺带解决的,因此**本条目只要求前端不显示**,编号格式是否重做另议。 + +## 四、连带问题:搜索框的「期号」搜不到界面上的期号 + +这一条**需要后端配合**,已单独立单,见文末「相关」。 + +本页搜索框标注为「期号 / 名称」,但 `keyword` 的匹配范围只有 `batchNo` 与 `batchName` +(`MergedRowCriteriaDTO.java:22`:「对 `batchNo`/`batchName` 忽略大小写包含匹配」), +**不含 `batchLabel`**。2026-09-18 测试环境实测(产品 `2100839045562077186`,10 个班期): + +| 输入 | 命中数 | 说明 | +|---|---|---| +| `第3期` | **0** | 界面上显示的期号,搜不到 | +| `3` | **10** | 匹配到雪花 id 里的数字,全量返回,是噪音 | +| `10月8日出发团` | 1 | 名称可用 | +| `Q202610082100839310855999490` | 1 | 可用但无人会手打 | + +移除 `batchNo` 显示之后,用户能看到的期号只剩 `第3期`,而它恰好搜不到。 +后端补齐 `batchLabel` 的匹配之后,这个洞才补上。**两件事可以各自独立上线**, +前端移除显示不必等后端。 + +--- + +## 相关 + +- 后端工单:**#7942**(`wx/HL`)——`keyword` 增加对 `batchLabel` 的匹配。 +- 同一页面另有一条后端问题:统计条缺省收窄班期范围却不声明,导致「10 期 / 8 期」两个数字打架, + 见 **#7939**。三者互不依赖。