diff --git a/Z01_MasterData/Z01_MasterData_UI_Cells.ts b/Z01_MasterData/Z01_MasterData_UI_Cells.ts index 7e6f4e0a..8e40b782 100644 --- a/Z01_MasterData/Z01_MasterData_UI_Cells.ts +++ b/Z01_MasterData/Z01_MasterData_UI_Cells.ts @@ -26,6 +26,8 @@ export function columnTitle(column: MasterColumn): string { export function cellText(value: unknown, unit?: string | null): string { if (value === null || value === undefined) return ""; if (typeof value === "boolean") return value ? "예" : "아니오"; + // 목록 칸(갈래 키 · 딸린 품셈 표) — 괄호·따옴표 없이 쉼표로 · 빈 목록은 빈칸. + if (Array.isArray(value)) return value.map((each) => cellText(each, unit)).join(", "); if (typeof value === "number" && unit) { return value.toLocaleString("ko-KR", { maximumFractionDigits: 10 }); } diff --git a/resources/tester/test_z01_master_cells.py b/resources/tester/test_z01_master_cells.py index 62943293..3b903240 100644 --- a/resources/tester/test_z01_master_cells.py +++ b/resources/tester/test_z01_master_cells.py @@ -179,6 +179,9 @@ writeFileSync(process.argv[2], JSON.stringify({ cellText("보통인부", null), // 소수 끝 떠돌이 자리(부동소수) — 기계 손료계수 0.0001811 이 0.00018109999999999998 로 보이던 것 cellText(0.00018109999999999998, null), + // 공종 축 목록 칸 — 괄호·따옴표 글자로 뜨던 것(2026-09-17 브레인 ④) + cellText(["연암", "보통암", "경암"], null), + cellText([], null), ], pages: [pageCount(0, 50), pageCount(6999, 50), pageCount(50, 50)], row: rowCells({ extra: "x", daily_wage_krw: 250000, occupation_name: null }, columns), @@ -264,6 +267,8 @@ def test_칸_글자와_숨김_열(tmp_path: Path) -> None: "예", "보통인부", "0.0001811", + "연암, 보통암, 경암", + "", ] assert got["pages"] == [1, 140, 1] # columns 차례 · id 는 줄에 없어 「—」 · null 은 빈칸 · extra 는 안 그림