diff --git a/resources/master_data/로직_산림품셈_03장.json b/resources/master_data/로직_산림품셈_03장.json new file mode 100644 index 00000000..8f8636b4 --- /dev/null +++ b/resources/master_data/로직_산림품셈_03장.json @@ -0,0 +1,385 @@ +{ + "그룹": "로직", + "원문": "산림품셈", + "판": "2026-01-01", + "줄": [ + { + "열쇠": "3-1 경계표시", + "이름": "경계표시", + "결과단위": "원/ha", + "출처": "산림품셈 3-1", + "소유": "공용", + "입력": [], + "중간": [], + "호표": [ + { "종류": "인력", "요소": "인력:건설노임:1002", "이름": "보통인부", "단위": "인", "수량": "찾기(소요량:산림품셈:3-1 경계표시).소요인력", "비목": "노무비" } + ], + "덧줄": [], + "끝수": null, + "비고": "할인·할증 못 넣음 — 1-4-3 집단화정도(조건 「개소당 평균면적」 빈칸 · 범위규칙이 글) · 1-4-5 경사도(값 칸 「할인·할증률」) — 칸 이름 · 범위규칙 문법 · 페인트(2-1-4) 재료 요소 없음" + }, + { + "열쇠": "3-3 작업로 설치", + "이름": "작업로 설치", + "결과단위": "원/km", + "출처": "산림품셈 3-3", + "소유": "공용", + "입력": [ + { "이름": "구분", "고르기": ["소작업로", "대작업로"] }, + { "이름": "체인톱가격", "단위": "원" }, + { "이름": "체인오일단가", "단위": "원/ℓ" }, + { + "이름": "지역", + "고르기": [ + "전국평균", + "전국", + "서울", + "경기", + "강원", + "충북", + "충남", + "전북", + "경북", + "경남", + "부산", + "제주", + "대구", + "인천", + "대전", + "울산", + "세종", + "전남광주" + ], + "출처": "건설품셈 공통 8-1-7 5" + } + ], + "중간": [ + { "이름": "소요", "식": "찾기(소요량:산림품셈:3-3 작업로 설치, 구분=구분).소요인력" }, + { "이름": "체인톱대수", "식": "소요 * 0.5", "출처": "산림품셈 2-1-1 주② 「작업로 설치 — 산출 인원의 50%」" } + ], + "호표": [ + { + "종류": "인력", + "요소": "인력:건설노임:1037", + "이름": "벌목부", + "단위": "인", + "수량": "소요 * 0.5", + "비목": "노무비", + "출처": "산림품셈 3-3 인력구성 「벌목부 50%」" + }, + { + "종류": "인력", + "요소": "인력:건설노임:1002", + "이름": "보통인부", + "단위": "인", + "수량": "소요 * 0.5", + "비목": "노무비", + "출처": "산림품셈 3-3 인력구성 「보통인부 50%」" + }, + { + "종류": "재료", + "요소": "재료:오피넷유가:휘발유:{지역}", + "이름": "휘발유(체인톱)", + "단위": "ℓ", + "수량": "체인톱대수 * 찾기(소요량:산림품셈:2-1-1 휘발유·오일, 기계명='체인톱', 재료명='보통휘발유(주연료)').주연료", + "비목": "재료비", + "출처": "산림품셈 2-1-1 주③" + } + ], + "덧줄": [ + { + "이름": "잡품", + "식": "재료비 * 찾기(소요량:산림품셈:2-1-1 휘발유·오일, 기계명='체인톱', 재료명='보통휘발유(주연료)').잡품 / 100", + "비목": "재료비", + "출처": "산림품셈 2-1-1 주⑤" + }, + { + "이름": "체인오일", + "식": "체인톱대수 * 찾기(소요량:산림품셈:2-1-1 휘발유·오일, 기계명='체인톱', 재료명='체인오일(일반오일)').주연료 * 체인오일단가", + "비목": "재료비", + "출처": "산림품셈 2-1-1 주④" + }, + { "이름": "체인톱 손료", "식": "체인톱대수 * 기계:산림품셈:2-2-1 체인톱.손료계수 * 체인톱가격", "비목": "경비", "출처": "산림품셈 2-2-1" } + ], + "끝수": null, + "비고": "할인·할증 못 넣음 — 1-4-5 경사도(값 칸 「할인·할증률」) · 1-4-9 제거대상 식생(조건 「제거대상 식생」 빈칸) — 칸 이름 · 범위규칙 문법 · 체인톱 가격 · 체인오일 단가 원문에 없음(시중가격) — 설계자 입력 · 상층목은 솎아베기 본수에 포함(주③⑥)" + }, + { + "열쇠": "3-4-2 임산물 운반로 신설 작업량", + "이름": "임산물 운반로 신설 굴착기 시간당 작업량", + "결과단위": "㎥/시간", + "출처": "산림품셈 3-4-2 1", + "소유": "공용", + "입력": [], + "중간": [ + { "이름": "q", "식": "찾기(소요량:산림품셈:3-4-2 신설비 산정 예시, 구분='q(버킷용량)').값" }, + { "이름": "K", "식": "찾기(소요량:산림품셈:3-4-2 신설비 산정 예시, 구분='K(버킷계수)').값" }, + { "이름": "f", "식": "찾기(소요량:산림품셈:3-4-2 신설비 산정 예시, 구분='f(체적환산계수)').값" }, + { "이름": "E", "식": "찾기(소요량:산림품셈:3-4-2 신설비 산정 예시, 구분='E(작업효율)').값" }, + { "이름": "Cm", "식": "찾기(소요량:산림품셈:3-4-2 신설비 산정 예시, 구분='Cm(1회 사이클의 시간)').값" } + ], + "결과": { "식": "반올림(3600 * q * K * f * E / Cm, 3)", "출처": "건설품셈 공통 8-1-4 주①" }, + "끝수": "소수 3자리 사사오입(건설품셈 공통 8-1-4 주①)", + "비고": "해석: 원문 단가산출 예시의 값(q 0.2 · K 0.7 · f 0.71 · E 0.45 · Cm 18)을 표준 값으로 씀" + }, + { + "열쇠": "3-4-2 임산물 운반로 신설", + "이름": "임산물 운반로 및 작업로 신설(굴착기 0.2㎥)", + "결과단위": "원/m", + "출처": "산림품셈 3-4-2", + "소유": "공용", + "입력": [ + { "이름": "횡단경사", "단위": "%" }, + { + "이름": "지역", + "고르기": [ + "전국평균", + "전국", + "서울", + "경기", + "강원", + "충북", + "충남", + "전북", + "경북", + "경남", + "부산", + "제주", + "대구", + "인천", + "대전", + "울산", + "세종", + "전남광주" + ], + "출처": "건설품셈 공통 8-1-7 5" + }, + { "이름": "보정작업", "고르기": ["해당 없음", "암석작업(연암・보통암・경암)", "전석섞인토사"], "출처": "건설품셈 공통 8-1-7 1" } + ], + "중간": [ + { "이름": "작업량", "식": "로직(산림품셈:3-4-2 임산물 운반로 신설 작업량)" }, + { "이름": "절토량", "식": "찾기(소요량:산림품셈:3-4-2 신설비 산정 예시, 구분='m당 절토량').값" }, + { "이름": "할증", "식": "만약(횡단경사 >= 55, 찾기(소요량:산림품셈:3-4-2 횡단경사별 할증률, 횡단경사=횡단경사).할증률, 0)", "출처": "산림품셈 3-4-2 6" } + ], + "호표": [ + { + "종류": "로직", + "요소": "로직(건설품셈:8 굴착기(무한궤도) 시간당 경비, 기계='0201-0020', 지역=지역, 보정작업=보정작업)", + "이름": "굴착기(무한궤도) 0.2㎥", + "단위": "시간", + "수량": "(절토량 / 작업량) * (1 + 할증 / 100)" + } + ], + "덧줄": [], + "끝수": null, + "비고": "해석: 원문 예시(시간당 단가 ÷ Q × 절토량)를 식으로 씀 · 굴착기 규격 0.2㎥ 는 예시 값 · 건설품셈 공통 8-2-3 계수 필요(0.2㎥ · 0.4㎥ 굴착기를 쓸 때) · 벌목 · 제근 · 암절취 · 임시 공작물 · 유용토 운반 별도(4)" + }, + { + "열쇠": "3-4-3 보수공정", + "이름": "임산물 운반로 보수공정", + "결과단위": "원/100㎡", + "출처": "산림품셈 3-4-3", + "소유": "공용", + "입력": [{ "이름": "종별", "고르기": ["노면정지", "노면굴기"] }], + "중간": [], + "호표": [ + { + "종류": "인력", + "요소": "인력:건설노임:1002", + "이름": "보통인부", + "단위": "인", + "수량": "찾기(소요량:산림품셈:3-4-3 보수공정표, 종별=종별).인부", + "비목": "노무비" + } + ], + "덧줄": [], + "끝수": null, + "비고": "해석: 원문 「인부」 = 보통인부" + }, + { + "열쇠": "3-4-3 상용인부 고용경비", + "이름": "임산물 운반로 상용인부 고용경비", + "결과단위": "원/일", + "출처": "산림품셈 3-4-3", + "소유": "공용", + "입력": [ + { + "이름": "조건", + "고르기": ["입지적 조건과 계절에 따른 기상적인 조건이 불량한 경우", "입지적 조건과 계절에 따른 기상적인 조건이 보통인 경우", "입지적 조건과 계절에 따른 입지적 조건이 양호한 경우"] + }, + { "이름": "연장", "단위": "km" } + ], + "중간": [], + "호표": [ + { + "종류": "인력", + "요소": "인력:건설노임:1002", + "이름": "보통인부", + "단위": "인", + "수량": "연장 / 찾기(소요량:산림품셈:3-4-3 상용인부 고용경비 산정조건, 조건=조건).거리", + "비목": "노무비" + } + ], + "덧줄": [], + "끝수": null, + "비고": "해석: 상용인부 = 보통인부 · 1일 인원 = 연장 ÷ 기준거리(끝수 규정 없음) · 고용기간(반출 지정기간 등)은 설계자 몫" + }, + { + "열쇠": "3-5 예정지정리", + "이름": "예정지정리", + "결과단위": "원/ha", + "출처": "산림품셈 3-5", + "소유": "공용", + "입력": [ + { + "이름": "작업내용", + "고르기": [ + "보완사업지 정리", + "휴경지 등 정리", + "관목지 등 정리", + "산불 등 피해지 정리", + "불량림 정리", + "인력 정리", + "임업기계장비 이용 정리", + "벌채부산물 임내정리", + "모든 벌채부산물 반출" + ] + }, + { "이름": "정리량", "단위": "㎥/ha" }, + { "이름": "임상", "고르기": ["침엽수림", "활엽수림", "해당 없음"] }, + { "이름": "개벌지", "고르기": ["700㎡ 이하(또는 벌채폭 30m)", "3000㎡ 미만(또는 벌채폭 60m)", "해당 없음"] }, + { "이름": "산불피해면적", "단위": "ha" }, + { "이름": "조림면적", "단위": "ha" } + ], + "중간": [ + { "이름": "소요", "식": "찾기(소요량:산림품셈:3-5 예정지정리, 작업내용=작업내용).소요인력" }, + { + "이름": "할증", + "식": "만약(정리량 >= 50, 찾기(소요량:산림품셈:3-5 미이용산림바이오매스 할증률, 정리량=정리량).할증률, 0) + 만약(임상 == '해당 없음', 0, 찾기(소요량:산림품셈:3-5 임상별 할인할증률, 임상=임상).할인할증률) + 만약(개벌지 == '해당 없음', 0, 찾기(소요량:산림품셈:3-5 개벌지 크기별 할증률, 구분=개벌지).할증률) + 찾기(소요량:산림품셈:3-5 산불피해지 할증률).할증률 * 산불피해면적 / 조림면적", + "출처": "산림품셈 3-5 주⑬⑬⑭⑮" + } + ], + "호표": [ + { + "종류": "인력", + "요소": "인력:건설노임:1003", + "이름": "특별인부", + "단위": "인", + "수량": "(소요 * 0.5) * (1 + 할증 / 100)", + "비목": "노무비", + "출처": "산림품셈 3-5 인력구분 「특별인부 50%」" + }, + { + "종류": "인력", + "요소": "인력:건설노임:1002", + "이름": "보통인부", + "단위": "인", + "수량": "(소요 * 0.5) * (1 + 할증 / 100)", + "비목": "노무비", + "출처": "산림품셈 3-5 인력구분 「보통인부 50%」" + } + ], + "덧줄": [], + "끝수": null, + "비고": "해석: 할인·할증은 합산해 품에 곱함(1-4-21 주③) · 임상 할인·할증은 수확벌채지만(주⑬) · 정리량 = 미이용 산림바이오매스(주⑬) · 산불피해 없으면 산불피해면적 0 · 할인·할증 못 넣음 — 1-4-5 경사도(값 칸 「할인·할증률」) · 1-4-6 이동거리(조건 「작업장까지 이동거리」 빈칸 · 범위규칙이 글) — 칸 이름 · 범위규칙 문법 · 이용가치 없는 불량목 벌채 · 운재로는 별도(주⑨)" + }, + { + "열쇠": "3-6 산물 임내정리", + "이름": "산물 임내정리", + "결과단위": "원/ha", + "출처": "산림품셈 3-6", + "소유": "공용", + "입력": [{ "이름": "정리산물", "단위": "㎥/ha" }], + "중간": [], + "호표": [ + { + "종류": "인력", + "요소": "인력:건설노임:1002", + "이름": "보통인부", + "단위": "인", + "수량": "정리산물 / 찾기(소요량:산림품셈:3-6 산물 임내정리, 정리산물=정리산물).소요인력", + "비목": "노무비", + "출처": "산림품셈 3-6 주⑤ 「임내정리량 ÷ 품」" + } + ], + "덧줄": [], + "끝수": null, + "비고": "정리산물 = ha당 임내정리량(지조 포함, 주④) · 할인·할증 못 넣음 — 1-4-5 경사도(값 칸 「할인·할증률」) — 칸 이름 · 범위규칙 문법" + }, + { + "열쇠": "3-7 재해산물 수집", + "이름": "재해산물 수집", + "결과단위": "원/ha", + "출처": "산림품셈 3-7", + "소유": "공용", + "입력": [ + { "이름": "수집거리", "고르기": ["10m이하", "20m이하", "30m이하"] }, + { "이름": "수집량", "단위": "㎥/ha" }, + { "이름": "작업", "고르기": ["일반", "소나무재선충병방제"] }, + { "이름": "집재방향", "고르기": ["상향집재", "하향집재"] }, + { "이름": "경사", "고르기": ["급(30°초과)", "중(15~30°)", "완(15° 미만)"] } + ], + "중간": [ + { + "이름": "할증", + "식": "만약(작업 == '소나무재선충병방제' 그리고 집재방향 == '상향집재', 찾기(계수:산림품셈:1-4-14 집재방향, 구분='소나무재선충병 인력에 의한 원목 및 재해산물 수집', 집재방향='상향집재', 경사=경사).할증률, 0)", + "출처": "산림품셈 3-7 주② · 1-4-14" + } + ], + "호표": [ + { + "종류": "인력", + "요소": "인력:건설노임:1002", + "이름": "보통인부", + "단위": "인", + "수량": "(수집량 / 찾기(소요량:산림품셈:3-7 재해산물 수집, 수집거리=수집거리, 재해산물수집량=수집량).소요인력) * (1 + 할증 / 100)", + "비목": "노무비" + } + ], + "덧줄": [], + "끝수": null, + "비고": "해석: 소요인력 = 수집량 ÷ 품(3-6 주⑤와 같게) · 1-4-14 는 소나무재선충병방제만(주②) · 할인·할증 못 넣음 — 1-4-5 경사도(값 칸 「할인·할증률」) · 1-4-8 장애물의 정도(조건 「장애물의 정도」 빈칸) — 칸 이름 · 범위규칙 문법" + }, + { + "열쇠": "3-8 드론 영상 촬영", + "이름": "드론 영상 촬영", + "결과단위": "원/ha", + "출처": "산림품셈 3-8", + "소유": "공용", + "입력": [], + "중간": [], + "호표": [ + { + "종류": "인력", + "요소": "인력:건설노임:1048", + "이름": "건설기계운전사", + "단위": "인", + "수량": "찾기(소요량:산림품셈:3-8 드론 영상 촬영, 종별='계').드론조종자", + "비목": "노무비", + "출처": "산림품셈 3-8 「드론조종자」" + }, + { + "종류": "인력", + "요소": "인력:건설노임:1048", + "이름": "건설기계운전사", + "단위": "인", + "수량": "찾기(소요량:산림품셈:3-8 드론 영상 촬영, 종별='계').부조종자", + "비목": "노무비", + "출처": "산림품셈 3-8 「부조종자」" + }, + { + "종류": "인력", + "요소": "인력:건설노임:1003", + "이름": "특별인부", + "단위": "인", + "수량": "찾기(소요량:산림품셈:3-8 드론 영상 촬영, 종별='계').특별인부", + "비목": "노무비", + "출처": "산림품셈 3-8 「특별인부(신호수)」" + } + ], + "덧줄": [], + "끝수": null, + "비고": "해석: 건설기계조종원·운전기사 = 건설노임 건설기계운전사(1048) · 사업 전·후 2회 촬영 기준(주①) · 드론 장비 손료 원문 표에 없음" + } + ] +} diff --git a/resources/master_data/로직_산림품셈_04장.json b/resources/master_data/로직_산림품셈_04장.json new file mode 100644 index 00000000..968ece49 --- /dev/null +++ b/resources/master_data/로직_산림품셈_04장.json @@ -0,0 +1,195 @@ +{ + "그룹": "로직", + "원문": "산림품셈", + "판": "2026-01-01", + "줄": [ + { + "열쇠": "4-1-2 벌도ㆍ조재", + "이름": "하베스터 벌도ㆍ조재", + "결과단위": "원/㎥", + "출처": "산림품셈 4-1-2", + "소유": "공용", + "입력": [ + { + "이름": "지역", + "고르기": [ + "전국평균", + "전국", + "서울", + "경기", + "강원", + "충북", + "충남", + "전북", + "경북", + "경남", + "부산", + "제주", + "대구", + "인천", + "대전", + "울산", + "세종", + "전남광주" + ], + "출처": "건설품셈 공통 8-1-7 5" + } + ], + "중간": [{ "이름": "공정량", "식": "찾기(소요량:산림품셈:4-1-2 벌도ㆍ조재).공정량" }], + "호표": [ + { + "종류": "인력", + "요소": "인력:건설노임:1048", + "이름": "건설기계운전사", + "단위": "인", + "수량": "1 / 공정량", + "비목": "노무비", + "출처": "산림품셈 4-1-2 「하베스터 오퍼레이터 1인」" + }, + { + "종류": "재료", + "요소": "재료:오피넷유가:경유:{지역}", + "이름": "경유(하베스터)", + "단위": "ℓ", + "수량": "찾기(소요량:산림품셈:2-1-2 경유, 기계명='하베스터(헤드부착형)').주연료 / 공정량", + "비목": "재료비", + "출처": "산림품셈 2-1-2" + } + ], + "덧줄": [ + { "이름": "잡품", "식": "재료비 * 찾기(소요량:산림품셈:2-1-2 경유, 기계명='하베스터(헤드부착형)').잡품 / 100", "비목": "재료비", "출처": "산림품셈 2-1-2 주④" }, + { + "이름": "기계손료", + "식": "(기계:산림품셈:2-2-3 하베스터(헤드부착형).손료계수 * 기계:산림품셈:2-2-3 하베스터(헤드부착형).장비가격 + 기계:산림품셈:2-2-3 0.6㎥급 무한궤도형 굴착기.손료계수 * 기계:산림품셈:2-2-3 0.6㎥급 무한궤도형 굴착기.장비가격) * 1000 / 공정량", + "비목": "경비", + "출처": "산림품셈 2-2-3" + } + ], + "끝수": null, + "비고": "해석: 건설기계조종원·운전기사 = 건설노임 건설기계운전사(1048) · 해석: 하베스터 = 헤드 + 0.6㎥급 굴착기(2-1-2 적용기준) 손료 · 1일 기준(2-2-3 주③)" + }, + { + "열쇠": "4-1-2 조재", + "이름": "하베스터 조재", + "결과단위": "원/㎥", + "출처": "산림품셈 4-1-2", + "소유": "공용", + "입력": [ + { + "이름": "지역", + "고르기": [ + "전국평균", + "전국", + "서울", + "경기", + "강원", + "충북", + "충남", + "전북", + "경북", + "경남", + "부산", + "제주", + "대구", + "인천", + "대전", + "울산", + "세종", + "전남광주" + ], + "출처": "건설품셈 공통 8-1-7 5" + } + ], + "중간": [{ "이름": "공정량", "식": "찾기(소요량:산림품셈:4-1-2 조재).공정량" }], + "호표": [ + { + "종류": "인력", + "요소": "인력:건설노임:1048", + "이름": "건설기계운전사", + "단위": "인", + "수량": "1 / 공정량", + "비목": "노무비", + "출처": "산림품셈 4-1-2 「하베스터 오퍼레이터 1인」" + }, + { + "종류": "재료", + "요소": "재료:오피넷유가:경유:{지역}", + "이름": "경유(하베스터)", + "단위": "ℓ", + "수량": "찾기(소요량:산림품셈:2-1-2 경유, 기계명='하베스터(헤드부착형)').주연료 / 공정량", + "비목": "재료비", + "출처": "산림품셈 2-1-2" + } + ], + "덧줄": [ + { "이름": "잡품", "식": "재료비 * 찾기(소요량:산림품셈:2-1-2 경유, 기계명='하베스터(헤드부착형)').잡품 / 100", "비목": "재료비", "출처": "산림품셈 2-1-2 주④" }, + { + "이름": "기계손료", + "식": "(기계:산림품셈:2-2-3 하베스터(헤드부착형).손료계수 * 기계:산림품셈:2-2-3 하베스터(헤드부착형).장비가격 + 기계:산림품셈:2-2-3 0.6㎥급 무한궤도형 굴착기.손료계수 * 기계:산림품셈:2-2-3 0.6㎥급 무한궤도형 굴착기.장비가격) * 1000 / 공정량", + "비목": "경비", + "출처": "산림품셈 2-2-3" + } + ], + "끝수": null, + "비고": "해석: 건설기계조종원·운전기사 = 건설노임 건설기계운전사(1048) · 해석: 하베스터 = 헤드 + 0.6㎥급 굴착기(2-1-2 적용기준) 손료 · 1일 기준(2-2-3 주③)" + }, + { + "열쇠": "4-4 가지정리", + "이름": "가지정리", + "결과단위": "원/100㎡", + "출처": "산림품셈 4-4", + "소유": "공용", + "입력": [{ "이름": "구분", "고르기": ["1종", "2종"] }], + "중간": [], + "호표": [ + { + "종류": "인력", + "요소": "인력:건설노임:1002", + "이름": "보통인부", + "단위": "인", + "수량": "찾기(소요량:산림품셈:4-4 가지정리, 구분=구분).보통인부", + "비목": "노무비" + } + ], + "덧줄": [], + "끝수": null + }, + { + "열쇠": "4-5 벌도 위험목 점검", + "이름": "벌도 위험목 점검", + "결과단위": "원/ha", + "출처": "산림품셈 4-5", + "소유": "공용", + "입력": [], + "중간": [], + "호표": [ + { "종류": "인력", "요소": "인력:건설노임:1037", "이름": "벌목부", "단위": "인", "수량": "찾기(소요량:산림품셈:4-5 벌도 위험목 점검).소요인력", "비목": "노무비" } + ], + "덧줄": [], + "끝수": null + }, + { + "열쇠": "4-6 벌목부 작업안전 보조", + "이름": "벌목부 작업안전 보조", + "결과단위": "원/일", + "출처": "산림품셈 4-6", + "소유": "공용", + "입력": [{ "이름": "벌목부", "단위": "인" }], + "중간": [], + "호표": [ + { + "종류": "인력", + "요소": "인력:건설노임:1002", + "이름": "보통인부", + "단위": "인", + "수량": "올림(벌목부 / 찾기(소요량:산림품셈:4-6 주②, 구분='안전 벌목 보조(보통인부) 추가 기준 벌목부 인원').값, 0) * 찾기(소요량:산림품셈:4-6 주②, 구분='기준 인원당 추가 보통인부').값", + "비목": "노무비", + "출처": "산림품셈 4-6 주② · 투입인원 산출" + } + ], + "덧줄": [], + "끝수": null, + "비고": "벌목부 = 1일 투입 벌목부 인원 · 4인당 1인, 넘으면 1인 더(주②)" + } + ] +} diff --git a/resources/master_data/로직_산림품셈_05장.json b/resources/master_data/로직_산림품셈_05장.json new file mode 100644 index 00000000..4bec8ae9 --- /dev/null +++ b/resources/master_data/로직_산림품셈_05장.json @@ -0,0 +1,982 @@ +{ + "그룹": "로직", + "원문": "산림품셈", + "판": "2026-01-01", + "줄": [ + { + "열쇠": "5-1-4 떼채취", + "이름": "떼채취", + "결과단위": "원/100㎡", + "출처": "산림품셈 5-1-4", + "소유": "공용", + "입력": [{ "이름": "구분", "고르기": ["줄떼", "평떼"] }], + "중간": [], + "호표": [ + { + "종류": "인력", + "요소": "인력:건설노임:1002", + "이름": "보통인부", + "단위": "인", + "수량": "찾기(소요량:산림품셈:5-1-4 떼채취, 구분=구분).보통인부", + "비목": "노무비" + } + ], + "덧줄": [], + "끝수": null, + "비고": "운반비 별도(주①) · 산복 절토면 자갈·초목 제거 별도(주②)" + }, + { + "열쇠": "5-3-1 나무식재", + "이름": "나무식재", + "결과단위": "원/1,000본", + "출처": "산림품셈 5-3-1", + "소유": "공용", + "입력": [ + { "이름": "구분", "고르기": ["소묘식재", "중묘식재", "대묘식재"] }, + { "이름": "보식", "고르기": ["해당 없음", "해당"] }, + { + "이름": "토양조건", + "고르기": ["돌 등 장애물 함량이 30% 이상이고,\n나무뿌리가 밀하게 분포할 경우", "돌 등 장애물 함량이 10~30%이고,\n나무뿌리가 보통정도로 분포할 경우", "식혈시 장애물이 거의 없음"] + } + ], + "중간": [ + { + "이름": "소요", + "식": "찾기(소요량:산림품셈:5-3-1 나무식재, 구분=구분).소요인력 + 만약(보식 == '해당', 찾기(소요량:산림품셈:5-3-1 인력 구성비·보식 가산, 구분='보식 가산(나무식재 품에)').값 * 10, 0)", + "출처": "산림품셈 5-3-1 주② 「0.05인/100본당」 × 10" + }, + { "이름": "할증", "식": "찾기(계수:산림품셈:1-4-10 토양상태, 토양조건=토양조건).할증률", "출처": "산림품셈 1-4-10" } + ], + "호표": [ + { + "종류": "인력", + "요소": "인력:건설노임:1003", + "이름": "특별인부", + "단위": "인", + "수량": "(소요 * 찾기(소요량:산림품셈:5-3-1 인력 구성비·보식 가산, 구분='인력구분 특별인부 비율').값 / 100) * (1 + 할증 / 100)", + "비목": "노무비" + }, + { + "종류": "인력", + "요소": "인력:건설노임:1002", + "이름": "보통인부", + "단위": "인", + "수량": "(소요 * 찾기(소요량:산림품셈:5-3-1 인력 구성비·보식 가산, 구분='인력구분 보통인부 비율').값 / 100) * (1 + 할증 / 100)", + "비목": "노무비" + } + ], + "덧줄": [], + "끝수": null, + "비고": "해석: 보식 가산은 인력 나누기 앞 소요인력에 더함 · 할인·할증 못 넣음 — 1-4-5 경사도(값 칸 「할인·할증률」) · 1-4-6 이동거리(조건 「작업장까지 이동거리」 빈칸 · 범위규칙이 글) — 칸 이름 · 범위규칙 문법 · 묘목 가격 별도(주④)" + }, + { + "열쇠": "5-4 파종조림", + "이름": "파종조림", + "결과단위": "원/ha", + "출처": "산림품셈 5-4", + "소유": "공용", + "입력": [ + { "이름": "내용", "고르기": ["40cm×40cm×5,000개", "80cm×80cm×5,000개", "5,000판×3립", "조파", "점파"] }, + { + "이름": "토양조건", + "고르기": ["돌 등 장애물 함량이 30% 이상이고,\n나무뿌리가 밀하게 분포할 경우", "돌 등 장애물 함량이 10~30%이고,\n나무뿌리가 보통정도로 분포할 경우", "식혈시 장애물이 거의 없음"] + } + ], + "중간": [{ "이름": "할증", "식": "찾기(계수:산림품셈:1-4-10 토양상태, 토양조건=토양조건).할증률", "출처": "산림품셈 1-4-10" }], + "호표": [ + { + "종류": "인력", + "요소": "인력:건설노임:1002", + "이름": "보통인부", + "단위": "인", + "수량": "(찾기(소요량:산림품셈:5-4 파종조림, 내용=내용).소요인력) * (1 + 할증 / 100)", + "비목": "노무비" + } + ], + "덧줄": [], + "끝수": null, + "비고": "할인·할증 못 넣음 — 1-4-5 경사도(값 칸 「할인·할증률」) · 1-4-6 이동거리(조건 「작업장까지 이동거리」 빈칸 · 범위규칙이 글) — 칸 이름 · 범위규칙 문법 · 종자 재료 별도 · 예정지정리는 3-5(주③)" + }, + { + "열쇠": "5-6 움싹갱신", + "이름": "움싹갱신(맹아근주 정리)", + "결과단위": "원/ha", + "출처": "산림품셈 5-6", + "소유": "공용", + "입력": [], + "중간": [], + "호표": [ + { + "종류": "인력", + "요소": "인력:건설노임:1003", + "이름": "특별인부", + "단위": "인", + "수량": "찾기(소요량:산림품셈:5-6 움싹갱신, 구분='맹아근주 정리작업').소요인력 * 찾기(소요량:산림품셈:5-6 인력 구성비, 구분='인력구분 특별인부 비율').값 / 100", + "비목": "노무비" + }, + { + "종류": "인력", + "요소": "인력:건설노임:1002", + "이름": "보통인부", + "단위": "인", + "수량": "찾기(소요량:산림품셈:5-6 움싹갱신, 구분='맹아근주 정리작업').소요인력 * 찾기(소요량:산림품셈:5-6 인력 구성비, 구분='인력구분 보통인부 비율').값 / 100", + "비목": "노무비" + } + ], + "덧줄": [], + "끝수": null, + "비고": "기준 900본/ha · 할인·할증 못 넣음 — 1-4-5 경사도(값 칸 「할인·할증률」) · 1-4-6 이동거리(조건 「작업장까지 이동거리」 빈칸 · 범위규칙이 글) — 칸 이름 · 범위규칙 문법" + }, + { + "열쇠": "5-7 생태보완조림", + "이름": "생태보완조림", + "결과단위": "원/ha", + "출처": "산림품셈 5-7", + "소유": "공용", + "입력": [ + { "이름": "구분", "고르기": ["움싹본수조절", "치수이식"] }, + { + "이름": "토양조건", + "고르기": ["돌 등 장애물 함량이 30% 이상이고,\n나무뿌리가 밀하게 분포할 경우", "돌 등 장애물 함량이 10~30%이고,\n나무뿌리가 보통정도로 분포할 경우", "식혈시 장애물이 거의 없음"] + } + ], + "중간": [{ "이름": "할증", "식": "찾기(계수:산림품셈:1-4-10 토양상태, 토양조건=토양조건).할증률", "출처": "산림품셈 1-4-10" }], + "호표": [ + { + "종류": "인력", + "요소": "인력:건설노임:1003", + "이름": "특별인부", + "단위": "인", + "수량": "(찾기(소요량:산림품셈:5-7 생태보완조림, 구분=구분).소요인력 * 찾기(소요량:산림품셈:5-7 인력 구성비 · 주①④, 구분='인력구분 특별인부 비율').값 / 100) * (1 + 할증 / 100)", + "비목": "노무비" + }, + { + "종류": "인력", + "요소": "인력:건설노임:1002", + "이름": "보통인부", + "단위": "인", + "수량": "(찾기(소요량:산림품셈:5-7 생태보완조림, 구분=구분).소요인력 * 찾기(소요량:산림품셈:5-7 인력 구성비 · 주①④, 구분='인력구분 보통인부 비율').값 / 100) * (1 + 할증 / 100)", + "비목": "노무비" + } + ], + "덧줄": [], + "끝수": null, + "비고": "움싹본수조절 그루터기 900본 · 치수이식 100본 기준 · 보완조림은 5-3-1 나무식재(보식 해당)로(주④) · 할인·할증 못 넣음 — 1-4-5 경사도(값 칸 「할인·할증률」) · 1-4-6 이동거리(조건 「작업장까지 이동거리」 빈칸 · 범위규칙이 글) — 칸 이름 · 범위규칙 문법" + }, + { + "열쇠": "5-8 큰나무 공익조림", + "이름": "큰나무 공익조림", + "결과단위": "원/본", + "출처": "산림품셈 5-8", + "소유": "공용", + "입력": [{ "이름": "지주목", "고르기": ["세움", "세우지 않음"] }], + "중간": [ + { + "이름": "소요", + "식": "찾기(소요량:산림품셈:5-8 큰나무 공익조림, 구분='큰나무 식재').소요인력 * (1 - 만약(지주목 == '세우지 않음', 찾기(소요량:산림품셈:5-8 인력 구성비 · 주③, 구분='지주목을 세우지 않을 경우 인력품 감').값, 0) / 100)", + "출처": "산림품셈 5-8 주③" + } + ], + "호표": [ + { + "종류": "인력", + "요소": "인력:건설노임:1003", + "이름": "특별인부", + "단위": "인", + "수량": "소요 * 찾기(소요량:산림품셈:5-8 인력 구성비 · 주③, 구분='인력구분 특별인부 비율').값 / 100", + "비목": "노무비" + }, + { + "종류": "인력", + "요소": "인력:건설노임:1002", + "이름": "보통인부", + "단위": "인", + "수량": "소요 * 찾기(소요량:산림품셈:5-8 인력 구성비 · 주③, 구분='인력구분 보통인부 비율').값 / 100", + "비목": "노무비" + } + ], + "덧줄": [], + "끝수": null, + "비고": "묘목 · 지주대 재료비 별도(주②)" + }, + { + "열쇠": "5-9 해안조림", + "이름": "해안조림", + "결과단위": "원/100본", + "출처": "산림품셈 5-9", + "소유": "공용", + "입력": [], + "중간": [], + "호표": [ + { + "종류": "인력", + "요소": "인력:건설노임:1002", + "이름": "보통인부", + "단위": "인", + "수량": "찾기(소요량:산림품셈:5-9 해안조림, 구분='보통인부').식혈 + 찾기(소요량:산림품셈:5-9 해안조림, 구분='보통인부').식재", + "비목": "노무비" + } + ], + "덧줄": [], + "끝수": null, + "비고": "대묘 기준(주④) · 비료 · 객토 · 지주목 · 볏짚 별도" + }, + { + "열쇠": "5-10 사방조림", + "이름": "사방조림", + "결과단위": "원/ha", + "출처": "산림품셈 5-10", + "소유": "공용", + "입력": [], + "중간": [], + "호표": [ + { + "종류": "인력", + "요소": "인력:건설노임:1003", + "이름": "특별인부", + "단위": "인", + "수량": "찾기(소요량:산림품셈:5-10 사방조림, 명칭='특별인부').수량", + "비목": "노무비" + }, + { + "종류": "인력", + "요소": "인력:건설노임:1002", + "이름": "보통인부", + "단위": "인", + "수량": "찾기(소요량:산림품셈:5-10 사방조림, 명칭='보통인부').수량", + "비목": "노무비" + } + ], + "덧줄": [], + "끝수": null, + "비고": "묘목 4,000본 · 요소 · 인산 재료 요소 없음(요소 · 인산 수량 원문에 없음) · 운반비 별도(조견표)" + }, + { + "열쇠": "5-11 사초심기", + "이름": "사초심기", + "결과단위": "원/100본", + "출처": "산림품셈 5-11", + "소유": "공용", + "입력": [], + "중간": [], + "호표": [ + { + "종류": "인력", + "요소": "인력:건설노임:1002", + "이름": "보통인부", + "단위": "인", + "수량": "찾기(소요량:산림품셈:5-11 사초심기, 구분='보통인부').사초굴취 + 찾기(소요량:산림품셈:5-11 사초심기, 구분='보통인부').사초식재", + "비목": "노무비" + } + ], + "덧줄": [], + "끝수": null, + "비고": "사초 운반 별도(주⑥)" + }, + { + "열쇠": "5-12 떼붙임(재배잔디)", + "이름": "떼붙임(재배잔디)", + "결과단위": "원/100㎡", + "출처": "산림품셈 5-12", + "소유": "공용", + "입력": [{ "이름": "품", "단위": "인/100㎡" }, { "이름": "비탈구배", "고르기": ["해당 없음", "평균 비탈구배 20˚~45˚ 이하"] }], + "중간": [], + "호표": [ + { + "종류": "인력", + "요소": "인력:건설노임:1002", + "이름": "보통인부", + "단위": "인", + "수량": "품 * (1 + 만약(비탈구배 == '해당 없음', 0, 찾기(소요량:산림품셈:5-12 주③, 구분='비탈구배 해당 시 품 할증').값) / 100)", + "비목": "노무비", + "출처": "산림품셈 5-12 주③" + } + ], + "덧줄": [], + "끝수": null, + "비고": "원문 품이 범위(줄떼 4.0∼5.0 · 평떼 5.0∼7.0 인/100㎡) — 설계자 입력 · 떼 값 · 운반 별도(주⑤)" + }, + { + "열쇠": "5-13 떼심기", + "이름": "떼심기", + "결과단위": "원/100㎡", + "출처": "산림품셈 5-13", + "소유": "공용", + "입력": [{ "이름": "구분", "고르기": ["줄떼심기", "띠떼심기"] }], + "중간": [], + "호표": [ + { + "종류": "인력", + "요소": "인력:건설노임:1002", + "이름": "보통인부", + "단위": "인", + "수량": "찾기(소요량:산림품셈:5-13 떼심기, 구분=구분).보통인부", + "비목": "노무비" + } + ], + "덧줄": [], + "끝수": null, + "비고": "골파기품 · 떼 값 별도(주④)" + }, + { + "열쇠": "5-14 새심기", + "이름": "새심기", + "결과단위": "원/㎡", + "출처": "산림품셈 5-14", + "소유": "공용", + "입력": [], + "중간": [{ "이름": "보통", "식": "찾기(소요량:산림품셈:5-14 새심기, 공정별='보통인부 (채집)').수량 + 찾기(소요량:산림품셈:5-14 새심기, 공정별='보통인부 (심기)').수량" }], + "호표": [ + { "종류": "인력", "요소": "인력:건설노임:1002", "이름": "보통인부", "단위": "인", "수량": "보통", "비목": "노무비" }, + { + "종류": "인력", + "요소": "인력:건설노임:1001", + "이름": "작업반장", + "단위": "인", + "수량": "보통 / 찾기(소요량:산림품셈:5-14 비고·주②③⑥, 구분='작업반장 배치 기준 보통인부').값 * 찾기(소요량:산림품셈:5-14 비고·주②③⑥, 구분='기준 인원당 작업반장').값", + "비목": "노무비", + "출처": "산림품셈 5-14 주⑥" + } + ], + "덧줄": [], + "끝수": null, + "비고": "요소 · 인산 재료 요소 없음 · 새운반 조견표 별도(주③)" + }, + { + "열쇠": "5-15 바자얽기", + "이름": "바자얽기", + "결과단위": "원/10m", + "출처": "산림품셈 5-15", + "소유": "공용", + "입력": [], + "중간": [], + "호표": [ + { + "종류": "인력", + "요소": "인력:건설노임:1002", + "이름": "보통인부", + "단위": "인", + "수량": "찾기(소요량:산림품셈:5-15 바자얽기, 명칭='보통인부').수량", + "비목": "노무비" + }, + { + "종류": "인력", + "요소": "인력:건설노임:1003", + "이름": "특별인부", + "단위": "인", + "수량": "찾기(소요량:산림품셈:5-15 바자얽기, 명칭='특별인부').수량", + "비목": "노무비" + } + ], + "덧줄": [], + "끝수": null, + "비고": "말뚝 20개 재료 요소 없음 · 바자용 나뭇가지 재료 없음" + }, + { + "열쇠": "5-18 씨뿌리기(줄)", + "이름": "씨뿌리기(줄)", + "결과단위": "원/m", + "출처": "산림품셈 5-18", + "소유": "공용", + "입력": [], + "중간": [], + "호표": [ + { + "종류": "인력", + "요소": "인력:건설노임:1003", + "이름": "특별인부", + "단위": "인", + "수량": "찾기(소요량:산림품셈:5-18 씨뿌리기(줄), 공정별='특별인부').수량", + "비목": "노무비" + }, + { + "종류": "인력", + "요소": "인력:건설노임:1002", + "이름": "보통인부", + "단위": "인", + "수량": "찾기(소요량:산림품셈:5-18 씨뿌리기(줄), 공정별='보통인부').수량", + "비목": "노무비" + } + ], + "덧줄": [], + "끝수": null, + "비고": "종자 · 비료 · 비토 · 객토 재료 요소 없음 · 비료 · 비토 운반 조견표 별도" + }, + { + "열쇠": "5-20 표토관리", + "이름": "표토관리", + "결과단위": "원/㎡", + "출처": "산림품셈 5-20", + "소유": "공용", + "입력": [ + { "이름": "공정", "고르기": ["표토채취", "표토붙이기"] }, + { + "이름": "지역", + "고르기": [ + "전국평균", + "전국", + "서울", + "경기", + "강원", + "충북", + "충남", + "전북", + "경북", + "경남", + "부산", + "제주", + "대구", + "인천", + "대전", + "울산", + "세종", + "전남광주" + ], + "출처": "건설품셈 공통 8-1-7 5" + }, + { "이름": "보정작업", "고르기": ["해당 없음", "암석작업(연암・보통암・경암)", "전석섞인토사"], "출처": "건설품셈 공통 8-1-7 1" } + ], + "중간": [], + "호표": [ + { + "종류": "인력", + "요소": "인력:건설노임:1002", + "이름": "보통인부", + "단위": "인", + "수량": "찾기(소요량:산림품셈:5-20 표토관리, 공정=공정, 구분='보통인부').공정량", + "비목": "노무비" + }, + { + "종류": "로직", + "요소": "로직(건설품셈:8 굴착기(무한궤도) 시간당 경비, 기계='0201-0070', 지역=지역, 보정작업=보정작업)", + "이름": "굴착기(무한궤도) 0.7㎥", + "단위": "시간", + "수량": "찾기(소요량:산림품셈:5-20 표토관리, 공정=공정, 구분='굴착기(무한궤도, 0.7㎥)').공정량" + } + ], + "덧줄": [], + "끝수": null + }, + { + "열쇠": "5-21 표토이식", + "이름": "표토이식", + "결과단위": "원/㎡", + "출처": "산림품셈 5-21", + "소유": "공용", + "입력": [{ "이름": "구분", "고르기": ["채취", "운반", "붙이기"] }], + "중간": [], + "호표": [ + { + "종류": "인력", + "요소": "인력:건설노임:1002", + "이름": "보통인부", + "단위": "인", + "수량": "찾기(소요량:산림품셈:5-21 표토이식, 구분=구분).보통인부", + "비목": "노무비" + } + ], + "덧줄": [], + "끝수": null, + "비고": "표토 두께 0.2m · 운반 30m 기준(주③④) · 복토 · 면고르기 · 잡관목 제거 별도(주⑤)" + }, + { + "열쇠": "5-22-2 평떼 붙임", + "이름": "평떼 붙임", + "결과단위": "원/㎡", + "출처": "산림품셈 5-22-2", + "소유": "공용", + "입력": [], + "중간": [], + "호표": [ + { + "종류": "인력", + "요소": "인력:건설노임:1038", + "이름": "조경공", + "단위": "인", + "수량": "찾기(소요량:산림품셈:5-22-2 평떼 붙임, 구분='조경공').적용", + "비목": "노무비" + }, + { + "종류": "인력", + "요소": "인력:건설노임:1002", + "이름": "보통인부", + "단위": "인", + "수량": "찾기(소요량:산림품셈:5-22-2 평떼 붙임, 구분='보통인부').적용", + "비목": "노무비" + } + ], + "덧줄": [], + "끝수": null, + "비고": "떼 재료 요소 없음" + }, + { + "열쇠": "5-23-2 떼붙임", + "이름": "줄떼 떼붙임", + "결과단위": "원/㎡", + "출처": "산림품셈 5-23-2", + "소유": "공용", + "입력": [], + "중간": [], + "호표": [ + { + "종류": "인력", + "요소": "인력:건설노임:1038", + "이름": "조경공", + "단위": "인", + "수량": "찾기(소요량:산림품셈:5-23-2 떼붙임, 구분='조경공').적용", + "비목": "노무비" + }, + { + "종류": "인력", + "요소": "인력:건설노임:1002", + "이름": "보통인부", + "단위": "인", + "수량": "찾기(소요량:산림품셈:5-23-2 떼붙임, 구분='보통인부').적용", + "비목": "노무비" + } + ], + "덧줄": [], + "끝수": null, + "비고": "떼 재료 요소 없음" + }, + { + "열쇠": "5-22-3 떼꽂이 제작 및 설치", + "이름": "평떼 떼꽂이 제작 및 설치", + "결과단위": "원/㎡", + "출처": "산림품셈 5-22-3", + "소유": "공용", + "입력": [], + "중간": [], + "호표": [ + { + "종류": "인력", + "요소": "인력:건설노임:1002", + "이름": "보통인부", + "단위": "인", + "수량": "찾기(소요량:산림품셈:5-22-3 떼꽂이 제작 및 설치, 구분='보통인부').적용", + "비목": "노무비" + } + ], + "덧줄": [], + "끝수": null, + "비고": "평떼 품(0.06인)에 떼꽂이가 들어 있으면 비교 뒤 적용(5-22-3 주)" + }, + { + "열쇠": "5-23-3 떼꽂이 제작 및 설치", + "이름": "줄떼 떼꽂이 제작 및 설치", + "결과단위": "원/㎡", + "출처": "산림품셈 5-23-3", + "소유": "공용", + "입력": [], + "중간": [], + "호표": [ + { + "종류": "인력", + "요소": "인력:건설노임:1002", + "이름": "보통인부", + "단위": "인", + "수량": "찾기(소요량:산림품셈:5-23-3 떼꽂이 제작 및 설치, 구분='보통인부').적용", + "비목": "노무비" + } + ], + "덧줄": [], + "끝수": null + }, + { + "열쇠": "5-22-4 평떼 시비", + "이름": "평떼 시비", + "결과단위": "원/일", + "출처": "산림품셈 5-22-4", + "소유": "공용", + "입력": [], + "중간": [], + "호표": [ + { + "종류": "인력", + "요소": "인력:건설노임:1038", + "이름": "조경공", + "단위": "인", + "수량": "찾기(소요량:산림품셈:5-22-4 평떼 시비, 구분='조경공').수량", + "비목": "노무비" + }, + { + "종류": "인력", + "요소": "인력:건설노임:1002", + "이름": "보통인부", + "단위": "인", + "수량": "찾기(소요량:산림품셈:5-22-4 평떼 시비, 구분='보통인부').수량", + "비목": "노무비" + } + ], + "덧줄": [], + "끝수": null, + "비고": "트럭 2.5ton 1대 — 화물트럭 기계 요소 없음 · 시공량 칸 「시공량(㎡)」 이름 때문에 ㎡당으로 못 바꿈 · 비료 별도(주③)" + }, + { + "열쇠": "5-24-1 뿜어붙이기-기계/일반", + "이름": "씨앗뿜어붙이기(일반)", + "결과단위": "원/㎡", + "출처": "산림품셈 5-24-1", + "소유": "공용", + "입력": [ + { + "이름": "지역", + "고르기": [ + "전국평균", + "전국", + "서울", + "경기", + "강원", + "충북", + "충남", + "전북", + "경북", + "경남", + "부산", + "제주", + "대구", + "인천", + "대전", + "울산", + "세종", + "전남광주" + ], + "출처": "건설품셈 공통 8-1-7 5" + } + ], + "중간": [], + "호표": [ + { + "종류": "인력", + "요소": "인력:건설노임:1038", + "이름": "조경공", + "단위": "인", + "수량": "찾기(소요량:산림품셈:5-24-1 뿜어붙이기-기계/일반, 구분='인력', 명칭='조경공').적용수량", + "비목": "노무비" + }, + { + "종류": "인력", + "요소": "인력:건설노임:1002", + "이름": "보통인부", + "단위": "인", + "수량": "찾기(소요량:산림품셈:5-24-1 뿜어붙이기-기계/일반, 구분='인력', 명칭='보통인부').적용수량", + "비목": "노무비" + }, + { + "종류": "로직", + "요소": "로직(건설품셈:8 기계 시간당 경비, 기계='7204-0055', 지역=지역)", + "이름": "물탱크(살수차) 5,500ℓ", + "단위": "시간", + "수량": "찾기(소요량:산림품셈:5-24-1 뿜어붙이기-기계/일반, 구분='장비', 명칭='물탱크').적용수량" + } + ], + "덧줄": [], + "끝수": null, + "비고": "종자살포기 · 트럭 4.5ton 기계 요소 없음 · 종자 · 비료 · 피복제 · 침식안정제 · 색소 재료 요소 없음" + }, + { + "열쇠": "5-24-2 뿜어붙이기-기계/마사토", + "이름": "씨앗뿜어붙이기(마사토)", + "결과단위": "원/㎡", + "출처": "산림품셈 5-24-2", + "소유": "공용", + "입력": [ + { + "이름": "지역", + "고르기": [ + "전국평균", + "전국", + "서울", + "경기", + "강원", + "충북", + "충남", + "전북", + "경북", + "경남", + "부산", + "제주", + "대구", + "인천", + "대전", + "울산", + "세종", + "전남광주" + ], + "출처": "건설품셈 공통 8-1-7 5" + } + ], + "중간": [], + "호표": [ + { + "종류": "인력", + "요소": "인력:건설노임:1038", + "이름": "조경공", + "단위": "인", + "수량": "찾기(소요량:산림품셈:5-24-2 뿜어붙이기-기계/마사토, 구분='인력', 명칭='조경공').적용수량", + "비목": "노무비" + }, + { + "종류": "인력", + "요소": "인력:건설노임:1002", + "이름": "보통인부", + "단위": "인", + "수량": "찾기(소요량:산림품셈:5-24-2 뿜어붙이기-기계/마사토, 구분='인력', 명칭='보통인부').적용수량", + "비목": "노무비" + }, + { + "종류": "로직", + "요소": "로직(건설품셈:8 기계 시간당 경비, 기계='7204-0055', 지역=지역)", + "이름": "물탱크(살수차) 5,500ℓ", + "단위": "시간", + "수량": "찾기(소요량:산림품셈:5-24-2 뿜어붙이기-기계/마사토, 구분='장비', 명칭='물탱크').적용수량" + } + ], + "덧줄": [], + "끝수": null, + "비고": "종자살포기 · 트럭 4.5ton 기계 요소 없음 · 종자 · 비료 · 피복제 · 침식안정제 · 색소 재료 요소 없음" + }, + { + "열쇠": "5-25 거적덮기", + "이름": "거적덮기", + "결과단위": "원/㎡", + "출처": "산림품셈 5-25", + "소유": "공용", + "입력": [], + "중간": [], + "호표": [ + { + "종류": "인력", + "요소": "인력:건설노임:1038", + "이름": "조경공", + "단위": "인", + "수량": "찾기(소요량:산림품셈:5-25 거적덮기, 구분='인력', 명칭='조경공').수량", + "비목": "노무비" + }, + { + "종류": "인력", + "요소": "인력:건설노임:1002", + "이름": "보통인부", + "단위": "인", + "수량": "찾기(소요량:산림품셈:5-25 거적덮기, 구분='인력', 명칭='보통인부').수량", + "비목": "노무비" + } + ], + "덧줄": [], + "끝수": null, + "비고": "거적 1.1㎡ 재료 요소 없음 · 부속자재 별도(주①)" + }, + { + "열쇠": "5-27 식재면 관리", + "이름": "식재면 관리", + "결과단위": "원/10㎡", + "출처": "산림품셈 5-27", + "소유": "공용", + "입력": [], + "중간": [], + "호표": [ + { + "종류": "인력", + "요소": "인력:건설노임:1038", + "이름": "조경공", + "단위": "인", + "수량": "찾기(소요량:산림품셈:5-27 식재면 관리, 구분='조경공').수량", + "비목": "노무비" + }, + { + "종류": "인력", + "요소": "인력:건설노임:1002", + "이름": "보통인부", + "단위": "인", + "수량": "찾기(소요량:산림품셈:5-27 식재면 관리, 구분='보통인부').수량", + "비목": "노무비" + } + ], + "덧줄": [], + "끝수": null + }, + { + "열쇠": "5-28-1 짚망", + "이름": "짚망", + "결과단위": "원/100㎡", + "출처": "산림품셈 5-28-1", + "소유": "공용", + "입력": [], + "중간": [], + "호표": [ + { + "종류": "인력", + "요소": "인력:건설노임:1003", + "이름": "특별인부", + "단위": "인", + "수량": "찾기(소요량:산림품셈:5-28-1 짚망, 구분='특별인부').수량", + "비목": "노무비" + }, + { + "종류": "인력", + "요소": "인력:건설노임:1002", + "이름": "보통인부", + "단위": "인", + "수량": "찾기(소요량:산림품셈:5-28-1 짚망, 구분='보통인부').수량", + "비목": "노무비" + } + ], + "덧줄": [], + "끝수": null, + "비고": "재료 설계수량 별도(주②)" + }, + { + "열쇠": "5-29 복사이식 작업량", + "이름": "복사이식 굴착기 시간당 작업량(Q1)", + "결과단위": "㎥/시간", + "출처": "산림품셈 5-29 주④", + "소유": "공용", + "입력": [], + "중간": [ + { "이름": "q", "식": "찾기(소요량:산림품셈:5-29 주③④, 구분='적용 굴착기(무한궤도형)').값", "출처": "산림품셈 5-29 주③ 1.0㎥" }, + { "이름": "K", "식": "찾기(소요량:산림품셈:5-29 복사이식, 구분='K(버킷계수)').적용" }, + { "이름": "f", "식": "찾기(소요량:산림품셈:5-29 복사이식, 구분='f(체적환산계수)').적용" }, + { "이름": "E", "식": "찾기(소요량:산림품셈:5-29 복사이식, 구분='E(작업효율)').적용" }, + { "이름": "Cm", "식": "찾기(소요량:산림품셈:5-29 복사이식, 구분='Cm(1회 사이클시간)').적용" } + ], + "결과": { "식": "반올림(3600 * q * K * f * E / Cm, 3)", "출처": "건설품셈 공통 8-1-4 주①" }, + "끝수": "소수 3자리 사사오입(건설품셈 공통 8-1-4 주①)", + "비고": "해석: q = 주③ 굴착기 용량 1.0㎥ · 주⑤ Q=Q1×T 는 단위가 안 맞아(㎥/시간 × m) 넣지 않음" + }, + { + "열쇠": "5-29 복사이식", + "이름": "복사이식(굴착기 1.0㎥)", + "결과단위": "원/㎥", + "출처": "산림품셈 5-29", + "소유": "공용", + "입력": [ + { + "이름": "지역", + "고르기": [ + "전국평균", + "전국", + "서울", + "경기", + "강원", + "충북", + "충남", + "전북", + "경북", + "경남", + "부산", + "제주", + "대구", + "인천", + "대전", + "울산", + "세종", + "전남광주" + ], + "출처": "건설품셈 공통 8-1-7 5" + }, + { "이름": "보정작업", "고르기": ["해당 없음", "암석작업(연암・보통암・경암)", "전석섞인토사"], "출처": "건설품셈 공통 8-1-7 1" } + ], + "중간": [{ "이름": "작업량", "식": "로직(산림품셈:5-29 복사이식 작업량)" }], + "호표": [ + { + "종류": "로직", + "요소": "로직(건설품셈:8 굴착기(무한궤도) 시간당 경비, 기계='0201-0100', 지역=지역, 보정작업=보정작업)", + "이름": "굴착기(무한궤도) 1.0㎥", + "단위": "시간", + "수량": "1 / 작업량" + } + ], + "덧줄": [], + "끝수": null, + "비고": "Q1 기준(주④) · 주⑤ 표토두께 T 반영은 판정 필요 · 건설품셈 공통 8-2-3 계수 필요(0.2㎥ · 0.4㎥ 굴착기를 쓸 때)" + }, + { + "열쇠": "5-30 표시봉설치", + "이름": "표시봉 설치", + "결과단위": "원/1,000본", + "출처": "산림품셈 5-30", + "소유": "공용", + "입력": [], + "중간": [], + "호표": [ + { "종류": "인력", "요소": "인력:건설노임:1002", "이름": "보통인부", "단위": "인", "수량": "찾기(소요량:산림품셈:5-30 표시봉설치).소요인력", "비목": "노무비" } + ], + "덧줄": [], + "끝수": null, + "비고": "표시봉 가격 시장가격(주③)" + }, + { + "열쇠": "5-31 지주목설치", + "이름": "지주목 설치", + "결과단위": "원/1,000본", + "출처": "산림품셈 5-31", + "소유": "공용", + "입력": [], + "중간": [], + "호표": [ + { "종류": "인력", "요소": "인력:건설노임:1002", "이름": "보통인부", "단위": "인", "수량": "찾기(소요량:산림품셈:5-31 지주목설치).소요인력", "비목": "노무비" } + ], + "덧줄": [], + "끝수": null, + "비고": "대묘식재만 · 1본당 1개(주②) · 지주목 재료 별도" + }, + { + "열쇠": "5-32 대절작업", + "이름": "대절작업", + "결과단위": "원/1,000본", + "출처": "산림품셈 5-32", + "소유": "공용", + "입력": [], + "중간": [], + "호표": [ + { "종류": "인력", "요소": "인력:건설노임:1003", "이름": "특별인부", "단위": "인", "수량": "찾기(소요량:산림품셈:5-32 대절작업).소요인력", "비목": "노무비" } + ], + "덧줄": [], + "끝수": null + }, + { + "열쇠": "5-33 묘목 가식작업", + "이름": "묘목 가식작업", + "결과단위": "원/1,000본", + "출처": "산림품셈 5-33", + "소유": "공용", + "입력": [{ "이름": "구분", "고르기": ["소묘", "중묘", "대묘"] }], + "중간": [], + "호표": [ + { + "종류": "인력", + "요소": "인력:건설노임:1002", + "이름": "보통인부", + "단위": "인", + "수량": "찾기(소요량:산림품셈:5-33 묘목 가식작업, 구분=구분).소요인력", + "비목": "노무비" + } + ], + "덧줄": [], + "끝수": null + }, + { + "열쇠": "5-34 묘목 소운반", + "이름": "묘목 소운반", + "결과단위": "원/1,000본", + "출처": "산림품셈 5-34", + "소유": "공용", + "입력": [{ "이름": "구분", "고르기": ["소묘", "중묘", "대묘"] }, { "이름": "용기묘", "고르기": ["해당 없음", "해당"] }], + "중간": [], + "호표": [ + { + "종류": "인력", + "요소": "인력:건설노임:1002", + "이름": "보통인부", + "단위": "인", + "수량": "찾기(소요량:산림품셈:5-34 묘목 소운반, 구분=구분).소요인력 * 만약(구분 == '대묘' 그리고 용기묘 == '해당', 찾기(소요량:산림품셈:5-34 주②, 구분='대묘 중 용기묘 대묘 본 품 계상').값 / 100, 1)", + "비목": "노무비", + "출처": "산림품셈 5-34 주②" + } + ], + "덧줄": [], + "끝수": null, + "비고": "대운반비는 견적 · 적재량 자료로 별도(주③)" + } + ] +} diff --git a/resources/tester/test_masterdata_check.py b/resources/tester/test_masterdata_check.py index 9c102860..09070097 100644 --- a/resources/tester/test_masterdata_check.py +++ b/resources/tester/test_masterdata_check.py @@ -16,6 +16,9 @@ SAMPLES = [ "계수_산림품셈_9장.json", "기계_건설품셈.json", "로직_건설품셈_공통8장.json", + "로직_산림품셈_03장.json", + "로직_산림품셈_04장.json", + "로직_산림품셈_05장.json", "로직_산림품셈_10장.json", "로직_산림품셈_11장.json", "로직_산림품셈_13장.json", @@ -141,6 +144,29 @@ def test_중기운반_트레일러_횟수(whole): assert got["줄"][0]["수량"].quantize(Decimal("0.0001")) == Decimal("1.3041") +def test_예정지정리_할증_합산(whole): + """3-5 — 바이오매스 10 + 침엽수림 10 + 개벌지 10 + 산불 5×2/10 = 31% · 2.4×50%×1.31.""" + given = { + "작업내용": "보완사업지 정리", + "정리량": 120, + "임상": "침엽수림", + "개벌지": "700㎡ 이하(또는 벌채폭 30m)", + "산불피해면적": 2, + "조림면적": 10, + } + got = mf.run(whole, "산림품셈:3-5 예정지정리", given) + assert [line["수량"] for line in got["줄"]] == [Decimal("1.572"), Decimal("1.572")] + + +def test_작업안전_보조_올림(whole): + """4-6 — 벌목부 4인당 보통인부 1인 · 5인이면 2인.""" + qty = [ + mf.run(whole, "산림품셈:4-6 벌목부 작업안전 보조", {"벌목부": n})["줄"][0]["수량"] + for n in (3, 4, 5, 8) + ] + assert qty == [1, 1, 2, 2] + + def test_범위_입력은_막음(whole): with pytest.raises(mf.FormulaError): mf.run(