From ccb71ead90f6eb2b7b197e2bde7ff1bfdf8f745a Mon Sep 17 00:00:00 2001 From: API Changelog Bot Date: Wed, 24 Jun 2026 14:20:16 +0800 Subject: [PATCH] =?UTF-8?q?@=20docs(changelog-v2):=20=E9=87=8A=E6=94=BE?= =?UTF-8?q?=E5=9B=9E=E6=B1=A0=E5=86=BB=E7=BB=93=E6=97=A7=E6=88=BF=E5=8A=A1?= =?UTF-8?q?=E4=BC=9A=E8=AF=9D+=E6=B6=88=E6=81=AF=E8=BD=AC=E7=95=99?= =?UTF-8?q?=E8=A8=80=E6=B1=A0=E7=9C=9F=E7=94=9F=E6=95=88=20(#4330=20#4332)?= =?UTF-8?q?=20@?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ... å†»ç»“旧房务会è¯+消æ¯è½¬ç•™è¨€æ± çœŸç”Ÿæ•ˆ_管ç†åŽå°.md | 37 +++++++++++++++++++ 1 file changed, 37 insertions(+) create mode 100644 changelogs-v2/2026-06/24_4330_4332_释放回池冻结旧房务会è¯+消æ¯è½¬ç•™è¨€æ± çœŸç”Ÿæ•ˆ_管ç†åŽå°.md diff --git a/changelogs-v2/2026-06/24_4330_4332_释放回池冻结旧房务会è¯+消æ¯è½¬ç•™è¨€æ± çœŸç”Ÿæ•ˆ_管ç†åŽå°.md b/changelogs-v2/2026-06/24_4330_4332_释放回池冻结旧房务会è¯+消æ¯è½¬ç•™è¨€æ± çœŸç”Ÿæ•ˆ_管ç†åŽå°.md new file mode 100644 index 0000000..09fab75 --- /dev/null +++ b/changelogs-v2/2026-06/24_4330_4332_释放回池冻结旧房务会è¯+消æ¯è½¬ç•™è¨€æ± çœŸç”Ÿæ•ˆ_管ç†åŽå°.md @@ -0,0 +1,37 @@ +# æˆ¿åŠ¡é‡Šæ”¾å›žæ± ï¼šå†»ç»“æ—§æˆ¿åŠ¡ä¼šè¯ + æ—§æˆ¿åŠ¡æ¶ˆæ¯æ•´æ®µè½¬ã€Œç•™è¨€æ± ã€(链路修通真生效) + +> å˜æ›´ç±»åž‹ï¼šðŸ”§ ä¿®å¤ï¼ˆåŽç«¯ï¼Œå‰ç«¯æŒ‰ä¸‹æ–¹ã€Œç•™è¨€æ€å±•示ã€é…åˆï¼‰ +> 端类型:管ç†åŽå°ï¼ˆæˆ¿åŠ¡ç®¡å®¶Â·è®¢å•详情èŠå¤© / å®šåˆ¶å¸ˆä¾§ã€Œå¾…æŽ¥å•æˆ¿åŠ¡ã€ä¼šè¯ï¼‰ +> 日期:2026-06-24 | å·¥å•:#4329 #4331 | PR:#4330 #4332 | æœåŠ¡ï¼šhl-user-service(åŒå®žä¾‹å·²éƒ¨ç½² health UP,**æµ‹è¯•æœ DB+API ground-truth 实测全通过**) + +--- + +## 背景 +房务订å•èŠå¤©=方案A(一å•ä¸€ä¼šè¯ `HOUSE:{orderId}`,房务轮æ¢ï¼‰ã€‚æ­¤å‰ã€Œé‡Šæ”¾å›žæŠ¢å•æ± ã€åŽä¸¤ä¸ª bug: +1. 定制师还能跟**旧房务**ç»§ç»­èŠï¼ˆæ—§æˆ¿åŠ¡ä¼šè¯æ²¡å†»ç»“); +2. 上次èŠå¤©å†…容没转æˆã€Œç•™è¨€ã€ï¼ˆä¸‹ä¸ªæˆ¿åŠ¡æŠ¢å•看ä¸åˆ°å¯¹è¯è¿žç»­æ€§ï¼‰ã€‚ + +根因有两层: +- **#4331(根因)**ï¼šé‡Šæ”¾äº‹ä»¶ç» Feign è°ƒ user 绑定时传 `houseAdminId=null`,但 user ç«¯å…¥å‚ VO 该字段有 `@NotNull` → `@Valid` 直接 400 打回 → 释放绑定逻辑**从未真正执行**(软ä¾èµ–被 fallback é™é»˜åžæŽ‰ï¼Œä¸»æµç¨‹ç…§å¸¸æˆåŠŸï¼Œæ½œä¼æ•°å‘¨ï¼‰ã€‚去掉该 `@NotNull` åŽé“¾è·¯æ‰é€šã€‚ +- **#4330(逻辑)**:释放绑定逻辑本身补全——归档旧房务æˆå‘˜è¡Œ + 旧房务åä¸‹æ¶ˆæ¯æ•´æ®µè½¬ç•™è¨€æ± ã€‚ + +## åŽç«¯è¡Œä¸ºå˜åŒ–(å‰ç«¯ä¸€èˆ¬æ— éœ€æ”¹ï¼‰ +é‡Šæ”¾å›žæŠ¢å•æ± åŽï¼š +- **旧房务**ï¼šä¼šè¯æˆå‘˜è¡Œ `status→ARCHIVED`,脱离该会è¯â€”—其会è¯åˆ—表ä¸å†æ˜¾ç¤ºæœ¬ä¼šè¯ã€ä¸”**ä¸èƒ½å†å‘消æ¯**ï¼ˆå‘æ¶ˆæ¯è¿”业务ç ã€Œæ— æƒè®¿é—®è¯¥ä¼šè¯ã€ï¼‰ã€‚ +- **该会è¯å…¨éƒ¨èŠå¤©æ¶ˆæ¯**ï¼ˆå«æ—§æˆ¿åŠ¡å·²è¯»çš„ï¼‰æ•´æ®µæ”¹åˆ¤å›žã€Œç•™è¨€æ± ã€ï¼ˆæ— æˆ¿åŠ¡æŽ¥æ”¶æ€ï¼‰ã€‚ +- **定制师**:其「è”系房务ã€å›žé€€ã€Œå¾…æŽ¥å•æˆ¿åŠ¡ã€æ€ï¼ˆpeer å ä½ï¼‰ï¼ŒåŽç»­å‘的消æ¯è¿›ç•™è¨€æ± ã€‚ +- **下个房务抢å•**ï¼šç•™è¨€æ± æ¶ˆæ¯æ•´æ®µè½¬å‘给新房务(计入未读 + 转为正常èŠå¤©ï¼‰ã€‚ +- åŒä¸€æˆ¿åŠ¡**釿–°æŠ¢å›ž**该å•ï¼šå½’æ¡£è¡Œè‡ªåŠ¨å¤æ´»ï¼ˆ`status→ACTIVE`),èŠå¤©æ¢å¤ã€‚ + +## å‰ç«¯ã€Œç•™è¨€æ€ã€å±•示é…åˆï¼ˆé‡ç‚¹ï¼‰ +释放回池åŽï¼Œå®šåˆ¶å¸ˆæ‰“å¼€ä¼šè¯æ ‡é¢˜æ˜¾ç¤ºã€Œå¾…æŽ¥å•æˆ¿åŠ¡ã€ï¼Œ**该会è¯åކ岿¶ˆæ¯æ•´ä½“å‘ˆçŽ°ä¸ºã€Œç•™è¨€ã€æ€**â€”â€”è¿™æ˜¯é¢„æœŸæ•ˆæžœï¼ˆæ— æˆ¿åŠ¡æŽ¥å•æœŸé—´çš„æ¶ˆæ¯éƒ½æ˜¯ç•™è¨€ï¼Œç­‰ä¸‹ä¸ªæˆ¿åŠ¡æŠ¢å•转为实时èŠå¤©ï¼‰ï¼š +- 定制师侧:会è¯ä»å¯æ‰“å¼€ã€å¯ç»§ç»­å‘ï¼ˆè¿›ç•™è¨€æ± ï¼‰ï¼Œæ¶ˆæ¯æ ‡ã€Œç•™è¨€ã€å±žæ­£å¸¸ï¼Œ**䏿˜¯ bug**。 +- 房务侧(未抢å•):订å•详情显示「抢å•åŽå¯ä¸Žå®šåˆ¶å¸ˆå®žæ—¶æ²Ÿé€šã€å ä½ï¼ˆå‰ç«¯å·²åŽ»æŽ‰æ—§ã€Œå†…éƒ¨ç•™è¨€ã€å…¥å£ï¼Œç¬¦åˆã€Œåªç•™èŠå¤©ã€è¦æ±‚)。 +- 旧房务侧:释放åŽè¯¥ä¼šè¯ä»Žå…¶ä¼šè¯åˆ—表消失(已归档),符åˆé¢„期。 + +## 验è¯è¯´æ˜Žï¼ˆå¦‚实·ground-truth) +✅ æµ‹è¯•æœ DB + API 实测全通过: +- é‡Šæ”¾åŽæ—§æˆ¿åŠ¡(admin)æˆå‘˜è¡Œ `status=ARCHIVED`ã€å…¶ä¼šè¯åˆ—表无此会è¯ï¼› +- 旧房务释放åŽå‘消æ¯è¢«æ‹’(「无æƒè®¿é—®è¯¥ä¼šè¯ã€ï¼‰ï¼› +- 该å•留言池消æ¯é½å…¨ï¼ˆå®šåˆ¶å¸ˆç•™è¨€ admin_id=0 就绪,下个房务抢å•å¯è½¬å‘); +- åŒæˆ¿åŠ¡é‡æŠ¢â†’æˆå‘˜è¡Œå¤æ´» `ACTIVE`ã€èŠå¤©æ¢å¤ã€‚