feat(B08): 묶음 조각 부위별 수량 + 철근 갈래 원문 자동 판정
옹벽 네 조각이 B09 에 다 서서 이제 물량을 실어 보냄. - `composite_parts` 에 조각마다 수량·단위·근거(`basis_kind`)를 실음. 코드만 보내면 받는 쪽이 상세 줄을 못 세움. 조각은 **원단위 성분 이름으로** 찾고 못 찾으면 0 이 아니라 사유와 함께 `not_ready` 로 남김. - ⚠ 철근은 ㎏ → ton 환산. 단가가 원/ton 인데 원단위는 ㎏ 이라 안 맞추면 1000배 틀림. D13 13.45 + D16 30.42 = 43.87㎏/m × 10m = 0.4387ton. - 철근 갈래는 **품셈 12-3 [주]① 원문**이 정함 — 「간단: 중력식 옹벽 / 보통: 반중력식 옹벽 / 복잡: 부벽식 옹벽」. 거푸집 사용횟수(1-7-1)와 같은 자리라 사람이 고를 칸을 만들지 않음. 캔틸레버식은 예시에 없어 「보통」으로 때우지 않고 미확보로 드러냄. - 전개 결과에 저장 제원(`options`)을 실어 뒤 단계가 형식을 읽게 함. 치수를 다시 쓰라는 뜻이 아니라 읽으라는 것 — 치수 정본은 여전히 하나. - 화면(구조물 원단위 탭)에 묶음 조각과 갈래를 보임. ⚠ 옛 시험 하나를 계약 변경에 맞춰 옮김 — `composite_not_ready` 가 「일위대가가 아직 안 선 공종」에서 「물량을 못 채운 조각」으로 뜻이 바뀜. 검증 — 인계 54건 통과, 전체 594 passed, tsc 오류 0. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -142,12 +142,19 @@
|
||||
"items": [
|
||||
{
|
||||
"group": "지장목제거",
|
||||
"candidates": ["FP-04-01 수확베기", "FP-04-02 단목베기", "FP-04-03 위험목 베기"],
|
||||
"candidates": [
|
||||
"FP-04-01 수확베기",
|
||||
"FP-04-02 단목베기",
|
||||
"FP-04-03 위험목 베기"
|
||||
],
|
||||
"why": "품셈 4장은 벌목을 목적별로 가르는데 임도 지장목이 어느 쪽인지 원본이 말하지 않음"
|
||||
},
|
||||
{
|
||||
"group": "흙깎기/측구터파기 암",
|
||||
"candidates": ["FP-09-04 암절취(리핑)", "FP-09-05 발파암"],
|
||||
"candidates": [
|
||||
"FP-09-04 암절취(리핑)",
|
||||
"FP-09-05 발파암"
|
||||
],
|
||||
"why": "설계자가 넣는 암 갈래 이름(풍화암·연암·보통암·경암)이 리핑이냐 발파냐를 말하지 않음. 갈래마다 시공법을 지정하는 칸이 필요함"
|
||||
}
|
||||
]
|
||||
@@ -158,18 +165,62 @@
|
||||
{
|
||||
"type_id": "retaining_wall",
|
||||
"parts": [
|
||||
"FP-12-01-01#철근구조물",
|
||||
"FP-12-04 합판거푸집",
|
||||
"FP-12-03 철근 현장가공 및 조림",
|
||||
"FP-12-25 기초잡석"
|
||||
{
|
||||
"code": "FP-12-01-01",
|
||||
"name": "콘크리트 타설",
|
||||
"unit": "㎥",
|
||||
"from_components": [
|
||||
"콘크리트",
|
||||
"버림콘크리트"
|
||||
],
|
||||
"kind_suffix": "concrete_placing"
|
||||
},
|
||||
{
|
||||
"code": "FP-12-04",
|
||||
"name": "합판거푸집",
|
||||
"unit": "㎡",
|
||||
"from_components": [
|
||||
"합판거푸집"
|
||||
]
|
||||
},
|
||||
{
|
||||
"code": "FP-12-38",
|
||||
"name": "유로폼",
|
||||
"unit": "㎡",
|
||||
"from_components": [
|
||||
"유로폼"
|
||||
]
|
||||
},
|
||||
{
|
||||
"code": "FP-12-03",
|
||||
"name": "철근 현장가공 및 조립",
|
||||
"unit": "ton",
|
||||
"from_components": [
|
||||
"이형철근 D13",
|
||||
"이형철근 D16"
|
||||
],
|
||||
"unit_from": "kg",
|
||||
"kind_suffix": "rebar_complexity"
|
||||
},
|
||||
{
|
||||
"code": "FP-12-25",
|
||||
"name": "기초잡석",
|
||||
"unit": "㎥",
|
||||
"from_components": [],
|
||||
"not_ready": true,
|
||||
"why": "관측 원단위에 기초잡석 물량이 없음 — 울진 라이브러리 반중력식 H=2.0 항목에 그 줄이 없다"
|
||||
}
|
||||
],
|
||||
"why": "품셈 12장에 「옹벽」 공종이 없음. 실무 내역은 「반중력식옹벽 H=2.0」 한 줄이고 그 일위대가가 위 공종을 묶음.",
|
||||
"needs": "일위대가 조립은 B09 몫 — B08 은 물량과 묶음만 넘김",
|
||||
"placing_note": "타설 코드는 프로젝트 설정의 타설 방식으로 갈림(기본 레디믹스트). 철근구조물 판정은 원단위의 D13·D16 에서 자동으로 나옴.",
|
||||
"not_ready": ["FP-12-03", "FP-12-25"],
|
||||
"not_ready_why": "B09 일위대가가 아직 안 섬 — 지금 세우면 절반짜리가 됨(2026-09-07 조율 창)"
|
||||
"parts_note": "조각마다 **어느 성분에서 나오는지**(`from_components`)를 적는다. 이름을 바꾸면 물량이 조용히 0 이 되므로 원단위 성분 이름과 정확히 같아야 하고, 못 찾으면 드러낸다. `unit_from` 이 있으면 그 단위에서 목표 단위로 환산한다 — **철근은 ㎏ → ton (÷1000)**. ⚠ 단위를 안 맞추면 1000배 틀린다."
|
||||
}
|
||||
]
|
||||
],
|
||||
"unit_conversion": {
|
||||
"note": "조각 단위 환산. 단가의 단위(원/ton)와 원단위의 단위(㎏)가 달라 반드시 맞춰야 한다.",
|
||||
"kg_to_ton": 0.001
|
||||
}
|
||||
},
|
||||
"concrete_placing": {
|
||||
"note": "콘크리트 타설은 **타설 방식 × 구조물 종류**로 갈린다. 방식은 설계 판단이라 프로젝트 설정(`quantity.concrete_placing_method`)이 고르고, 종류는 **원단위에 철근이 있나 없나로 자동 판정**한다 — 사람이 고르는 값이 아니다(2026-09-07 3자 확정).",
|
||||
@@ -180,7 +231,11 @@
|
||||
},
|
||||
"default_method": "ready_mixed",
|
||||
"default_is_provisional": true,
|
||||
"structure_kinds": ["무근구조물", "철근구조물", "소형구조물"],
|
||||
"structure_kinds": [
|
||||
"무근구조물",
|
||||
"철근구조물",
|
||||
"소형구조물"
|
||||
],
|
||||
"kind_rule": "원단위 성분에 철근(이형철근·원형철근)이 있으면 철근구조물, 없으면 무근구조물. 소형구조물 판정 기준은 미확보.",
|
||||
"price_hint_krw_per_m3": {
|
||||
"note": "⚠ **표시 전용.** 사용자가 타설 방식을 고를 때 「정하면 얼마나 달라지는지」를 보이려고 둔 값이며 B08 의 어떤 계산에도 들어가지 않는다(금액은 B09 몫 — 8-2 경계). 값은 B09 가 2026-09-07 에 낸 철근구조물 기준 단가이고, 요율·노임이 바뀌면 어긋난다 — 화면이 「참고」임을 함께 적는다.",
|
||||
|
||||
Reference in New Issue
Block a user