Merge remote-tracking branch 'origin/sub_laptop_2' into sub_laptop_7

This commit is contained in:
2026-11-02 20:46:20 +09:00
19 changed files with 432 additions and 11 deletions
@@ -111,6 +111,8 @@ export interface LaborRow {
고정?: LaborFixed;
/** 그 줄 덮개(715-3 · 717-3 단가산출 모달) — 로직 줄 · SK 참조 줄 · 서버가 검사 */
패치?: LinePatch;
/** 넣어 펼친 줄 출처(740-1 · 740-2 꼬리표) — {층, 주인, 키, 이름, 때} · 셈에 안 씀 */
본뜬?: Record<string, unknown>;
}
/** 자재 세 칸(148-4 · 서버 `M02_Labor_Doc.MARKS` 와 같음) — 빈 칸 = 읽을 때 기본값 · 금액 무관 */
export const MAT_MARKS = {
@@ -154,6 +156,8 @@ function cleanShown(v: unknown): { 자재표시?: Record<string, MatMarks> } {
return Object.keys(out).length ? { 자재표시: out } : {};
}
export interface LaborMat extends MatMarks {
/** 넣어 펼친 자재 출처(740-2) */
본뜬?: Record<string, unknown>;
코드: string;
이름: string | null;
규격: string | null;
@@ -202,6 +206,7 @@ export function normalizeLabor(doc: unknown, column: string): LaborDoc {
...(r.참조 || r.고정 ? {} : cleanShown(r.자재표시)),
...(r.고정 ? { 고정: r.고정 } : {}), // 705-1 — 읽을 때 떨구면 [저장]에서 줄이 사라짐
...(r.패치 ? { 패치: r.패치 } : {}), // 717-3 — 떨구면 [저장]에서 줄 덮개가 사라짐
...(r.본뜬 ? { 본뜬: r.본뜬 } : {}), // 740-2 — 출처 꼬리표
})),
자재: (d.자재 ?? []).map((m) => ({
코드: m.코드,
@@ -209,6 +214,7 @@ export function normalizeLabor(doc: unknown, column: string): LaborDoc {
규격: m.규격 ?? null,
단위: m.단위 ?? null,
수량: m.수량 ?? null,
...(m.본뜬 ? { 본뜬: m.본뜬 } : {}), // 740-2
...cleanMarks(m),
})),
};