diff --git a/B05_Profile/B05_Profile_UI_Drainage_Parts.ts b/B05_Profile/B05_Profile_UI_Drainage_Parts.ts index 94e308d0..63cc86be 100644 --- a/B05_Profile/B05_Profile_UI_Drainage_Parts.ts +++ b/B05_Profile/B05_Profile_UI_Drainage_Parts.ts @@ -111,9 +111,10 @@ export function addLayerToggle( } /** 유역 제원 목록을 다시 그린다. 항목을 누르면 `onPick`으로 번호를 돌려준다. */ -/** 유역 추천을 한 조각 문구로 — 배관이면 규격 스냅 관경, BOX암거면 후보 표기. - * 추천이 아직 없는(강우량표 전) 유역은 계산 유효직경만 남긴다. */ +/** 유역 추천을 한 조각 문구로 — 배관이면 규격 스냅 관경, BOX암거·세월교면 검토 표기. + * 추천이 아직 없는(강우량표 전) 유역은 "미정"이다. */ function recommendationOf(basin: DetailBasin): string { + if (basin.recommended_facility === "ford_bridge") return L("B05_Drainage_Basin_Bridge"); if (basin.recommended_facility === "box_culvert") return L("B05_Drainage_Basin_RecBox"); if (basin.recommended_diameter_mm == null) return L("B05_Drainage_Basin_Undecided"); return L("B05_Drainage_Basin_RecPipe").replace("{d}", String(basin.recommended_diameter_mm)); @@ -138,15 +139,11 @@ export function renderBasinRows( const metrics = document.createElement("span"); metrics.className = "b05-drainage__basin-metrics"; // 유효직경은 강우량표(rainfall_table.json)가 생기기 전까지 null → "미정" 표기. - // 관 최대 규격 초과 계류 유역은 관이 아니라 세월교 대상 — "세월교 검토"로 표기한다. - // 그 아래 유역은 계산 유효직경 뒤에 추천(규격 스냅 관경 또는 BOX암거)을 덧붙인다 - // (2026-08-17 사용자 지시 — 추천 근거는 유량뿐, 지형 조건은 툴팁으로 안내). - const pipe = basin.bridge_required - ? L("B05_Drainage_Basin_Bridge").replace( - "{d}", - String(Math.round(basin.pipe_diameter_mm ?? 0)), - ) - : basin.pipe_diameter_mm === null + // 값이 있으면 어떤 시설이든 `계산 유효직경 → 추천` 한 형식으로 적는다 — 세월교만 + // 순서가 뒤집혀 있으면 같은 열을 훑을 때 읽는 방향이 달라진다(2026-08-17 사용자 지적). + // 추천 근거는 유량뿐이고 지형 조건은 툴팁으로 안내한다. + const pipe = + basin.pipe_diameter_mm === null ? L("B05_Drainage_Basin_Undecided") : `Ø${Math.round(basin.pipe_diameter_mm)}mm → ${recommendationOf(basin)}`; metrics.textContent = L("B05_Drainage_Basin_Metrics") diff --git a/ui_template/ui_template_locale_b2.ts b/ui_template/ui_template_locale_b2.ts index 9a80a753..8775fc13 100644 --- a/ui_template/ui_template_locale_b2.ts +++ b/ui_template/ui_template_locale_b2.ts @@ -77,8 +77,8 @@ export const ui_locales_b2 = { ], B05_Drainage_Status_LoadFailed: ["배경도를 불러오지 못했습니다.", "Failed to load the basemap."], B05_Drainage_Basin_Undecided: ["미정", "TBD"], - /* {d}=계산 유효직경(mm). 관 최대 규격 초과 계류 유역 — 관이 아니라 세월교 대상 */ - B05_Drainage_Basin_Bridge: ["세월교 검토 (Ø{d}mm)", "Ford crossing req. (Ø{d}mm)"], + /* 관 최대 규격 초과 계류 유역 — 관이 아니라 세월교 대상. 유효직경은 앞머리가 적는다 */ + B05_Drainage_Basin_Bridge: ["세월교 검토", "Ford crossing req."], /* {area}=배수 유효면적, {relief}=표고차, {flow}=유하장, {pipe}=배수 유효직경 */ B05_Drainage_Basin_Metrics: [ "유효면적 {area} · 표고 {relief}m · 유하 {flow}m · 유효직경 {pipe}",