From a6a11e2325271feb5ad476a0e061259ded709740 Mon Sep 17 00:00:00 2001 From: API Changelog Bot Date: Mon, 15 Jun 2026 23:12:29 +0800 Subject: [PATCH] =?UTF-8?q?docs(changelog):=20=E4=BB=8A=E6=97=A5=E4=BB=A3?= =?UTF-8?q?=E7=A0=81=E5=AE=A1=E6=9F=A5=E6=89=B9=E9=87=8F=E4=BF=AE=E5=A4=8D?= =?UTF-8?q?=20#3841=EF=BC=88=E5=90=AB=E4=BF=9D=E9=99=A9=E4=BF=9D=E8=B4=B9?= =?UTF-8?q?=E5=AD=97=E6=AE=B5=E8=BD=AC=E5=AD=97=E7=AC=A6=E4=B8=B2=E5=89=8D?= =?UTF-8?q?=E7=AB=AF=E9=9C=80=E7=9F=A5=EF=BC=89?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ...量修复-保险保费字段转字符串前端需知-后端内部.md | 43 +++++++++++++++++++ 1 file changed, 43 insertions(+) create mode 100644 changelogs-v2/2026-06/15_3841_今日代码审查批量修复-保险保费字段转字符串前端需知-后端内部.md diff --git a/changelogs-v2/2026-06/15_3841_今日代码审查批量修复-保险保费字段转字符串前端需知-后端内部.md b/changelogs-v2/2026-06/15_3841_今日代码审查批量修复-保险保费字段转字符串前端需知-后端内部.md new file mode 100644 index 0000000..b3aa8a2 --- /dev/null +++ b/changelogs-v2/2026-06/15_3841_今日代码审查批量修复-保险保费字段转字符串前端需知-后端内部.md @@ -0,0 +1,43 @@ +# 【后端内部·含1项前端需知】今日提交代码审查批量修复(PR #3841 / 无工单) + +> 端:基本后端内部,**1 项前端需知**(保险订单列表保费字段类型变更)| 服务:hl-order-service-v3 + hl-fleet-service | PR #3841 已合并 dev-v3 + 双实例部署实测 | 2026-06-15 + +## ⚠️ 关键说明 + +对 2026-06-15 全部后端提交做了多维代码审查,修复发现的 6 类可改进项。**绝大多数是后端内部加固**(并发守卫/破零/红线合规/测试补齐/注释订正),**唯一影响前端的是保险订单列表的保费字段从 JSON 数字改为字符串**。 + +## 1. 🔴 前端需知:保险订单列表保费字段 数字 → 字符串 + +`GET /v3/admin/insurance/list` 返回的 `premium`(保费)和 `totalPremium`(保费,与 premium 同值)两个字段,**由 JSON 数字改为 JSON 字符串**,与平台「金额一律 String」约定对齐(防大额精度丢失)。 + +| 字段 | 修复前 | 修复后 | +|------|--------|--------| +| `premium` | `10.80`(数字) | `"10.80"`(字符串) | +| `totalPremium` | `10.80`(数字) | `"10.80"`(字符串) | + +```jsonc +// 实测响应片段(测试服 9443) +{"premium":"10.80","totalPremium":"10.80","policyHolderName":"内蒙古呼籁国际旅行社有限公司", + "planName":"10万计划","statusLabel":"已承保", ...} +``` + +**前端如对这两个字段做数值运算/严格类型比较,请按字符串处理**(`parseFloat` 或先转数值)。平台其他金额字段本就是字符串,此次是补齐一致性。其余字段不变。 + +## 2. 后端内部加固(前端无需关注) + +| 模块 | 修复 | +|------|------| +| order-v3 改单 | 团期改单减人改走 decrementEnrolled(带 GREATEST 破零),与 +N/−N 写端口径统一 | +| order-v3 团期对账 | selectForReconcile 去 `.last("LIMIT")` 红线,改 selectPage 合规分页 | +| order-v3 房车打回 | 打回补 CAS 乐观锁守卫,防与并发 dispatch 丢失更新(TOCTOU);并正确释放 claimer | +| fleet 司机 | 补 2 个回归测试锁定 #3818 修复行为 | +| 注释订正 | 计数口径/短链码位数/错误码列表 三处 | + +## 验证(测试服 2026-06-15) + +``` +order-v3 双实例 8086/8186 全新重启(23:08),/v3/internal/order/batch-stats 返 200 ✅ +fleet 双实例 8087/8187 全新重启(23:09) ✅ +保险列表 premium/totalPremium 实测返字符串 "10.80" ✅ +order-v3 171 测试 + fleet DriverServiceTest 109 测试全绿,未触碰任何 Flyway 迁移 +```