feat(master_data): 건설품셈 토목 2장(하천) 로직 7줄 · 시험 1개
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01JgUhN55Z3BCYhUJTjwTNfj
This commit is contained in:
@@ -0,0 +1,394 @@
|
||||
{
|
||||
"그룹": "로직",
|
||||
"원문": "건설품셈",
|
||||
"판": "2026",
|
||||
"줄": [
|
||||
{
|
||||
"열쇠": "2-1-1 사석부설",
|
||||
"이름": "사석부설",
|
||||
"결과단위": "원/㎥",
|
||||
"출처": "건설품셈 토목 2-1-1",
|
||||
"소유": "공용",
|
||||
"입력": [
|
||||
{
|
||||
"이름": "지역",
|
||||
"고르기": [
|
||||
"전국평균",
|
||||
"전국",
|
||||
"서울",
|
||||
"경기",
|
||||
"강원",
|
||||
"충북",
|
||||
"충남",
|
||||
"전북",
|
||||
"경북",
|
||||
"경남",
|
||||
"부산",
|
||||
"제주",
|
||||
"대구",
|
||||
"인천",
|
||||
"대전",
|
||||
"울산",
|
||||
"세종",
|
||||
"전남광주"
|
||||
],
|
||||
"출처": "건설품셈 공통 8-1-7 5"
|
||||
},
|
||||
{ "이름": "보정작업", "고르기": ["해당 없음", "암석작업(연암・보통암・경암)", "전석섞인토사"], "출처": "건설품셈 공통 8-1-7 1" }
|
||||
],
|
||||
"중간": [],
|
||||
"호표": [
|
||||
{ "종류": "인력", "요소": "인력:건설노임:1002", "이름": "보통인부", "단위": "인", "수량": "찾기(소요량:건설품셈:2-1-1 사석부설).보통인부", "비목": "노무비" },
|
||||
{
|
||||
"종류": "로직",
|
||||
"요소": "로직(건설품셈:8 굴착기(무한궤도) 시간당 경비, 기계='0201-0100', 지역=지역, 보정작업=보정작업)",
|
||||
"이름": "굴착기 1.0㎥",
|
||||
"단위": "시간",
|
||||
"수량": "찾기(소요량:건설품셈:2-1-1 사석부설).굴삭기"
|
||||
}
|
||||
],
|
||||
"덧줄": [],
|
||||
"끝수": null,
|
||||
"비고": "필터매트는 건설품셈 공통 5-2-1 매트부설 · 사석 재료 원문 표에 없음"
|
||||
},
|
||||
{
|
||||
"열쇠": "2-1-2 사석고르기",
|
||||
"이름": "사석고르기",
|
||||
"결과단위": "원/㎡",
|
||||
"출처": "건설품셈 토목 2-1-2",
|
||||
"소유": "공용",
|
||||
"입력": [],
|
||||
"중간": [],
|
||||
"호표": [
|
||||
{ "종류": "인력", "요소": "인력:건설노임:1002", "이름": "보통인부", "단위": "인", "수량": "찾기(소요량:건설품셈:2-1-2 사석고르기).보통인부", "비목": "노무비" }
|
||||
],
|
||||
"덧줄": [],
|
||||
"끝수": null,
|
||||
"비고": "잡석 채움 포함(주②) · 막힘: 굴삭기+부착용집게 빠짐 — 칸 이름 「굴삭기+부착용집게」 식에서 못 부름"
|
||||
},
|
||||
{
|
||||
"열쇠": "2-2-2 매트리스형 돌망태 설치",
|
||||
"이름": "매트리스형 돌망태 설치",
|
||||
"결과단위": "원/㎡",
|
||||
"출처": "건설품셈 토목 2-2-2",
|
||||
"소유": "공용",
|
||||
"입력": [
|
||||
{
|
||||
"이름": "지역",
|
||||
"고르기": [
|
||||
"전국평균",
|
||||
"전국",
|
||||
"서울",
|
||||
"경기",
|
||||
"강원",
|
||||
"충북",
|
||||
"충남",
|
||||
"전북",
|
||||
"경북",
|
||||
"경남",
|
||||
"부산",
|
||||
"제주",
|
||||
"대구",
|
||||
"인천",
|
||||
"대전",
|
||||
"울산",
|
||||
"세종",
|
||||
"전남광주"
|
||||
],
|
||||
"출처": "건설품셈 공통 8-1-7 5"
|
||||
},
|
||||
{ "이름": "보정작업", "고르기": ["해당 없음", "암석작업(연암・보통암・경암)", "전석섞인토사"], "출처": "건설품셈 공통 8-1-7 1" }
|
||||
],
|
||||
"중간": [],
|
||||
"호표": [
|
||||
{ "종류": "인력", "요소": "인력:건설노임:1033", "이름": "석공", "단위": "인", "수량": "찾기(소요량:건설품셈:2-2-2 매트리스형 돌망태 설치).석공", "비목": "노무비" },
|
||||
{
|
||||
"종류": "인력",
|
||||
"요소": "인력:건설노임:1003",
|
||||
"이름": "특별인부",
|
||||
"단위": "인",
|
||||
"수량": "찾기(소요량:건설품셈:2-2-2 매트리스형 돌망태 설치).특별인부",
|
||||
"비목": "노무비"
|
||||
},
|
||||
{
|
||||
"종류": "인력",
|
||||
"요소": "인력:건설노임:1002",
|
||||
"이름": "보통인부",
|
||||
"단위": "인",
|
||||
"수량": "찾기(소요량:건설품셈:2-2-2 매트리스형 돌망태 설치).보통인부",
|
||||
"비목": "노무비"
|
||||
},
|
||||
{
|
||||
"종류": "로직",
|
||||
"요소": "로직(건설품셈:8 굴착기(무한궤도) 시간당 경비, 기계='0201-0100', 지역=지역, 보정작업=보정작업)",
|
||||
"이름": "굴착기 1.0㎥",
|
||||
"단위": "시간",
|
||||
"수량": "찾기(소요량:건설품셈:2-2-2 매트리스형 돌망태 설치).굴착기"
|
||||
}
|
||||
],
|
||||
"덧줄": [],
|
||||
"끝수": null,
|
||||
"비고": "폭 200㎝ · 높이 30㎝ 기준(주①) · 필터매트는 건설품셈 공통 5-2-1 매트부설 · 망태·망태석 재료 원문 표에 없음"
|
||||
},
|
||||
{
|
||||
"열쇠": "2-2-3 돌망태형옹벽 설치",
|
||||
"이름": "돌망태형옹벽 설치",
|
||||
"결과단위": "원/㎥",
|
||||
"출처": "건설품셈 토목 2-2-3",
|
||||
"소유": "공용",
|
||||
"입력": [
|
||||
{
|
||||
"이름": "지역",
|
||||
"고르기": [
|
||||
"전국평균",
|
||||
"전국",
|
||||
"서울",
|
||||
"경기",
|
||||
"강원",
|
||||
"충북",
|
||||
"충남",
|
||||
"전북",
|
||||
"경북",
|
||||
"경남",
|
||||
"부산",
|
||||
"제주",
|
||||
"대구",
|
||||
"인천",
|
||||
"대전",
|
||||
"울산",
|
||||
"세종",
|
||||
"전남광주"
|
||||
],
|
||||
"출처": "건설품셈 공통 8-1-7 5"
|
||||
},
|
||||
{ "이름": "보정작업", "고르기": ["해당 없음", "암석작업(연암・보통암・경암)", "전석섞인토사"], "출처": "건설품셈 공통 8-1-7 1" }
|
||||
],
|
||||
"중간": [],
|
||||
"호표": [
|
||||
{ "종류": "인력", "요소": "인력:건설노임:1033", "이름": "석공", "단위": "인", "수량": "찾기(소요량:건설품셈:2-2-3 돌망태형옹벽 설치).석공", "비목": "노무비" },
|
||||
{
|
||||
"종류": "인력",
|
||||
"요소": "인력:건설노임:1003",
|
||||
"이름": "특별인부",
|
||||
"단위": "인",
|
||||
"수량": "찾기(소요량:건설품셈:2-2-3 돌망태형옹벽 설치).특별인부",
|
||||
"비목": "노무비"
|
||||
},
|
||||
{
|
||||
"종류": "인력",
|
||||
"요소": "인력:건설노임:1002",
|
||||
"이름": "보통인부",
|
||||
"단위": "인",
|
||||
"수량": "찾기(소요량:건설품셈:2-2-3 돌망태형옹벽 설치).보통인부",
|
||||
"비목": "노무비"
|
||||
},
|
||||
{
|
||||
"종류": "로직",
|
||||
"요소": "로직(건설품셈:8 굴착기(무한궤도) 시간당 경비, 기계='0201-0060', 지역=지역, 보정작업=보정작업)",
|
||||
"이름": "굴착기 0.6㎥",
|
||||
"단위": "시간",
|
||||
"수량": "찾기(소요량:건설품셈:2-2-3 돌망태형옹벽 설치).굴착기"
|
||||
}
|
||||
],
|
||||
"덧줄": [],
|
||||
"끝수": null,
|
||||
"비고": "높이 5m 이하(주①) · 터파기·지반고르기 별도(주③) · 필터매트는 건설품셈 공통 5-2-1 매트부설 · 철망태·망태석 재료 원문 표에 없음"
|
||||
},
|
||||
{
|
||||
"열쇠": "2-3-1 식생매트 설치",
|
||||
"이름": "식생매트 설치",
|
||||
"결과단위": "원/㎡",
|
||||
"출처": "건설품셈 토목 2-3-1",
|
||||
"소유": "공용",
|
||||
"입력": [
|
||||
{ "이름": "작업", "고르기": ["식생매트설치", "복토"] },
|
||||
{
|
||||
"이름": "지역",
|
||||
"고르기": [
|
||||
"전국평균",
|
||||
"전국",
|
||||
"서울",
|
||||
"경기",
|
||||
"강원",
|
||||
"충북",
|
||||
"충남",
|
||||
"전북",
|
||||
"경북",
|
||||
"경남",
|
||||
"부산",
|
||||
"제주",
|
||||
"대구",
|
||||
"인천",
|
||||
"대전",
|
||||
"울산",
|
||||
"세종",
|
||||
"전남광주"
|
||||
],
|
||||
"출처": "건설품셈 공통 8-1-7 5"
|
||||
},
|
||||
{ "이름": "보정작업", "고르기": ["해당 없음", "암석작업(연암・보통암・경암)", "전석섞인토사"], "출처": "건설품셈 공통 8-1-7 1" }
|
||||
],
|
||||
"중간": [],
|
||||
"호표": [
|
||||
{
|
||||
"종류": "인력",
|
||||
"요소": "인력:건설노임:1003",
|
||||
"이름": "특별인부",
|
||||
"단위": "인",
|
||||
"수량": "만약(작업 == '식생매트설치', 찾기(소요량:건설품셈:2-3-1 식생매트 설치, 작업=작업).특별인부, 0)",
|
||||
"비목": "노무비"
|
||||
},
|
||||
{
|
||||
"종류": "인력",
|
||||
"요소": "인력:건설노임:1002",
|
||||
"이름": "보통인부",
|
||||
"단위": "인",
|
||||
"수량": "찾기(소요량:건설품셈:2-3-1 식생매트 설치, 작업=작업).보통인부",
|
||||
"비목": "노무비"
|
||||
},
|
||||
{
|
||||
"종류": "로직",
|
||||
"요소": "로직(건설품셈:8 굴착기(무한궤도) 시간당 경비, 기계='0201-0060', 지역=지역, 보정작업=보정작업)",
|
||||
"이름": "굴착기 0.6㎥",
|
||||
"단위": "시간",
|
||||
"수량": "만약(작업 == '복토', 찾기(소요량:건설품셈:2-3-1 식생매트 설치, 작업=작업).굴삭기, 0)"
|
||||
}
|
||||
],
|
||||
"덧줄": [],
|
||||
"끝수": null,
|
||||
"비고": "작업(식생매트설치 · 복토)마다 따로 계상 — 둘 다 하면 두 줄 · 종자살포·잔디·관수·시비 별도(주③) · 식생매트 재료 원문 표에 없음"
|
||||
},
|
||||
{
|
||||
"열쇠": "2-3-2 블록 붙이기(인력)",
|
||||
"이름": "블록 붙이기(인력)",
|
||||
"결과단위": "원/㎡",
|
||||
"출처": "건설품셈 토목 2-3-2",
|
||||
"소유": "공용",
|
||||
"입력": [],
|
||||
"중간": [],
|
||||
"호표": [
|
||||
{
|
||||
"종류": "인력",
|
||||
"요소": "인력:건설노임:1003",
|
||||
"이름": "특별인부",
|
||||
"단위": "인",
|
||||
"수량": "찾기(소요량:건설품셈:2-3-2 블록 붙이기(인력)).특별인부",
|
||||
"비목": "노무비"
|
||||
},
|
||||
{
|
||||
"종류": "인력",
|
||||
"요소": "인력:건설노임:1002",
|
||||
"이름": "보통인부",
|
||||
"단위": "인",
|
||||
"수량": "찾기(소요량:건설품셈:2-3-2 블록 붙이기(인력)).보통인부",
|
||||
"비목": "노무비"
|
||||
}
|
||||
],
|
||||
"덧줄": [],
|
||||
"끝수": null,
|
||||
"비고": "비탈면 고르기·흙 채움·잔디심기 별도(주③) · 호안블록 재료 원문 표에 없음"
|
||||
},
|
||||
{
|
||||
"열쇠": "2-3-3 블록 붙이기(기계)",
|
||||
"이름": "블록 붙이기(기계)",
|
||||
"결과단위": "원/㎡",
|
||||
"출처": "건설품셈 토목 2-3-3",
|
||||
"소유": "공용",
|
||||
"입력": [
|
||||
{ "이름": "장비", "고르기": ["크레인", "굴착기"], "출처": "건설품셈 토목 2-3-3 주④" },
|
||||
{
|
||||
"이름": "크레인",
|
||||
"고르기": [
|
||||
"2105-0005",
|
||||
"2104-0010",
|
||||
"2104-0015",
|
||||
"2104-0020",
|
||||
"2104-0025",
|
||||
"2104-0030",
|
||||
"2104-0035",
|
||||
"2104-0040",
|
||||
"2104-0045",
|
||||
"2104-0050",
|
||||
"2104-0060",
|
||||
"2104-0070",
|
||||
"2104-0080",
|
||||
"2104-0100",
|
||||
"2104-0130",
|
||||
"2104-0160",
|
||||
"2104-0200",
|
||||
"2104-0220",
|
||||
"2104-0250",
|
||||
"2104-0300",
|
||||
"2105-0002",
|
||||
"2105-0003",
|
||||
"2105-0010",
|
||||
"2105-0015",
|
||||
"2105-0018"
|
||||
]
|
||||
},
|
||||
{
|
||||
"이름": "지역",
|
||||
"고르기": [
|
||||
"전국평균",
|
||||
"전국",
|
||||
"서울",
|
||||
"경기",
|
||||
"강원",
|
||||
"충북",
|
||||
"충남",
|
||||
"전북",
|
||||
"경북",
|
||||
"경남",
|
||||
"부산",
|
||||
"제주",
|
||||
"대구",
|
||||
"인천",
|
||||
"대전",
|
||||
"울산",
|
||||
"세종",
|
||||
"전남광주"
|
||||
],
|
||||
"출처": "건설품셈 공통 8-1-7 5"
|
||||
},
|
||||
{ "이름": "보정작업", "고르기": ["해당 없음", "암석작업(연암・보통암・경암)", "전석섞인토사"], "출처": "건설품셈 공통 8-1-7 1" }
|
||||
],
|
||||
"중간": [],
|
||||
"호표": [
|
||||
{
|
||||
"종류": "인력",
|
||||
"요소": "인력:건설노임:1003",
|
||||
"이름": "특별인부",
|
||||
"단위": "인",
|
||||
"수량": "찾기(소요량:건설품셈:2-3-3 블록 붙이기(기계)).특별인부",
|
||||
"비목": "노무비"
|
||||
},
|
||||
{
|
||||
"종류": "인력",
|
||||
"요소": "인력:건설노임:1002",
|
||||
"이름": "보통인부",
|
||||
"단위": "인",
|
||||
"수량": "찾기(소요량:건설품셈:2-3-3 블록 붙이기(기계)).보통인부",
|
||||
"비목": "노무비"
|
||||
},
|
||||
{
|
||||
"종류": "로직",
|
||||
"요소": "로직(건설품셈:8 기계 시간당 경비, 기계=크레인, 지역=지역)",
|
||||
"이름": "크레인",
|
||||
"단위": "시간",
|
||||
"수량": "만약(장비 == '크레인', 찾기(소요량:건설품셈:2-3-3 블록 붙이기(기계)).크레인, 0)"
|
||||
},
|
||||
{
|
||||
"종류": "로직",
|
||||
"요소": "로직(건설품셈:8 굴착기(무한궤도) 시간당 경비, 기계='0201-0020', 지역=지역, 보정작업=보정작업)",
|
||||
"이름": "굴착기 0.2㎥",
|
||||
"단위": "시간",
|
||||
"수량": "만약(장비 == '굴착기', 찾기(소요량:건설품셈:2-3-3 블록 붙이기(기계) 계수 주④, 구분='크레인 대체 굴착기 사용시간').값, 0)",
|
||||
"출처": "건설품셈 토목 2-3-3 주④"
|
||||
}
|
||||
],
|
||||
"덧줄": [],
|
||||
"끝수": null,
|
||||
"비고": "크레인 종류·규격 설계자 고름 — 원문 규격 10톤 · 현장여건 따라 크레인 대신 굴착기 0.2㎥ 0.063hr(주④) · 비탈면 고르기·흙 채움·잔디심기 별도(주③) · 호안블록 재료 원문 표에 없음"
|
||||
}
|
||||
]
|
||||
}
|
||||
@@ -20,6 +20,7 @@ SAMPLES = [
|
||||
"로직_건설품셈_공통7장.json",
|
||||
"로직_건설품셈_공통8장.json",
|
||||
"로직_건설품셈_토목1장.json",
|
||||
"로직_건설품셈_토목2장.json",
|
||||
"로직_산림품셈_03장.json",
|
||||
"로직_산림품셈_04장.json",
|
||||
"로직_산림품셈_05장.json",
|
||||
@@ -265,6 +266,13 @@ def test_토목_보도블록_감(whole):
|
||||
assert got["줄"][1]["수량"] == Decimal(1) / Decimal(171)
|
||||
|
||||
|
||||
def test_토목_블록붙이기_굴착기_대체(whole):
|
||||
"""토목 2-3-3 주④ — 크레인 대신 굴착기 0.2㎥ 0.063hr · 크레인 0."""
|
||||
given = {"장비": "굴착기", "크레인": "2104-0010", "지역": "전국평균", "보정작업": "해당 없음"}
|
||||
got = mf.run(whole, "건설품셈:2-3-3 블록 붙이기(기계)", given)
|
||||
assert [line["수량"] for line in got["줄"][2:]] == [0, Decimal("0.063")]
|
||||
|
||||
|
||||
def test_범위_입력은_막음(whole):
|
||||
with pytest.raises(mf.FormulaError):
|
||||
mf.run(
|
||||
|
||||
Reference in New Issue
Block a user