fix(master_data): 8-1-7 손료 보정 — 불도저 · 로더(무한궤도) · 덤프트럭 경비 로직 한 줄
- 「8 기계 시간당 경비(손료 보정)」 — 보정작업 입력 · 가산비율(원문 8-1-7 표) - 불도저(무한궤도) 19톤 미만 · 타이어·습지 불도저 · 로더(무한궤도) · 덤프트럭 18톤 미만(주①) - 「8 기계 시간당 경비」 는 부르는 곳 529 곳이 그대로 — 비고에 보정 줄 안내 Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01JgUhN55Z3BCYhUJTjwTNfj
This commit is contained in:
@@ -130,7 +130,140 @@
|
||||
{ "이름": "기계손료", "식": "손료", "비목": "경비", "출처": "건설품셈 공통 8-1-6 2" }
|
||||
],
|
||||
"끝수": "손료 원 미만 버림(건설품셈 공통 8-1-5 12) · 합계 원문 규정 없음",
|
||||
"비고": "고르기는 쓰는 기계만 — 주연료·조종원이 있는 기계는 더 넣어 씀"
|
||||
"비고": "고르기는 쓰는 기계만 — 주연료·조종원이 있는 기계는 더 넣어 씀 · 암석·전석섞인토사 작업의 불도저(19톤 미만 · 타이어·습지)·로더(무한궤도)·덤프트럭(18톤 미만)은 「8 기계 시간당 경비(손료 보정)」(8-1-7 1)"
|
||||
},
|
||||
{
|
||||
"열쇠": "8 기계 시간당 경비(손료 보정)",
|
||||
"이름": "기계 시간당 기계경비(불도저 · 로더(무한궤도) · 덤프트럭 손료 보정)",
|
||||
"결과단위": "원/시간",
|
||||
"출처": "건설품셈 공통 8-1-5 · 8-1-6 · 8-1-7",
|
||||
"소유": "공용",
|
||||
"입력": [
|
||||
{
|
||||
"이름": "기계",
|
||||
"고르기": [
|
||||
"0101-0007",
|
||||
"0101-0010",
|
||||
"0101-0012",
|
||||
"0102-0015",
|
||||
"0102-0028",
|
||||
"0102-0033",
|
||||
"0121-0004",
|
||||
"0121-0013",
|
||||
"0301-0057",
|
||||
"0301-0076",
|
||||
"0301-0095",
|
||||
"0301-0115",
|
||||
"0301-0134",
|
||||
"0301-0153",
|
||||
"0301-0172",
|
||||
"0301-0287",
|
||||
"0602-0025",
|
||||
"0602-0045",
|
||||
"0602-0060",
|
||||
"0602-0080",
|
||||
"0602-0105",
|
||||
"0602-0150"
|
||||
]
|
||||
},
|
||||
{
|
||||
"이름": "지역",
|
||||
"고르기": [
|
||||
"전국평균",
|
||||
"전국",
|
||||
"서울",
|
||||
"경기",
|
||||
"강원",
|
||||
"충북",
|
||||
"충남",
|
||||
"전북",
|
||||
"경북",
|
||||
"경남",
|
||||
"부산",
|
||||
"제주",
|
||||
"대구",
|
||||
"인천",
|
||||
"대전",
|
||||
"울산",
|
||||
"세종",
|
||||
"전남광주"
|
||||
],
|
||||
"출처": "건설품셈 공통 8-1-7 5"
|
||||
},
|
||||
{
|
||||
"이름": "보정작업",
|
||||
"고르기": [
|
||||
"해당 없음",
|
||||
"암석작업(연암・보통암・경암)",
|
||||
"전석섞인토사"
|
||||
],
|
||||
"출처": "건설품셈 공통 8-1-7 1"
|
||||
}
|
||||
],
|
||||
"중간": [
|
||||
{
|
||||
"이름": "보정기종",
|
||||
"식": "만약(기계 == '0101-0007' 또는 기계 == '0101-0010' 또는 기계 == '0101-0012' 또는 기계 == '0102-0015' 또는 기계 == '0102-0028' 또는 기계 == '0102-0033' 또는 기계 == '0121-0004' 또는 기계 == '0121-0013', '불도저(19톤이상 제외)', 만약(기계 == '0602-0025' 또는 기계 == '0602-0045' 또는 기계 == '0602-0060' 또는 기계 == '0602-0080' 또는 기계 == '0602-0105' 또는 기계 == '0602-0150', '덤프트럭', '굴착기(무한궤도) 및 로더(무한궤도)'))",
|
||||
"출처": "건설품셈 공통 8-1-7 1 주①"
|
||||
},
|
||||
{
|
||||
"이름": "가산비율",
|
||||
"식": "만약(보정작업 == '해당 없음', 0, 찾기(계수:건설품셈:8-1-7 손료보정, 기종=보정기종, 작업=보정작업).가산비율)",
|
||||
"출처": "건설품셈 공통 8-1-7 1"
|
||||
},
|
||||
{
|
||||
"이름": "손료",
|
||||
"식": "버림(기계:건설품셈:{기계}.가격 * 1000 * ((기계:건설품셈:{기계}.상각비계수 + 기계:건설품셈:{기계}.정비비계수) * (1 + 가산비율 / 100) + 기계:건설품셈:{기계}.관리비계수) / 10000000, 0)",
|
||||
"출처": "건설품셈 공통 8-1-5 12 · 8-1-6 4 · 8-1-7 1"
|
||||
},
|
||||
{
|
||||
"이름": "연료",
|
||||
"식": "기계:건설품셈:{기계}.주연료종류",
|
||||
"출처": "건설품셈 공통 8-4 주①㉰"
|
||||
},
|
||||
{
|
||||
"이름": "직종",
|
||||
"식": "기계:건설품셈:{기계}.조종원직종",
|
||||
"출처": "건설품셈 공통 8-1-3 5"
|
||||
}
|
||||
],
|
||||
"호표": [
|
||||
{
|
||||
"종류": "재료",
|
||||
"요소": "재료:오피넷유가:{연료}:{지역}",
|
||||
"이름": "주연료",
|
||||
"단위": "ℓ",
|
||||
"수량": "기계:건설품셈:{기계}.주연료",
|
||||
"비목": "재료비",
|
||||
"출처": "건설품셈 공통 8-4-1"
|
||||
},
|
||||
{
|
||||
"종류": "인력",
|
||||
"요소": "인력:건설노임:{직종}",
|
||||
"이름": "조종원",
|
||||
"단위": "인",
|
||||
"수량": "기계:건설품셈:{기계}.조종원 / 8",
|
||||
"비목": "노무비",
|
||||
"출처": "건설품셈 공통 8-1-3 6",
|
||||
"비고": "환산 근거 미확인 — 우선 하루 ÷ 8"
|
||||
}
|
||||
],
|
||||
"덧줄": [
|
||||
{
|
||||
"이름": "잡재료비",
|
||||
"식": "재료비 * 기계:건설품셈:{기계}.잡재료율 / 100",
|
||||
"비목": "재료비",
|
||||
"출처": "건설품셈 공통 8-4 주②"
|
||||
},
|
||||
{
|
||||
"이름": "기계손료",
|
||||
"식": "손료",
|
||||
"비목": "경비",
|
||||
"출처": "건설품셈 공통 8-1-6 2"
|
||||
}
|
||||
],
|
||||
"끝수": "손료 원 미만 버림(건설품셈 공통 8-1-5 12) · 합계 원문 규정 없음",
|
||||
"비고": "주① 대로 불도저(무한궤도) 19톤 이상 · 덤프트럭 18톤 이상은 고르기에서 뺌(보정 없음 — 「8 기계 시간당 경비」) · 타이어·습지 불도저는 톤수와 관계없이 보정 · 굴착기(무한궤도)는 「8 굴착기(무한궤도) 시간당 경비」"
|
||||
},
|
||||
{
|
||||
"열쇠": "8 굴착기+부착용 집게 시간당 경비",
|
||||
|
||||
@@ -93,6 +93,22 @@ def test_굴착기_암석_보정(whole):
|
||||
assert cents(got["계"]) == "89864.24"
|
||||
|
||||
|
||||
def test_불도저_덤프_로더_손료_보정(whole):
|
||||
# 손료 = 가격 × 1000 × ((상각 + 정비) × (1 + 가산) + 관리) ÷ 10^7 · 원 미만 버림(8-1-7 1)
|
||||
ref = "건설품셈:8 기계 시간당 경비(손료 보정)"
|
||||
rock, boulder = "암석작업(연암・보통암・경암)", "전석섞인토사"
|
||||
for machine, work, cost in (
|
||||
("0602-0150", rock, 24285), # 덤프트럭 25%
|
||||
("0602-0150", "해당 없음", 20659),
|
||||
("0101-0010", boulder, 32794), # 불도저 10%
|
||||
("0301-0095", rock, 20985), # 로더(무한궤도) 20%
|
||||
):
|
||||
given = {"기계": machine, "지역": "전국평균", "보정작업": work}
|
||||
assert mf.run(whole, ref, given)["중간"]["손료"] == cost
|
||||
plain = mf.run(whole, "건설품셈:8 기계 시간당 경비", {"기계": "0602-0150", "지역": "전국평균"})
|
||||
assert plain["중간"]["손료"] == 20659
|
||||
|
||||
|
||||
def test_노체포설(whole):
|
||||
assert mf.run(whole, "산림품셈:9-16-1 노체포설 작업량", {})["결과"] == Decimal("24.255")
|
||||
got = mf.run(whole, "산림품셈:9-16-1 노체포설", {"지역": "전국평균", "보정작업": "해당 없음"})
|
||||
|
||||
Reference in New Issue
Block a user