3.6 KiB
전체 교각 입력·산출서·집계 개선
사용법
5. 재료표 → 교각 수량산출 → 전체 교각 입력에서 모든 교각을 행으로 확인한다. 기본적으로 미입력 변수만 모아 보여주며 체크를 해제하면 자동값·원본 기본값·직접값을 모두 확인할 수 있다. Excel 표를 붙여넣을 수 있으며 값은 각 교각의 기존 quantityTakeoff 필드에 저장된다. 입력 후 교각별 기준 검토를 체크하고 전체 재계산 및 전체 교각 Excel 출력을 실행한다. 대시보드의 Excel 출력도 전체 프로젝트를 대상으로 한다.
미입력·형상 미생성·적용 범위 문제가 있으면 해당 교각과 사유를 표시하고 불완전한 수량을 완료 Excel로 만들지 않는다. 기존 다기둥·꺾인 교각 등 원본 산식 적용 제한은 유지한다. 원본 집계표가 같은 규격을 전제로 하므로 교각별 재료 규격이 서로 다르면 규격 분리 검토를 안내한다.
산출서 구성
- 표지 및 목차
- 전체 수량집계: 원본 53개 공종 행에 실제 교각별 수량을 참조하고 SUM으로 합산
- 원본 3.1 산출기준 3개 시트
- 각 실제 교각별 3.2 변수 시트와 3.3 수량산출서
수량산출_ex)와 고정 P2~P6 미사용 시트를 결과에서 제거한다. 교각 수에 맞춰 산출서·변수 시트를 생성하고 집계 열을 확장한다. 각 상세 산식은 해당 교각의 변수 시트만 참조하도록 바꾼다. 원본 수량 계산식·스타일·그림은 기존 OOXML 보존 출력을 활용한다. 미리보기에서도 예시/미사용 시트를 숨기고 수량집계를 전체 교각 결과로 표시한다. 원본 Excel은 변경하지 않는다.
받침 길이·폭
기존 매핑은 plan.A/B를 그대로 사용했지만 이는 솔플레이트 입력이다. 실제 3D 받침 본체 생성 코드와 같은 (A + margin)/1000 - 0.2, (B + margin)/1000 - 0.2 m로 연결했다. 실제 받침 형상이 없거나 한 교각 내 치수가 달라 단일값을 정할 수 없으면 자동 치수를 추정하지 않는다. 교좌면 1.2m·몰탈 1m를 받침 치수로 대체하지 않는다.
주요 변경 파일
project-inputs.ts: 전체 교각 입력 표, 붙여넣기, 저장·재계산·출력 진입bearing-dimensions.ts,model.ts: 실제 받침 본체 제원 연결workspace.ts,workspace.css: 전체 교각 작업 흐름과 모달excel-preview.ts,review-panel.ts: 예시 제거, 실제 전체 집계 미리보기server.ts,tools/project_workbook.py: 가변 교각 수의 원본 양식 합성 출력bearing-dimensions.test.ts,tools/verify_project_package.py: 형상 치수 및 전체 합산 검증
검증 결과
- 실제 운곡교 6개 교각: 전체 미입력 입력·저장·재계산·출력, 예시 제거, 브라우저 오류 0건.
- 실제 출력은 17시트, 상세 6개. 53개 집계행과 318개 상세 참조·계산캐시 차이 0건.
- 17교각 합성 확장 시험: 39시트, 53개 집계행과 901개 상세 참조·합계 차이 0건. 실제 산외교 수량 검증을 뜻하지 않는다.
- TypeScript 검사, 수량산출 테스트 12개, Vite 빌드 통과. 기존 번들 크기 경고 유지.
- 실제 Microsoft Excel 앱의 재계산까지 검증한 것은 아니다. ZIP·XML·관계·원식 참조·캐시 검증을 수행했다.
- 검증 입력의 토층·미생성 받침 치수는 원본 예시값을 사용한 시험 조건이다. 실무 확정값으로 사용하지 않는다.
검증 근거: project-package-verification.json. 원본에 없는 수량 규칙은 이번 UI·출력 개선을 이유로 추가하지 않았다.