feat(M02): 집계표 조회 후 선택 — 일위대가 목록 · 다른 열 도면 · 산출근거 복사해 가져오기 · 산출근거 줄 표번
- 일위대가 칸 = M01 일위대가 목록(fetchCombos)에서 찾아 고름 · 「비움」 - 도면 · 산출근거 칸 = 다른 열(번호 + 이름) 골라 덮어쓰기 확인 뒤 copyStructure · copyBasis(sub4) — 번호 · 열은 그대로 - 집계표 산출근거 줄 칸 글 = 표번 Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_019Kyw9qnkJ94pC1A4PfpDtA
This commit is contained in:
@@ -161,18 +161,26 @@ export function createMain(isAdmin: boolean, onSaved?: () => void): MainHandle {
|
||||
"createSheet",
|
||||
);
|
||||
if (!create) return empty(L("M02_NoSheet"));
|
||||
// 구조물집계표(시스템 층)만 — 도면 줄에 도번 · 칸을 고르면 아래 컨테이너
|
||||
// 구조물집계표(시스템 층)만 — 도면 · 산출근거 줄에 도번 · 표번 · 칸을 고르면 아래 컨테이너 ·
|
||||
// 고칠 수 있으면 일위대가 · 도면 · 산출근거 칸은 조회 후 선택
|
||||
const struct = at.layer === "system" && at.name === STRUCTURE_TABLE ? buildPanel() : null;
|
||||
if (struct) await struct.reload();
|
||||
panel = struct;
|
||||
const columns = (): StructureColumn[] => sheet?.getDoc().열 ?? [];
|
||||
editor = create(host, doc, {
|
||||
mode: at.layer === "project" ? "project" : "master",
|
||||
onChange: () => (dirty = !readOnly),
|
||||
...(struct
|
||||
? {
|
||||
drawingLabel: (colId: string) => struct.numbers()[colId] ?? "",
|
||||
onSelect: (s: { colId: string | null }) =>
|
||||
struct.show(s.colId, sheet?.getDoc().열 ?? []),
|
||||
drawingLabel: (colId: string) => struct.numbers()[colId]?.도번 ?? "",
|
||||
basisLabel: (colId: string) => struct.numbers()[colId]?.표번 ?? "",
|
||||
onSelect: (s: { colId: string | null }) => struct.show(s.colId, columns()),
|
||||
...(readOnly
|
||||
? {}
|
||||
: {
|
||||
onPick: (s: { row: string; colId: string | null }) =>
|
||||
struct.pick(s.row, s.colId, columns()),
|
||||
}),
|
||||
}
|
||||
: {}),
|
||||
});
|
||||
|
||||
Reference in New Issue
Block a user