Merge remote-tracking branch 'origin/sub_laptop_1' into sub_desktop_1

This commit is contained in:
2026-09-19 16:43:15 +09:00
5 changed files with 955 additions and 2 deletions
@@ -69,7 +69,7 @@
"출처": "건설품셈 공통 8-1-5 · 8-1-6",
"소유": "공용",
"입력": [
{ "이름": "기계", "고르기": ["1730-0015", "7204-0055"] },
{ "이름": "기계", "고르기": ["1730-0015", "7204-0055", "0602-0150", "2702-0020", "0101-0007", "0101-0010", "0101-0012", "0101-0019", "0101-0032"] },
{
"이름": "지역",
"고르기": [
@@ -139,7 +139,7 @@
"출처": "건설품셈 공통 8-1-5 · 8-1-6 · 8-1-7 · 8-4-8 주⑤",
"소유": "공용",
"입력": [
{ "이름": "기계", "고르기": ["0201-0060"] },
{ "이름": "기계", "고르기": ["0201-0060", "0201-0080"] },
{ "이름": "집게", "고르기": ["7206-0070"] },
{
"이름": "지역",
@@ -0,0 +1,656 @@
{
"그룹": "로직",
"원문": "산림품셈",
"판": "2026-01-01",
"줄": [
{
"열쇠": "10-3 골재운반 작업량",
"이름": "골재운반 덤프트럭 시간당 작업량",
"결과단위": "㎥/시간",
"출처": "산림품셈 10-3-1 주",
"소유": "공용",
"입력": [{ "이름": "qt", "단위": "㎥" }, { "이름": "f", "단위": "" }, { "이름": "E", "단위": "" }, { "이름": "Cm", "단위": "분" }],
"중간": [],
"결과": { "식": "반올림(60 * qt * f * E / Cm, 3)", "출처": "건설품셈 공통 8-1-4 주①" },
"끝수": "소수 3자리 사사오입(건설품셈 공통 8-1-4 주①)",
"비고": "원문은 식만(Q=60×qt×f×E/㎝) — qt · f · E · ㎝ 값 없음 · 설계자 입력"
},
{
"열쇠": "10-3-1 모래",
"이름": "골재운반 모래(덤프 15ton)",
"결과단위": "원/㎥",
"출처": "산림품셈 10-3-1",
"소유": "공용",
"입력": [
{ "이름": "qt", "단위": "㎥" },
{ "이름": "f", "단위": "" },
{ "이름": "E", "단위": "" },
{ "이름": "Cm", "단위": "분" },
{
"이름": "지역",
"고르기": [
"전국평균",
"전국",
"서울",
"경기",
"강원",
"충북",
"충남",
"전북",
"경북",
"경남",
"부산",
"제주",
"대구",
"인천",
"대전",
"울산",
"세종",
"전남광주"
],
"출처": "건설품셈 공통 8-1-7 5"
}
],
"중간": [{ "이름": "작업량", "식": "로직(산림품셈:10-3 골재운반 작업량, qt=qt, f=f, E=E, Cm=Cm)" }],
"호표": [
{ "종류": "로직", "요소": "로직(건설품셈:8 기계 시간당 경비, 기계='0602-0150', 지역=지역)", "이름": "덤프트럭 15ton", "단위": "시간", "수량": "1 / 작업량" }
],
"덧줄": [],
"끝수": null,
"비고": "구입 별도계상 · 덤프 손료 보정 없음"
},
{
"열쇠": "10-3-2 잡석",
"이름": "골재운반 잡석(덤프 15ton)",
"결과단위": "원/㎥",
"출처": "산림품셈 10-3-2",
"소유": "공용",
"입력": [
{ "이름": "qt", "단위": "㎥" },
{ "이름": "f", "단위": "" },
{ "이름": "E", "단위": "" },
{ "이름": "Cm", "단위": "분" },
{
"이름": "지역",
"고르기": [
"전국평균",
"전국",
"서울",
"경기",
"강원",
"충북",
"충남",
"전북",
"경북",
"경남",
"부산",
"제주",
"대구",
"인천",
"대전",
"울산",
"세종",
"전남광주"
],
"출처": "건설품셈 공통 8-1-7 5"
}
],
"중간": [{ "이름": "작업량", "식": "로직(산림품셈:10-3 골재운반 작업량, qt=qt, f=f, E=E, Cm=Cm)" }],
"호표": [
{ "종류": "로직", "요소": "로직(건설품셈:8 기계 시간당 경비, 기계='0602-0150', 지역=지역)", "이름": "덤프트럭 15ton", "단위": "시간", "수량": "1 / 작업량" }
],
"덧줄": [],
"끝수": null,
"비고": "골재생산 별도계상 · 덤프 손료 보정 없음"
},
{
"열쇠": "10-3-3 혼합골재",
"이름": "골재운반 혼합골재(덤프 15ton)",
"결과단위": "원/㎥",
"출처": "산림품셈 10-3-3",
"소유": "공용",
"입력": [
{ "이름": "qt", "단위": "㎥" },
{ "이름": "f", "단위": "" },
{ "이름": "E", "단위": "" },
{ "이름": "Cm", "단위": "분" },
{
"이름": "지역",
"고르기": [
"전국평균",
"전국",
"서울",
"경기",
"강원",
"충북",
"충남",
"전북",
"경북",
"경남",
"부산",
"제주",
"대구",
"인천",
"대전",
"울산",
"세종",
"전남광주"
],
"출처": "건설품셈 공통 8-1-7 5"
}
],
"중간": [{ "이름": "작업량", "식": "로직(산림품셈:10-3 골재운반 작업량, qt=qt, f=f, E=E, Cm=Cm)" }],
"호표": [
{ "종류": "로직", "요소": "로직(건설품셈:8 기계 시간당 경비, 기계='0602-0150', 지역=지역)", "이름": "덤프트럭 15ton", "단위": "시간", "수량": "1 / 작업량" }
],
"덧줄": [],
"끝수": null,
"비고": "하차비 1회 — 값 없음 · 덤프 손료 보정 없음"
},
{
"열쇠": "10-4 중기운반 트레일러",
"이름": "중기운반 트레일러(20ton)",
"결과단위": "원/회",
"출처": "산림품셈 10-4",
"소유": "공용",
"입력": [
{ "이름": "t2", "단위": "분" },
{
"이름": "지역",
"고르기": [
"전국평균",
"전국",
"서울",
"경기",
"강원",
"충북",
"충남",
"전북",
"경북",
"경남",
"부산",
"제주",
"대구",
"인천",
"대전",
"울산",
"세종",
"전남광주"
],
"출처": "건설품셈 공통 8-1-7 5"
}
],
"중간": [
{
"이름": "Cm",
"식": "찾기(소요량:산림품셈:10-4 중기운반, 구분='운반', 운반수단='트레일러운반(20TON)', 항목='t1').값 + t2 + 찾기(소요량:산림품셈:10-4 중기운반, 구분='운반', 운반수단='트레일러운반(20TON)', 항목='t3').값 + 찾기(소요량:산림품셈:10-4 중기운반, 구분='운반', 운반수단='트레일러운반(20TON)', 항목='t4').값",
"출처": "산림품셈 10-4 「㎝=t1+t2+t3+t4」"
},
{ "이름": "N", "식": "60 * 0.9 / Cm", "출처": "산림품셈 10-4 「N=60×0.9/㎝」" }
],
"호표": [
{
"종류": "로직",
"요소": "로직(건설품셈:8 기계 시간당 경비, 기계='2702-0020', 지역=지역)",
"이름": "트럭 트랙터 및 평판트레일러 20ton",
"단위": "시간",
"수량": "1 / N"
}
],
"덧줄": [],
"끝수": null,
"비고": "해석: N = 시간당 운반 횟수 · 1회 = 기계 1/N 시간 · t2 는 「운반시간 참조」 — 설계자 입력(분) · To=㎝-(t1+t3) 쓰는 곳 원문에 없음 · 트럭운반(10.5ton)은 화물트럭 기계 요소 없어 빠짐 · 자주식은 제외(주)"
},
{
"열쇠": "10-7-1 노선선정",
"이름": "모노레일 노선선정",
"결과단위": "원/100m",
"출처": "산림품셈 10-7-1",
"소유": "공용",
"입력": [{ "이름": "경사도", "고르기": ["30도 미만", "30도 이상"] }],
"중간": [],
"호표": [
{
"종류": "인력",
"요소": "인력:건설노임:1001",
"이름": "작업반장",
"단위": "인",
"수량": "찾기(소요량:산림품셈:10-7-1 노선선정, 경사도=경사도).작업반장",
"비목": "노무비"
},
{
"종류": "인력",
"요소": "인력:건설노임:1003",
"이름": "특별인부",
"단위": "인",
"수량": "찾기(소요량:산림품셈:10-7-1 노선선정, 경사도=경사도).특별인부",
"비목": "노무비"
}
],
"덧줄": [],
"끝수": null,
"비고": "노선선정이 필요할 때만(주)"
},
{
"열쇠": "10-7-2 가설",
"이름": "모노레일 가설",
"결과단위": "원/100m",
"출처": "산림품셈 10-7-2",
"소유": "공용",
"입력": [{ "이름": "경사도", "고르기": ["30도 미만", "30도 이상"] }],
"중간": [],
"호표": [
{
"종류": "인력",
"요소": "인력:건설노임:1001",
"이름": "작업반장",
"단위": "인",
"수량": "찾기(소요량:산림품셈:10-7-2 가설, 경사도=경사도).작업반장",
"비목": "노무비"
},
{
"종류": "인력",
"요소": "인력:건설노임:1003",
"이름": "특별인부",
"단위": "인",
"수량": "찾기(소요량:산림품셈:10-7-2 가설, 경사도=경사도).특별인부",
"비목": "노무비"
},
{
"종류": "인력",
"요소": "인력:건설노임:1002",
"이름": "보통인부",
"단위": "인",
"수량": "찾기(소요량:산림품셈:10-7-2 가설, 경사도=경사도).보통인부",
"비목": "노무비"
}
],
"덧줄": [],
"끝수": null
},
{
"열쇠": "10-7-3 철거",
"이름": "모노레일 철거",
"결과단위": "원/100m",
"출처": "산림품셈 10-7-3",
"소유": "공용",
"입력": [{ "이름": "경사도", "고르기": ["30도 미만", "30도 이상"] }],
"중간": [],
"호표": [
{
"종류": "인력",
"요소": "인력:건설노임:1001",
"이름": "작업반장",
"단위": "인",
"수량": "찾기(소요량:산림품셈:10-7-3 철거, 경사도=경사도).작업반장",
"비목": "노무비"
},
{
"종류": "인력",
"요소": "인력:건설노임:1003",
"이름": "특별인부",
"단위": "인",
"수량": "찾기(소요량:산림품셈:10-7-3 철거, 경사도=경사도).특별인부",
"비목": "노무비"
},
{
"종류": "인력",
"요소": "인력:건설노임:1002",
"이름": "보통인부",
"단위": "인",
"수량": "찾기(소요량:산림품셈:10-7-3 철거, 경사도=경사도).보통인부",
"비목": "노무비"
}
],
"덧줄": [],
"끝수": null,
"비고": "벌목(주①) · 지주 파이프 어려운 곳(주②) 별도"
},
{
"열쇠": "10-7-4 가설·철거",
"이름": "모노레일 가설·철거(단가표)",
"결과단위": "원/1기",
"출처": "산림품셈 10-7-4",
"소유": "공용",
"입력": [
{ "이름": "연장", "단위": "m" },
{ "이름": "경사도", "고르기": ["30도 미만", "30도 이상"] },
{ "이름": "노선선정", "고르기": ["필요", "필요 없음"] }
],
"중간": [],
"호표": [
{
"종류": "인력",
"요소": "인력:건설노임:1001",
"이름": "작업반장",
"단위": "인",
"수량": "(찾기(소요량:산림품셈:10-7-2 가설, 경사도=경사도).작업반장 + 찾기(소요량:산림품셈:10-7-3 철거, 경사도=경사도).작업반장 + 만약(노선선정 == '필요', 찾기(소요량:산림품셈:10-7-1 노선선정, 경사도=경사도).작업반장, 0)) * 연장 / 100",
"비목": "노무비"
},
{
"종류": "인력",
"요소": "인력:건설노임:1003",
"이름": "특별인부",
"단위": "인",
"수량": "(찾기(소요량:산림품셈:10-7-2 가설, 경사도=경사도).특별인부 + 찾기(소요량:산림품셈:10-7-3 철거, 경사도=경사도).특별인부 + 만약(노선선정 == '필요', 찾기(소요량:산림품셈:10-7-1 노선선정, 경사도=경사도).특별인부, 0)) * 연장 / 100",
"비목": "노무비"
},
{
"종류": "인력",
"요소": "인력:건설노임:1002",
"이름": "보통인부",
"단위": "인",
"수량": "(찾기(소요량:산림품셈:10-7-2 가설, 경사도=경사도).보통인부 + 찾기(소요량:산림품셈:10-7-3 철거, 경사도=경사도).보통인부) * 연장 / 100",
"비목": "노무비"
}
],
"덧줄": [
{
"이름": "기타비용",
"식": "노무비 * 찾기(소요량:산림품셈:10-7-4 가설·철거 단가표, 명칭='기타비용').수량 / 100",
"비목": "경비",
"출처": "산림품셈 10-7-4 3 가 주①(상한)"
}
],
"끝수": null,
"비고": "해석: 단가표 인력 수량 칸이 비어 10-7-1~3 품(100m당) × 연장/100 으로 채움 · 본기계 · 차체 · 레일·지지대는 임대료·견적(주②) — 요소 없음"
},
{
"열쇠": "10-7-4 운전",
"이름": "모노레일 운전(단가표)",
"결과단위": "원/일",
"출처": "산림품셈 10-7-4",
"소유": "공용",
"입력": [
{ "이름": "출력", "단위": "ps" },
{ "이름": "연료", "고르기": ["휘발유", "경유"] },
{
"이름": "지역",
"고르기": [
"전국평균",
"전국",
"서울",
"경기",
"강원",
"충북",
"충남",
"전북",
"경북",
"경남",
"부산",
"제주",
"대구",
"인천",
"대전",
"울산",
"세종",
"전남광주"
],
"출처": "건설품셈 공통 8-1-7 5"
}
],
"중간": [],
"호표": [
{
"종류": "재료",
"요소": "재료:오피넷유가:{연료}:{지역}",
"이름": "연료비",
"단위": "",
"수량": "출력 * 0.253 * 6",
"비목": "재료비",
"출처": "산림품셈 10-7-4 3 나 「ps × 0.253ℓ× 6h」"
},
{
"종류": "인력",
"요소": "인력:건설노임:1002",
"이름": "보통인부",
"단위": "인",
"수량": "찾기(소요량:산림품셈:10-7-4 운전 단가표, 명칭='보통인부').수량",
"비목": "노무비"
}
],
"덧줄": [],
"끝수": null,
"비고": "모노레일 출력(ps) · 연료 종류 원문에 없음 — 설계자 입력 · 해석: 적재·짐부리기 품(보통인부 2인/일)은 이 2인으로 봄 · 1일 운반량 Q=360×q/㎝ 는 q 표 칸 이름(「단궤도 재적」) 때문에 못 세움"
},
{
"열쇠": "10-8-2 운반대 설치",
"이름": "케이블 크레인 운반대 설치",
"결과단위": "원/1기",
"출처": "산림품셈 10-8-2",
"소유": "공용",
"입력": [],
"중간": [],
"호표": [
{
"종류": "인력",
"요소": "인력:건설노임:1002",
"이름": "보통인부",
"단위": "인",
"수량": "찾기(소요량:산림품셈:10-8-2 운반대 설치, 구분='운반대').보통인부",
"비목": "노무비"
}
],
"덧줄": [],
"끝수": null,
"비고": "소재 0.70㎥ · 각재·판재 0.20㎥ 재료 요소 없음(각재 칸 이름 「각재, 판재」도 못 가리킴) · 기타비용 원목+각재·판재비 20% 는 재료비가 없어 빠짐"
},
{
"열쇠": "10-8-3 케이블 크레인 운전",
"이름": "케이블 크레인 운전",
"결과단위": "원/일",
"출처": "산림품셈 10-8-3",
"소유": "공용",
"입력": [],
"중간": [],
"호표": [
{
"종류": "인력",
"요소": "인력:건설노임:1003",
"이름": "특별인부",
"단위": "인",
"수량": "찾기(소요량:산림품셈:10-8-3 케이블 크레인 운전, 명칭='특별인부').수량",
"비목": "노무비"
}
],
"덧줄": [],
"끝수": null,
"비고": "보통인부 = 짐내리기 품(10-8-1) — 칸 이름(「보통인부 짐내리는 인부」) 때문에 못 가리킴 · 연료비 — 운전시간(주①)·윈치 출력(주②)은 있으나 연료 소비율 없음 · 운반기구 손료 별도"
},
{
"열쇠": "10-9 1톤 덤프트럭 시간당 경비",
"이름": "4륜구동 1톤 덤프트럭 시간당 기계경비",
"결과단위": "원/시간",
"출처": "산림품셈 10-9",
"소유": "공용",
"입력": [
{
"이름": "지역",
"고르기": [
"전국평균",
"전국",
"서울",
"경기",
"강원",
"충북",
"충남",
"전북",
"경북",
"경남",
"부산",
"제주",
"대구",
"인천",
"대전",
"울산",
"세종",
"전남광주"
],
"출처": "건설품셈 공통 8-1-7 5"
}
],
"중간": [
{
"이름": "손료",
"식": "버림(기계:건설품셈:0602-0025.가격 * 1000 * (기계:건설품셈:0602-0025.상각비계수 + 기계:건설품셈:0602-0025.정비비계수 + 기계:건설품셈:0602-0025.관리비계수) / 10000000, 0)",
"출처": "산림품셈 10-9 · 건설품셈 공통 8-1-5 12"
},
{ "이름": "비율", "식": "찾기(소요량:산림품셈:10-9 인용문, 구분='2.5톤 덤프 주 연료 대비').비율", "출처": "산림품셈 10-9" },
{ "이름": "직종", "식": "기계:건설품셈:0602-0025.조종원직종" }
],
"호표": [
{
"종류": "재료",
"요소": "재료:오피넷유가:경유:{지역}",
"이름": "주연료",
"단위": "",
"수량": "기계:건설품셈:0602-0025.주연료 * 비율 / 100",
"비목": "재료비",
"출처": "산림품셈 10-9"
},
{
"종류": "인력",
"요소": "인력:건설노임:{직종}",
"이름": "조종원",
"단위": "인",
"수량": "기계:건설품셈:0602-0025.조종원 / 8",
"비목": "노무비",
"출처": "건설품셈 공통 8-1-3 6",
"비고": "환산 근거 미확인 — 우선 하루 ÷ 8"
}
],
"덧줄": [
{ "이름": "잡재료비", "식": "재료비 * 기계:건설품셈:0602-0025.잡재료율 / 100", "비목": "재료비", "출처": "건설품셈 공통 8-4 주②" },
{ "이름": "기계손료", "식": "손료", "비목": "경비", "출처": "건설품셈 공통 8-1-6 2" }
],
"끝수": "손료 원 미만 버림(건설품셈 공통 8-1-5 12) · 합계 원문 규정 없음",
"비고": "손료·운전경비는 2.5톤(0602-0025) · 주연료 2.5톤의 80% · 중기가격 조달청 등재가격은 요소 없음 · 작업량(건설품셈 덤프트럭 식)·10-9-1 운반량 쓰는 식 요소 없음 · 주② 제잡비 비율 원문에 없음"
},
{
"열쇠": "10-10-1 콘크리트 및 골재운반(지상)",
"이름": "헬리콥터 콘크리트 및 골재운반 지상작업",
"결과단위": "원(원문 단위 없음)",
"출처": "산림품셈 10-10-1",
"소유": "공용",
"입력": [{ "이름": "자재", "고르기": ["콘크리트", "골재"] }, { "이름": "적상기계", "고르기": ["사용 안 함", "사용"] }],
"중간": [],
"호표": [
{
"종류": "인력",
"요소": "인력:건설노임:1001",
"이름": "작업반장",
"단위": "인",
"수량": "찾기(소요량:산림품셈:10-10-1 콘크리트 및 골재운반(지상), 명칭='작업반장').수량",
"비목": "노무비"
},
{
"종류": "인력",
"요소": "인력:건설노임:1002",
"이름": "보통인부",
"단위": "인",
"수량": "찾기(소요량:산림품셈:10-10-1 콘크리트 및 골재운반(지상), 명칭='보통인부', 세부='합계').수량 - 만약(자재 == '콘크리트', 찾기(소요량:산림품셈:10-10-1 콘크리트 및 골재운반(지상), 명칭='보통인부', 세부='계량·짐표찰 붙이기').수량, 0) - 만약(적상기계 == '사용', 찾기(소요량:산림품셈:10-10-1 주, 구분='짐 싣는 곳 보통인부').감소, 0)",
"비목": "노무비"
}
],
"덧줄": [],
"끝수": null,
"비고": "원문 표에 단위 없음 · 버켓 손료 4개 요소 없음 · 헬리콥터 비행경비 · 로더 경비 별도 · 지상작업 30% 할증은 설계 판단"
},
{
"열쇠": "10-10-2 그 외 자재의 운반품셈",
"이름": "헬리콥터 그 외 자재 운반 지상작업",
"결과단위": "원(원문 단위 없음)",
"출처": "산림품셈 10-10-2",
"소유": "공용",
"입력": [],
"중간": [],
"호표": [
{
"종류": "인력",
"요소": "인력:건설노임:1001",
"이름": "작업반장",
"단위": "인",
"수량": "찾기(소요량:산림품셈:10-10-2 그 외 자재의 운반품셈, 명칭='작업반장').수량",
"비목": "노무비"
},
{
"종류": "인력",
"요소": "인력:건설노임:1002",
"이름": "보통인부",
"단위": "인",
"수량": "찾기(소요량:산림품셈:10-10-2 그 외 자재의 운반품셈, 명칭='보통인부', 세부='합계').수량",
"비목": "노무비"
}
],
"덧줄": [],
"끝수": null,
"비고": "원문 표에 단위 없음 · 와이어 손료 7매(1시간당 4%) 요소 없음 · 헬리콥터 비행경비 별도"
},
{
"열쇠": "10-11 불도저 운반 작업량",
"이름": "불도저 운반 시간당 작업량",
"결과단위": "㎥/시간",
"출처": "산림품셈 10-11 주②",
"소유": "공용",
"입력": [{ "이름": "재료", "고르기": ["토사", "파쇄암", "발파암"] }],
"중간": [
{
"이름": "q",
"식": "찾기(소요량:산림품셈:10-11 불도저 운반, 구분='q0').값 * 찾기(소요량:산림품셈:10-11 불도저 운반, 구분='e').값",
"출처": "산림품셈 10-11 주② 「q=3.2×e」"
},
{ "이름": "f", "식": "찾기(소요량:산림품셈:10-11 불도저 운반, 구분='f', 세부=재료).식" },
{ "이름": "E세부", "식": "만약(재료 == '토사', '토사', '암석')" },
{ "이름": "E", "식": "찾기(소요량:산림품셈:10-11 불도저 운반, 구분='E', 세부=E세부).값" },
{
"이름": "Cm",
"식": "찾기(소요량:산림품셈:10-11 불도저 운반, 구분='L').값 / 찾기(소요량:산림품셈:10-11 불도저 운반, 구분='V1').값 + 찾기(소요량:산림품셈:10-11 불도저 운반, 구분='L').값 / 찾기(소요량:산림품셈:10-11 불도저 운반, 구분='V2').값 + 찾기(소요량:산림품셈:10-11 불도저 운반, 구분='t').값",
"출처": "산림품셈 10-11 주② 「㎝=L/V1+L/V2+0.25」"
}
],
"결과": { "식": "반올림(60 * q * f * E / Cm, 3)", "출처": "건설품셈 공통 8-1-4 주①" },
"끝수": "소수 3자리 사사오입(건설품셈 공통 8-1-4 주①)",
"비고": "해석: 파쇄암·발파암의 E 는 「암석」 줄"
},
{
"열쇠": "10-11 불도저 운반",
"이름": "불도저 운반",
"결과단위": "원/㎥",
"출처": "산림품셈 10-11",
"소유": "공용",
"입력": [
{ "이름": "재료", "고르기": ["토사", "파쇄암", "발파암"] },
{ "이름": "기계", "고르기": ["0101-0007", "0101-0010", "0101-0012", "0101-0019", "0101-0032"] },
{
"이름": "지역",
"고르기": [
"전국평균",
"전국",
"서울",
"경기",
"강원",
"충북",
"충남",
"전북",
"경북",
"경남",
"부산",
"제주",
"대구",
"인천",
"대전",
"울산",
"세종",
"전남광주"
],
"출처": "건설품셈 공통 8-1-7 5"
}
],
"중간": [{ "이름": "작업량", "식": "로직(산림품셈:10-11 불도저 운반 작업량, 재료=재료)" }],
"호표": [{ "종류": "로직", "요소": "로직(건설품셈:8 기계 시간당 경비, 기계=기계, 지역=지역)", "이름": "불도저(무한궤도)", "단위": "시간", "수량": "1 / 작업량" }],
"덧줄": [],
"끝수": null,
"비고": "불도저 규격 원문에 없음 — 설계자 고름(주③ 건설품셈 8-2-1) · 불도저 손료 보정(건설품셈 공통 8-1-7) 미반영 — 일반 기계 경비 로직"
}
]
}
@@ -0,0 +1,165 @@
{
"그룹": "로직",
"원문": "산림품셈",
"판": "2026-01-01",
"줄": [
{
"열쇠": "11-1 콘테이너형 가설건축물",
"이름": "콘테이너형 가설건축물 설치 또는 해체",
"결과단위": "원/개",
"출처": "산림품셈 11-1",
"소유": "공용",
"입력": [
{ "이름": "길이", "고르기": ["3M", "6M", "9M", "12M"] },
{ "이름": "폭", "고르기": ["2.4M", "3.0M", "3.5M", "4.8M", "6.0M"] }
],
"중간": [],
"호표": [
{
"종류": "인력",
"요소": "인력:건설노임:1006",
"이름": "비계공",
"단위": "인",
"수량": "찾기(소요량:산림품셈:11-1 콘테이너형 가설건축물, 길이=길이, 폭=폭).비계공",
"비목": "노무비"
},
{
"종류": "인력",
"요소": "인력:건설노임:1003",
"이름": "특별인부",
"단위": "인",
"수량": "찾기(소요량:산림품셈:11-1 콘테이너형 가설건축물, 길이=길이, 폭=폭).특별인부",
"비목": "노무비"
}
],
"덧줄": [],
"끝수": null,
"비고": "설치 · 해체 각각(주①) · 트럭크레인 10ton 1개 2시간(주③)은 계수 표 없어 빠짐 · 기계경비·운반비 별도(주②)"
},
{
"열쇠": "11-2 토공의 비탈 규준틀",
"이름": "토공의 비탈 규준틀",
"결과단위": "원/개소",
"출처": "산림품셈 11-2",
"소유": "공용",
"입력": [],
"중간": [],
"호표": [
{
"종류": "인력",
"요소": "인력:건설노임:1023",
"이름": "건축목공",
"단위": "인",
"수량": "찾기(소요량:산림품셈:11-2 토공의 비탈 규준틀, 종류='건축목공').수량",
"비목": "노무비"
},
{
"종류": "인력",
"요소": "인력:건설노임:1002",
"이름": "보통인부",
"단위": "인",
"수량": "찾기(소요량:산림품셈:11-2 토공의 비탈 규준틀, 종류='보통인부').수량",
"비목": "노무비"
}
],
"덧줄": [],
"끝수": null,
"비고": "목재 재료 요소 없음 — 손율(11-2 목재 손율) 쓸 곳 없음 · 재료량 설계수량"
},
{
"열쇠": "11-3 수평규준틀",
"이름": "수평규준틀",
"결과단위": "원/개소",
"출처": "산림품셈 11-3",
"소유": "공용",
"입력": [],
"중간": [],
"호표": [
{
"종류": "인력",
"요소": "인력:건설노임:1023",
"이름": "건축목공",
"단위": "인",
"수량": "찾기(소요량:산림품셈:11-3 수평규준틀, 종류='건축목공').수량",
"비목": "노무비"
},
{
"종류": "인력",
"요소": "인력:건설노임:1002",
"이름": "보통인부",
"단위": "인",
"수량": "찾기(소요량:산림품셈:11-3 수평규준틀, 종류='보통인부').수량",
"비목": "노무비"
}
],
"덧줄": [],
"끝수": null,
"비고": "목재 재료 요소 없음 — 손율(11-3 목재 손율) 쓸 곳 없음 · 재료량 설계수량"
},
{
"열쇠": "11-4 쇄석·혼합석 부설 작업량",
"이름": "쇄석·혼합석 부설 시간당 작업량",
"결과단위": "㎥/시간",
"출처": "산림품셈 11-4 주①",
"소유": "공용",
"입력": [],
"중간": [
{ "이름": "q", "식": "찾기(소요량:산림품셈:11-4 쇄석·혼합석 부설, 구분='q(버킷용량)').적용" },
{ "이름": "k", "식": "찾기(소요량:산림품셈:11-4 쇄석·혼합석 부설, 구분='k(버킷계수)').적용" },
{ "이름": "f", "식": "찾기(소요량:산림품셈:11-4 쇄석·혼합석 부설, 구분='f(체적환산계수)').적용" },
{ "이름": "E", "식": "찾기(소요량:산림품셈:11-4 쇄석·혼합석 부설, 구분='E(작업효율)').적용" },
{ "이름": "Cm", "식": "찾기(소요량:산림품셈:11-4 쇄석·혼합석 부설, 구분='㎝(sec, 1회 사이클 시간)').적용" }
],
"결과": { "식": "반올림(3600 * q * k * f * E / Cm, 3)", "출처": "건설품셈 공통 8-1-4 주①" },
"끝수": "소수 3자리 사사오입(건설품셈 공통 8-1-4 주①)",
"비고": "해석: 원문 식 「3600×90×k×f×E/㎝」의 90 을 q(버킷용량)로 봄"
},
{
"열쇠": "11-4 쇄석·혼합석 부설",
"이름": "쇄석·혼합석 부설(굴착기 0.7㎥)",
"결과단위": "원/㎥",
"출처": "산림품셈 11-4",
"소유": "공용",
"입력": [
{
"이름": "지역",
"고르기": [
"전국평균",
"전국",
"서울",
"경기",
"강원",
"충북",
"충남",
"전북",
"경북",
"경남",
"부산",
"제주",
"대구",
"인천",
"대전",
"울산",
"세종",
"전남광주"
],
"출처": "건설품셈 공통 8-1-7 5"
},
{ "이름": "보정작업", "고르기": ["해당 없음", "암석작업(연암・보통암・경암)", "전석섞인토사"], "출처": "건설품셈 공통 8-1-7 1" }
],
"중간": [{ "이름": "작업량", "식": "로직(산림품셈:11-4 쇄석·혼합석 부설 작업량)" }],
"호표": [
{
"종류": "로직",
"요소": "로직(건설품셈:8 굴착기(무한궤도) 시간당 경비, 기계='0201-0070', 지역=지역, 보정작업=보정작업)",
"이름": "굴착기(무한궤도) 0.7㎥",
"단위": "시간",
"수량": "1 / 작업량"
}
],
"덧줄": [],
"끝수": null,
"비고": "그레이더 사용 시 건설품셈 8-2-7(주②) — 로직 없음"
}
]
}
@@ -0,0 +1,117 @@
{
"그룹": "로직",
"원문": "산림품셈",
"판": "2026-01-01",
"줄": [
{
"열쇠": "14-1 입목뿌리 밑막이",
"이름": "입목뿌리 밑막이",
"결과단위": "원/10본",
"출처": "산림품셈 14-1",
"소유": "공용",
"입력": [
{
"이름": "지역",
"고르기": [
"전국평균",
"전국",
"서울",
"경기",
"강원",
"충북",
"충남",
"전북",
"경북",
"경남",
"부산",
"제주",
"대구",
"인천",
"대전",
"울산",
"세종",
"전남광주"
],
"출처": "건설품셈 공통 8-1-7 5"
},
{ "이름": "보정작업", "고르기": ["해당 없음", "암석작업(연암・보통암・경암)", "전석섞인토사"], "출처": "건설품셈 공통 8-1-7 1" }
],
"중간": [],
"호표": [
{
"종류": "로직",
"요소": "로직(건설품셈:8 굴착기+부착용 집게 시간당 경비, 기계='0201-0080', 집게='7206-0070', 지역=지역, 보정작업=보정작업)",
"이름": "굴착기(무한궤도) 0.8㎥ + 부착용 집게(우드그랩)",
"단위": "시간",
"수량": "찾기(소요량:산림품셈:14-1 입목뿌리 밑막이, 장비='0.8㎥ 굴착기(우드그랩 부착)').수량"
},
{
"종류": "인력",
"요소": "인력:건설노임:1002",
"이름": "보통인부",
"단위": "인",
"수량": "찾기(소요량:산림품셈:14-1 입목뿌리 밑막이, 장비='보통인부').수량 / 8",
"비목": "노무비"
}
],
"덧줄": [],
"끝수": null,
"비고": "해석: 우드그랩 = 부착용 집게 0.6∼0.8(산림품셈 2-2-11 → 건설품셈 7206) · 해석: 보통인부 시간 ÷ 8(건설노임 일시간 8) = 인 · 장비이동거리 50m 이내"
},
{
"열쇠": "14-2 근주이식",
"이름": "근주이식",
"결과단위": "원/10본",
"출처": "산림품셈 14-2",
"소유": "공용",
"입력": [
{
"이름": "지역",
"고르기": [
"전국평균",
"전국",
"서울",
"경기",
"강원",
"충북",
"충남",
"전북",
"경북",
"경남",
"부산",
"제주",
"대구",
"인천",
"대전",
"울산",
"세종",
"전남광주"
],
"출처": "건설품셈 공통 8-1-7 5"
},
{ "이름": "보정작업", "고르기": ["해당 없음", "암석작업(연암・보통암・경암)", "전석섞인토사"], "출처": "건설품셈 공통 8-1-7 1" }
],
"중간": [],
"호표": [
{
"종류": "로직",
"요소": "로직(건설품셈:8 굴착기(무한궤도) 시간당 경비, 기계='0201-0080', 지역=지역, 보정작업=보정작업)",
"이름": "굴착기(무한궤도) 0.8㎥",
"단위": "시간",
"수량": "찾기(소요량:산림품셈:14-2 근주이식, 장비='0.8㎥ 굴착기').수량"
},
{
"종류": "인력",
"요소": "인력:건설노임:1002",
"이름": "보통인부",
"단위": "인",
"수량": "찾기(소요량:산림품셈:14-2 근주이식, 장비='보통인부').수량 / 8",
"비목": "노무비"
}
],
"덧줄": [],
"끝수": null,
"비고": "해석: 보통인부 시간 ÷ 8(건설노임 일시간 8) = 인 · 근원직경 10∼30㎝(주②) · 장비이동거리 50m 이내 · 건설품셈 공통 8-2-3 계수 필요(0.2㎥ · 0.4㎥ 굴착기를 쓸 때)"
}
]
}
+15
View File
@@ -16,7 +16,10 @@ SAMPLES = [
"계수_산림품셈_9장.json",
"기계_건설품셈.json",
"로직_건설품셈_공통8장.json",
"로직_산림품셈_10장.json",
"로직_산림품셈_11장.json",
"로직_산림품셈_13장.json",
"로직_산림품셈_14장.json",
"로직_산림품셈_9장.json",
"소요량_산림품셈_13장.json",
]
@@ -126,6 +129,18 @@ def test_굴착기_부착용_집게(whole):
assert cents(got[""]) == "86467.61"
def test_불도저_운반_작업량(whole):
"""10-11 — q=3.2×0.96 · ㎝=20/55+20/70+0.25 · Q=60×q×(1/1.30)×0.55/㎝."""
got = mf.run(whole, "산림품셈:10-11 불도저 운반 작업량", {"재료": "토사"})
assert got["결과"] == Decimal("86.709")
def test_중기운반_트레일러_횟수(whole):
"""10-4 — ㎝=20+30+20+0.42 · N=60×0.9/㎝ · 1회 = 1/N 시간."""
got = mf.run(whole, "산림품셈:10-4 중기운반 트레일러", {"t2": 30, "지역": "전국평균"})
assert got[""][0]["수량"].quantize(Decimal("0.0001")) == Decimal("1.3041")
def test_범위_입력은_막음(whole):
with pytest.raises(mf.FormulaError):
mf.run(