From 44cacffd9bc0f4df86fab051565efa6209a41fce Mon Sep 17 00:00:00 2001 From: API Changelog Bot Date: Sat, 13 Jun 2026 12:17:35 +0800 Subject: [PATCH] =?UTF-8?q?docs(changelog):=20=E5=8F=B8=E6=9C=BA=E5=BE=85?= =?UTF-8?q?=E5=AE=A1=E6=A0=B8=E5=88=97=E8=A1=A8=E8=BF=87=E6=BB=A4+?= =?UTF-8?q?=E6=8B=89=E9=BB=91=E8=A7=A3=E5=B0=81=E7=AB=AF=E7=82=B9+?= =?UTF-8?q?=E5=85=A8=E5=B9=B4=E4=BF=9D=E9=99=A9=E4=B8=8B=E6=8B=89=E5=85=B3?= =?UTF-8?q?=E8=81=94+=E4=BF=9D=E9=99=A9=E4=B8=8B=E5=8D=95=E9=A1=B5?= =?UTF-8?q?=E6=A0=B8=E5=AE=9E=20(#3791/#3792/#3793)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ...¡¨è¿‡æ»¤æœªæäº¤ç©ºå£³å’Œä½œåºŸé“¾æŽ¥-è¡Œä¸ºå˜æ›´-管ç†åŽå°.md | 21 +++++++++++++ ..._叿œºæ‹‰é»‘è§£å°ç‹¬ç«‹ç«¯ç‚¹-新增接å£-管ç†åŽå°.md | 30 +++++++++++++++++++ ...¿å•å·æ”¹ä¸‹æ‹‰å…³è”ä¿æ¸¸ç½‘ä¿å•-è¡Œä¸ºå˜æ›´-管ç†åŽå°.md | 23 ++++++++++++++ ...¡µäº§å“ä¸‹æ‹‰ç©ºä¸Žå¸æœºé™©æ··æ·†-åŽç«¯æ­£å¸¸æ— éœ€æ”¹-管ç†åŽå°.md | 18 +++++++++++ 4 files changed, 92 insertions(+) create mode 100644 changelogs-v2/2026-06/13_3791_待审核列表过滤未æäº¤ç©ºå£³å’Œä½œåºŸé“¾æŽ¥-è¡Œä¸ºå˜æ›´-管ç†åŽå°.md create mode 100644 changelogs-v2/2026-06/13_3792_叿œºæ‹‰é»‘è§£å°ç‹¬ç«‹ç«¯ç‚¹-新增接å£-管ç†åŽå°.md create mode 100644 changelogs-v2/2026-06/13_3793_全年ä¿é™©ä¿å•å·æ”¹ä¸‹æ‹‰å…³è”ä¿æ¸¸ç½‘ä¿å•-è¡Œä¸ºå˜æ›´-管ç†åŽå°.md create mode 100644 changelogs-v2/2026-06/13_å‰ç«¯æ ¸å®ž_ä¿é™©ä¸‹å•页产å“ä¸‹æ‹‰ç©ºä¸Žå¸æœºé™©æ··æ·†-åŽç«¯æ­£å¸¸æ— éœ€æ”¹-管ç†åŽå°.md diff --git a/changelogs-v2/2026-06/13_3791_待审核列表过滤未æäº¤ç©ºå£³å’Œä½œåºŸé“¾æŽ¥-è¡Œä¸ºå˜æ›´-管ç†åŽå°.md b/changelogs-v2/2026-06/13_3791_待审核列表过滤未æäº¤ç©ºå£³å’Œä½œåºŸé“¾æŽ¥-è¡Œä¸ºå˜æ›´-管ç†åŽå°.md new file mode 100644 index 0000000..ce15726 --- /dev/null +++ b/changelogs-v2/2026-06/13_3791_待审核列表过滤未æäº¤ç©ºå£³å’Œä½œåºŸé“¾æŽ¥-è¡Œä¸ºå˜æ›´-管ç†åŽå°.md @@ -0,0 +1,21 @@ +# ã€è¡Œä¸ºå˜æ›´Â·ç®¡ç†åŽå°ã€‘叿œºå¾…审核列表åªå›žçœŸæ­£æäº¤çš„记录——过滤未æäº¤ç©ºå£³ + 已作废链接 + +> æœåŠ¡:hl-fleet-service(8087/8187) | 分支:dev-v3 | PR:#3791 | 已部署测试æœå¹¶ API 实测通过(2026-06-13) +> 背景:wx å馈「待审核页数æ®å…¨ç©ºã€â€”—å¡ç‰‡å§“å/身份è¯/æäº¤æ—¶é—´/照片全空。根因=åˆ—è¡¨æŠŠã€Œå¸æœºç‚¹äº† H5 链接但还没填写æäº¤ã€çš„å ä½ç©ºå£³ã€ä»¥åŠå·²ä½œåºŸé“¾æŽ¥ä¹Ÿæžè¿›äº†å®¡æ ¸é˜Ÿåˆ—。 + +## âš ï¸ å…³é”®è¯´æ˜Ž(å‰ç«¯åŠ¨ä½œ) + +1. **`GET /admin/fleet/drivers/pending` è¡Œä¸ºå˜æ›´(无需改å‰ç«¯ä»£ç ,æ•°æ®è‡ªåЍå˜å¹²å‡€)**:列表现在åªè¿”回**真正æäº¤è¿‡ä¸”链接未作废**的记录,ä¸Žã€Œæˆ‘çš„é“¾æŽ¥ã€æ´¾ç”Ÿæ€ `SUBMITTED` åŒå£å¾„ã€‚ä¸¤æ¡æ’生效基线过滤: + - `submitted_at IS NOT NULL`——排除「生æˆé“¾æŽ¥ä½†å¸æœºæœªå¡«å†™æäº¤ã€çš„å ä½ç©ºå£³(生æˆé“¾æŽ¥é‚£ä¸€åˆ»å°±è½äº†ä¸€è¡Œ pending+未æäº¤çš„å ä½è¡Œ) + - `void_status='NORMAL'`——排除已作废链接(作废与审核正交,死链ä¸è¿›å®¡æ ¸é˜Ÿåˆ—) +2. **现象解释**:测试æœä¿®å¤å‰å¾…审核 tab 有 8 张全空å¡ç‰‡(全是未æäº¤ç©ºå£³),ä¿®å¤åŽä¸º 0 æ¡(当å‰ç¡®å®žæ²¡æœ‰çœŸæ­£æäº¤å¾…å®¡çš„å¸æœº);已驳回 tab 从 6 æ¡(å« 1 æ¡å¼‚常空壳)å˜ 5 æ¡çœŸå®žè®°å½•。**待审核 tab 看起æ¥"å˜ç©º"是正确的**——空壳本就ä¸è¯¥å‡ºçŽ°ã€‚ +3. **「申请详情页ã€åŽç«¯å·²å°±ç»ª**:审核详情端点 `GET /admin/fleet/drivers/pending/{pendingId}`(PR#3785 å·²è½)返回è¯ä»¶åŽŸå›¾ URL / 驾照正副页 / 紧急è”系人 / 自带车实æ‹ç…§ / 备注(PII 脱æ•),ä¸å­˜åœ¨è¿” 600402。**审核å¡ç‰‡çš„ã€ŒæŸ¥çœ‹è¯¦æƒ…ã€æŠ½å±‰å¯ä»¥æŽ¥è¿™ä¸ªç«¯ç‚¹**çœ‹å…¨é‡æ˜Žç»†ã€‚ + +## 实测(测试æœ) + +ä¿®å¤å‰: 待审核 8 æ¡å…¨ submittedAt=null 空壳 / å…¨éƒ¨çŠ¶æ€ 15 æ¡å«ç©ºå£³ã€‚ +ä¿®å¤åŽ: 待审核 0 æ¡ / å…¨éƒ¨çŠ¶æ€ 6 æ¡(approved 1+rejected 5)全部 submittedAt éžç©º / 已驳回 5 æ¡çœŸå®žè®°å½•(å§“å+æäº¤æ—¶é—´é½å…¨)。 + +## å½±å“é¢ + +ä»…åˆ—è¡¨æŸ¥è¯¢è¡Œä¸ºå˜æ›´,approve/reject/详情端点ä¸å—å½±å“;零接å£ç­¾åå˜åŒ–ã€é›¶ DDLã€é›¶è·¯ç”±ã€‚ diff --git a/changelogs-v2/2026-06/13_3792_叿œºæ‹‰é»‘è§£å°ç‹¬ç«‹ç«¯ç‚¹-新增接å£-管ç†åŽå°.md b/changelogs-v2/2026-06/13_3792_叿œºæ‹‰é»‘è§£å°ç‹¬ç«‹ç«¯ç‚¹-新增接å£-管ç†åŽå°.md new file mode 100644 index 0000000..09907bb --- /dev/null +++ b/changelogs-v2/2026-06/13_3792_叿œºæ‹‰é»‘è§£å°ç‹¬ç«‹ç«¯ç‚¹-新增接å£-管ç†åŽå°.md @@ -0,0 +1,30 @@ +# ã€æ–°å¢žæŽ¥å£Â·ç®¡ç†åŽå°ã€‘叿œºé£ŽæŽ§æ‹‰é»‘ + è§£å°ä¸¤ä¸ªç‹¬ç«‹ç«¯ç‚¹â€”â€”å¸æœºå¡ç‰‡å¯åŠ ã€Œæ‹‰é»‘/è§£å°ã€æŒ‰é’® + +> æœåŠ¡:hl-fleet-service(8087/8187) | 分支:dev-v3 | PR:#3792 | 已部署测试æœå¹¶ API 往返实测通过(2026-06-13) +> 背景:wx åé¦ˆã€Œå¸æœºå¡ç‰‡æ²¡æœ‰æ‹‰é»‘按钮ã€ã€‚原先拉黑åªèƒ½èµ°é€šç”¨ç¼–辑端点(PUT 设 season=blacklist),ä¸”å…¨é‡ VO å‰ç«¯ä¸å›žä¼  attachments/tags 会误删ã€è§£å°æ›´æ˜¯æ— ä»»ä½•端点。wx æ‹æ¿è¡¥ç‹¬ç«‹ç«¯ç‚¹ã€‚(车辆拉黑 wx 已撤回·看原型,本次åªåšå¸æœº) + +## âš ï¸ å…³é”®è¯´æ˜Ž(å‰ç«¯åŠ¨ä½œ) + +1. 🆕 **拉黑** `POST /admin/fleet/drivers/{driverId}/blacklist` + - å…¥å‚ body:`{"blacklistReason": "客诉原因..."}`(原因**å¯é€‰**,≤256;ä¸ä¼ åŽç«¯è½ç©ºä¸²) + - 出å‚:`{"code":200,"message":"æˆåŠŸ"}` + - 规则:active/pending/archived 叿œºå‡å¯æ‹‰é»‘;已是黑åå•è¿” **600202**;叿œºä¸å­˜åœ¨è¿” **600205** + - **叿œºå¡ç‰‡åŠ ã€Œæ‹‰é»‘ã€æŒ‰é’®**(弹框让æ“作人填å¯é€‰åŽŸå› )调本端点。åŽç«¯åªå®šå‘写 season+拉黑原因+拉黑时间三列,**ä¸ç¢°é™„ä»¶/标签**(ä¸å†æœ‰è¯¯åˆ é£Žé™©)——比之å‰èµ°ç¼–辑端点 PUT 的方案安全,请改用本端点。 +2. 🆕 **è§£å°** `POST /admin/fleet/drivers/{driverId}/unban` + - å…¥å‚:æ—  body(ä»…è·¯å¾„å‚æ•°) + - 出å‚:`{"code":200,"message":"æˆåŠŸ"}` + - 规则:当å‰å¿…须是黑åå•(å¦åˆ™è¿” **600208**ã€Œå¸æœºå½“å‰ä¸æ˜¯é»‘åå•状æ€,无需解å°ã€);è§£å°åŽ season 回 **active** + 清空拉黑原因/æ—¶é—´ + - **黑åå• tab çš„å¸æœºåŠ ã€Œè§£å°ã€æŒ‰é’®**调本端点。 +3. **拉黑/è§£å°ä¼šè”动车辆**:æ‹‰é»‘â†’è¯¥å¸æœºå¸¸é©»ä¸ªäººè½¦è‡ªåЍåœç”¨(service_status=DISABLED);è§£å°â†’æ¢å¤ ACTIVE。 + +## âš ï¸ å·²çŸ¥ç¼ºå£(知会) + +è§£å°çš„「主管级æƒé™ã€é—¨ç¦**暂未加**(hl-fleet 当剿—  RBAC 框架ã€hl-user æœªé… fleet 角色),当å‰ä»»ä½•登录管ç†å‘˜éƒ½èƒ½è§£å°,å¾… hl-user é… supervisor è§’è‰²åŽæŽ¥å…¥ã€‚å‰ç«¯è§£å°æŒ‰é’®å¯æ­£å¸¸å¯¹æŽ¥,æƒé™æ”¶ç´§æ˜¯åŽç«¯åŽç»­åŠ¨ä½œã€‚ + +## 实测(测试æœå¾€è¿”) + +拉黑(中文原因)→200+season=blacklist+原因è½åº“ / è§£å°â†’200+season=active+原因清空 / éžé»‘åå•å†è§£å°â†’600208 / ä¸å­˜åœ¨å¸æœºâ†’600205 / é‡å¤æ‹‰é»‘→600202。 + +## å½±å“é¢ + +é”™è¯¯ç æ–°å¢ž 600208;网关 `/admin/fleet/**` 通é…已覆盖;é›¶ DDL。原 PR#3785 æåˆ°çš„「编辑端点 blacklistReason å…¥å‚ã€ä»ä¿ç•™,但**拉黑按钮请改用本专用端点**(é¿å…å…¨é‡ VO 误删)。 diff --git a/changelogs-v2/2026-06/13_3793_全年ä¿é™©ä¿å•å·æ”¹ä¸‹æ‹‰å…³è”ä¿æ¸¸ç½‘ä¿å•-è¡Œä¸ºå˜æ›´-管ç†åŽå°.md b/changelogs-v2/2026-06/13_3793_全年ä¿é™©ä¿å•å·æ”¹ä¸‹æ‹‰å…³è”ä¿æ¸¸ç½‘ä¿å•-è¡Œä¸ºå˜æ›´-管ç†åŽå°.md new file mode 100644 index 0000000..feac8cf --- /dev/null +++ b/changelogs-v2/2026-06/13_3793_全年ä¿é™©ä¿å•å·æ”¹ä¸‹æ‹‰å…³è”ä¿æ¸¸ç½‘ä¿å•-è¡Œä¸ºå˜æ›´-管ç†åŽå°.md @@ -0,0 +1,23 @@ +# ã€è¡Œä¸ºå˜æ›´Â·ç®¡ç†åŽå°ã€‘ç¼–è¾‘å¸æœºÂ·å…¨å¹´ä¿é™©ã€Œä¿å•å·ã€ä»Žæ‰‹å¡«æ”¹ä¸ºä¸‹æ‹‰å…³è”è¯¥å¸æœºå·²å‡ºçš„ä¿æ¸¸ç½‘ä¿å• + +> æœåŠ¡:hl-fleet-service(8087/8187) | 分支:dev-v3 | PR:#3793 | 已部署测试æœ(ä¸‹æ‹‰æ•°æ®æºç«¯ç‚¹ 200 实测å¯è¾¾,å®Œæ•´æŠ•ä¿æµå¾…å‰ç«¯è”è°ƒ)(2026-06-13) +> 背景:wx åé¦ˆç¼–è¾‘å¸æœºå¼¹çª—「ä¿é™©é…置·全年ä¿é™©ã€çš„ä¿å•å·æ˜¯æ‰‹å¡«è¾“入框,åº”æ”¹ä¸ºä»Žè¯¥å¸æœºå·²å‡ºçš„ä¿æ¸¸ç½‘ä¿å•里下拉选择关è”。wx æ‹æ¿:改下拉关è”,ä¿ç•™æ‰‹å¡«å…œåº•。 + +## âš ï¸ å…³é”®è¯´æ˜Ž(å‰ç«¯åŠ¨ä½œ) + +1. **编辑弹窗「ä¿å•å·ã€è¾“入框 → 下拉/æœç´¢é€‰æ‹©å™¨**: + - ä¸‹æ‹‰æ•°æ®æº = `GET /admin/fleet/drivers/{driverId}/insurance/policies`(叿œºã€Œæˆ‘çš„ä¿å•ã€,已有端点);**ä»… status=INSURED(已承ä¿)/INSURING(在途出å•中)å¯é€‰**。 + - 选中æŸä¿å•åŽ,把该ä¿å•çš„ `insuranceOrderId` 放进ä¿å­˜å…¥å‚ `insurance.insuranceOrderId` æäº¤ã€‚ + - 选中åŽ**ä¿å•å·/å¹´ä¿è´¹/ä¿éšœèµ·æ­¢æ”¹ä¸ºåªè¯»å›žæ˜¾**(ç”±åŽç«¯æŒ‰ä¿å•真值回填),å‰ç«¯ä¸å†æ‰‹æ•²è¿™å››é¡¹ã€‚ +2. **ä¿å­˜å…¥å‚ `DriverInsuranceVO.insuranceOrderId` 已放开**(原「入å‚忽略ã€): + - `insurance.type=annual` 且传 `insuranceOrderId` → åŽç«¯æŒ‰å¸æœºç»´åº¦å查该ä¿å•,回填ä¿å•å·/ä¿è´¹/èµ·æ­¢ + è½ `annualSource=baoyou` + å…³è” `insurance_order_id`。 + - 横å‘è¶Šæƒå®ˆå«:传入的ä¿å•ä¸å±žäºŽè¯¥å¸æœº / 状æ€ä¸å¯å…³è” → è¿” **600209**「关è”çš„ä¿æ¸¸ç½‘ä¿å•ä¸å­˜åœ¨ã€ä¸å±žäºŽè¯¥å¸æœºæˆ–状æ€ä¸å¯å…³è”ã€ã€‚å‰ç«¯æ­£å¸¸ä»Žè¯¥å¸æœºä¸‹æ‹‰é€‰ä¸ä¼šè§¦å‘。 +3. **手填路径ä¿ç•™å…œåº•**(二选一,insuranceOrderId 优先):ä¸ä¼  `insuranceOrderId`ã€ä»…手填 `policyNo`+ä¿è´¹+起止时,ä»èµ°åŽŸæ‰‹å¡«è·¯å¾„(`annualSource=manual`,行为零å˜åŒ–),用于线下买的ã€ä¿æ¸¸ç½‘没有的ä¿å•。 + +## 实测(测试æœ) + +ä¸‹æ‹‰æ•°æ®æºç«¯ç‚¹ `/insurance/policies` code=200 å¯è¾¾;åæŸ¥å›žå¡« + 600209 è¶Šæƒè·¯å¾„ç”±å•æµ‹è¦†ç›–(DriverServiceTest+4 / DriverAnnualPolicyLookupImplTest 5,fleet 全套 714 绿);完整「选ä¿å•→回填→ä¿å­˜ã€ç«¯åˆ°ç«¯éœ€å‰ç«¯æŽ¥å…¥åŽè”调。 + +## å½±å“é¢ + +é”™è¯¯ç æ–°å¢ž 600209;**零新增 Feign/DTO/order-v3 端点/Flyway/网关路由**(å¤ç”¨çŽ°æœ‰æŒ‰å¸æœºæŸ¥ä¿å• Feign);åŽç«¯æž¶æž„用 driver å­åŸŸç«¯å£ + insurance å­åŸŸå®žçŽ°è§£çŽ¯ã€‚ diff --git a/changelogs-v2/2026-06/13_å‰ç«¯æ ¸å®ž_ä¿é™©ä¸‹å•页产å“ä¸‹æ‹‰ç©ºä¸Žå¸æœºé™©æ··æ·†-åŽç«¯æ­£å¸¸æ— éœ€æ”¹-管ç†åŽå°.md b/changelogs-v2/2026-06/13_å‰ç«¯æ ¸å®ž_ä¿é™©ä¸‹å•页产å“ä¸‹æ‹‰ç©ºä¸Žå¸æœºé™©æ··æ·†-åŽç«¯æ­£å¸¸æ— éœ€æ”¹-管ç†åŽå°.md new file mode 100644 index 0000000..b0f191a --- /dev/null +++ b/changelogs-v2/2026-06/13_å‰ç«¯æ ¸å®ž_ä¿é™©ä¸‹å•页产å“ä¸‹æ‹‰ç©ºä¸Žå¸æœºé™©æ··æ·†-åŽç«¯æ­£å¸¸æ— éœ€æ”¹-管ç†åŽå°.md @@ -0,0 +1,18 @@ +# ã€å‰ç«¯æ ¸å®žÂ·ç®¡ç†åŽå°ã€‘ä¿é™©ä¸‹å•页「ä¿é™©äº§å“ä¸‹æ‹‰ç©ºã€æ˜¯å‰ç«¯æœªåŠ è½½â€”â€”åŽç«¯å·²è¿” 10 个 ACTIVE 产å“;æ­¤é¡µä¸Žå¸æœºé™©æ˜¯ä¸¤å¥—(åŒå异物) + +> æœåŠ¡:hl-order-service-v3(ä¿é™©æ¨¡å—) | æ—  PR(åŽç«¯æ ¸å®ž,无需改) | æµ‹è¯•æœ API 实测(2026-06-13) +> 背景:wx 看「ä¿é™©ç®¡ç†â†’ä¿é™©è®¢å•→投ä¿ä¸‹å•ã€å¼¹çª—,问「ä¿é™©ä¸‹å•页é¢å’‹æ²¡æ”¹å‘¢ã€,且产å“ä¸‹æ‹‰ä¸ºç©ºã€‚ç»æŽ’æŸ¥ä¸ºä¸¤ä¸ªç‹¬ç«‹è®¤çŸ¥ç‚¹,åŽç«¯æ—  bug。 + +## âš ï¸ å…³é”®è¯´æ˜Ž + +1. **「ä¿é™©ä¸‹å•页颿²¡æ”¹ã€= åŒå异物混淆,此页本就ä¸è¯¥è·Ÿç€å¸æœºé™©æ”¹**: + - 这个「ä¿é™©è®¢å• / 投ä¿ä¸‹å•ã€é¡µèµ°çš„æ˜¯ **游客订å•险**(order-v3 `AdminInsuranceController` `/v3/admin/insurance/purchase`,`PurchaseInsuranceRequest`,productId+planId 模型)。 + - è€Œæœ€è¿‘æ”¹çš„ã€Œå¸æœºé™©èµ°ä¿æ¸¸ç½‘ã€(PR#3700:perTrip→insurancePlanId å¿…å¡«ã€åˆ  perDayRate ç­‰)改的是 **fleet 叿œºæ¡£æ¡ˆé¡µ**çš„ä¿é™©,是**å¦ä¸€å¥—独立模型**。 + - 两者「ä¿é™©è®¡åˆ’/insurancePlanIdã€**åŒå异物**(API 文档 v1.5.64 å·²åšæœ¯è¯­æ¶ˆæ­§)。所以投ä¿ä¸‹å•é¡µæ²¡è·Ÿç€æ”¹æ˜¯æ­£ç¡®çš„。 +2. **「ä¿é™©äº§å“ä¸‹æ‹‰ç©ºã€æ˜¯å‰ç«¯é—®é¢˜,åŽç«¯æ­£å¸¸**: + - 测试æœå®žæµ‹ `GET /v3/admin/insurance/products/all` è¿” **code=200 + 10 个 status=ACTIVE 产å“**(如「山河令(太ä¿å±±ä¸œæ–°)ã€)。åŽç«¯äº§å“åˆ—è¡¨ç«¯ç‚¹å·¥ä½œæ­£å¸¸ã€æœ‰æ•°æ®ã€‚ + - 截图里下拉空,是**å‰ç«¯æœªåŠ è½½/未渲染**该端点数æ®ã€‚请å‰ç«¯æ£€æŸ¥æŠ•ä¿ä¸‹å•弹窗的产å“ä¸‹æ‹‰æ˜¯å¦æ­£ç¡®è°ƒ `/v3/admin/insurance/products/all`ã€è®¡åˆ’下拉调 `/v3/admin/insurance/products/{productId}/plans`。 + +## 结论 + +投ä¿ä¸‹å•页端点/契约/产å“è®¡åˆ’ä¸‹æ‹‰æ•°æ®æºåŽç«¯å…¨éƒ¨æ­£å¸¸,**无需åŽç«¯æ”¹åЍ**。产å“下拉空请å‰ç«¯æŽ’查数æ®åŠ è½½ã€‚