動作
Feature #395
進行中
SC
Direct-Map 票 C/D:前端接上查表出碼 — 燒傷程度、Sprain、骨折分段子選單(v0.6.0)
Feature #395:
Direct-Map 票 C/D:前端接上查表出碼 — 燒傷程度、Sprain、骨折分段子選單(v0.6.0)
狀態:
New
優先權:
Normal
被分派者:
-
開始日期:
2026-08-01
完成日期:
完成比例:
0%
預估工時:
概述
Direct-Map 票 C/D:前端接上查表出碼 — 燒傷程度、Sprain、骨折分段子選單(v0.6.0)¶
背景¶
#393 完成 backend Stage 0 resolver 後,前端尚未送 structured_injuries,
網頁上點人體圖仍走純 AI 老路。本票把整條鏈路接通:
醫師在圖上點選 → 前端送結構化傷情 → 後端查表 → 檢視頁出現「確定」碼(免等 AI)。
同時補上兩個「出碼必要」的表單維度:燒傷程度(ICD T2x 第 4 碼)與骨折分段
(ICD 原生分類)。設計:docs/icd10-directmap-design.md §5(本票同步定稿)。
變更內容¶
1. frontend/src/lib/structured-injuries.ts(新)— payload 產生器¶
-
buildStructuredInjuries(values):表單傷情 → backendstructured_injuries - 軟組織 →
kind=soft;骨骼 →kind=skeletal(帶segment) - 脊椎子區(
cervical_spine…)→kind=spine,partId 轉cervical/thoracic/lumbar -
joint_前綴 →kind=joint(關節熱區預留) - 燒傷標籤正規化:
2nd degree burn→Burn-2nd(對照表用語) -
formSex(values):未填則 undefined → BY_GENDER 列男女兩碼並陳供醫師勾選 -
三處送出點皆已接:ReviewTab「AI 擷取」、軟組織圖快查(只送 soft)、
骨骼圖快查(只送非 soft) - 此模組只做格式轉換,不含任何編碼判斷(出碼規則全在 backend 對照表)
2. 軟組織圖(票 C)¶
-
Burn 點下展開程度子選單(1/2/3 度);
keepOpen讓對話框留著,
同部位可複選多個程度(= 多筆記錄 = 多個碼) - 關節部位(
isJointPart)新增 Sprain 按鈕(與 ROM 同一顯示條件) - 同部位同傷型同備註不重複記錄
3. 骨骼圖(票 D)¶
-
BONE_SEGMENTS(10 根骨)+getBoneSegments();SkeletalInjury加segment? - 有分段的骨 → 點下先跳分段選單(選項=ICD 原生分類,含「未特定」),
選定後才顯示骨折型態;已選分段以徽章顯示並可「重選部位」 - 無分段的骨(髕骨/跟骨…)→ 行為與過往完全相同
- 對話框直接關閉(ESC/點外)= 取消標記,不自動當未特定(病安,決策 11)
- rollback:刪掉
BONE_SEGMENTS中某骨的陣列即回到「整根骨」行為
4. frontend/src/lib/version.ts — v0.6.0 + CHANGELOG¶
驗收標準¶
- e2e 13 項全 PASS(Playwright,真實 UI 操作):
- Burn 展開程度子選單、複選保持開啟
- 關節部位出現 Sprain 鈕
- 股骨先跳分段選單、分段未選前不顯示骨折型態、選定後才顯示
- 髕骨(無分段)直接顯示骨折型態
- payload 含
structured_injuries/segment=轉子間/Burn-2nd+Burn-3rd/sex - 檢視頁實際出現確定碼:股骨轉子間 S72.14x、膝二度燒傷 T24.2
- 回歸全綠:smoke 51、外掛 e2e 18、帶回 e2e 21、
npm run build通過 - ESLint:本票修改檔案零新增問題(既有 3 項為他檔舊債)
備註¶
-
smoke_test.py 無需增修:未動任何 API endpoint(
/predict_icd10的
structured_injuries契約已由 #393 的檢查 7.0 覆蓋);前端點選流程為純瀏覽器端,
HTTP 煙霧測試無法覆蓋,以 Playwright e2e 13 項實測替代(同 #380/#385/#386 前例) -
部署:啟用確定碼需部署機
backend/.env設ICD_DIRECTMAP=on;
不設時前端照送、後端忽略,行為與過往相同(逐位元 rollback) -
票 D 尚未完成的部分(另票):關節熱區 UI(脫臼入口,座標已審定於設計 §5.2)、
腳趾大/其他二選 - 待辦:票 E 整合驗證(330 案 A/B 回歸,確認表定碼不退步)
沒有任何資料可供顯示
動作