diff --git a/M01_MasterData/M01_MasterData_Machine.py b/M01_MasterData/M01_MasterData_Machine.py index 0972627af..fa6061d72 100644 --- a/M01_MasterData/M01_MasterData_Machine.py +++ b/M01_MasterData/M01_MasterData_Machine.py @@ -3,11 +3,14 @@ 계수 = `master_machine_coef`(TS 짝 `common_util/common_util_machine_coef.ts`) · 시간당 = 서버 기계경비식(`M02_Machine_Hourly.hourly` · 전국평균 · 기본 옵션) · +쓰는 계산식 = `M02_Machine_Hourly.pick`(목록 › 꼴 · 822-2) · [새 기계] 저장 = 꼴에 맞는 식 목록에 원문번호 등록 · +M01 에서 만든 기계(출처 모두 「자체」)를 지우면 그 번호 기계가 더 없을 때 목록에서 뺌(`register`) · 마스터 파일은 읽기만 — 쓰기는 `Store_Make.save`. """ from __future__ import annotations +import copy import json import re from decimal import Decimal @@ -102,6 +105,78 @@ def hourly(keys: list[str]) -> dict[str, dict]: return out +def formula(row: dict) -> dict: + """기계 줄(저장 전 고친 값도) → 쓰는 계산식 {키, 이름, 방법 목록|꼴|그 기계 식, 까닭}(822-2 상세 페이지).""" + from M02_MasterTemplete import M02_Machine_Hourly as mh # M02 가 M01 을 부름 — 늦게 + + code = str(row.get("원문번호") or "") + got = mh.pick({**row, "값": store._dec(row.get("값") or {})}) + how = "목록" if mh.listed(code) else "그 기계 식" if got and mh._own(code) else "꼴" + base = {"방법": how, "까닭": mh.why({**row, "값": store._dec(row.get("값") or {})}, got)} + return base | ({"키": got["키"], "이름": got.get("이름")} if got else {}) + + +def _family_files() -> dict[str, str]: + """기계경비식 키 → 로직 파일 이름.""" + return { + str(r.get("키")): name + for name, data in store.loaded()[0].items() + if data.get("그룹") == "로직" and "건설기계" in name + for r in data.get("줄") or [] + } + + +def register(batch: list[dict]) -> None: + """[새 기계] 저장 = 꼴 식 「기계」 목록에 그 원문번호 더함 · M01 에서 만든 기계(출처 모두 「자체」)를 + 지우면 같은 번호 기계가 더 없을 때 목록에서 뺌 — 로직 파일 고침을 같은 저장 묶음에 붙임(정본 저장 길).""" + from M02_MasterTemplete import M02_Machine_Hourly as mh # M02 가 M01 을 부름 — 늦게 + from M02_MasterTemplete import M02_MyMachine as mym + + part = next((p for p in batch if p.get("file") == FILE), None) + if part is None: + return + rows = _rows() + gone = {str(c.get("key")) for c in part.get("changes") or [] if c.get("op") == "delete"} + add: dict[str, list[str]] = {} + drop: set[str] = set() + for ch in part.get("changes") or []: + row = ch.get("row") if ch.get("op") == "add" else None + code = str((row or {}).get("원문번호") or "").strip() + if row and code and not mh.listed(code) and not mh._own(code): + key = mym.logic_key({**row, "값": store._dec(row.get("값") or {})}) + if key and code not in add.get(key, []): + add.setdefault(key, []).append(code) + old = next((r for r in rows if r.get("키") == ch.get("key")), None) + if ( + ch.get("op") == "delete" + and old + and set((old.get("출처") or {}).values()) == {OWN_SOURCE} + ): + code = str(old.get("원문번호") or "") + if code and not any( + str(r.get("원문번호")) == code and r.get("키") not in gone for r in rows + ): + drop.add(code) + if not add and not drop: + return + files = _family_files() + for name in dict.fromkeys(files.values()): + changes = [] + for logic in store.read(name)[0].get("줄") or []: + ins = logic.get("입력") or [] + pick = next((i for i in ins if i.get("이름") == "기계" and "고르기" in i), None) + if pick is None: + continue + codes = [c for c in pick["고르기"] if str(c) not in drop] + codes += [c for c in add.get(str(logic["키"]), []) if c not in codes] + if codes != pick["고르기"]: + new = copy.deepcopy(logic) + next(i for i in new["입력"] if i.get("이름") == "기계")["고르기"] = codes + changes.append({"op": "edit", "key": logic["키"], "row": new}) + if changes: + batch.append({"file": name, "version": store.read(name)[1], "changes": changes}) + + # ── 쓰는 곳 ───────────────────────────────────────────────────────── def _logic_index() -> tuple[dict[str, list[str]], dict[str, list[str]]]: """(원문번호 → 로직 「키 이름」 · 기계 키 → 로직) — 기계 고르기 · 식 안 EQ 키.""" @@ -218,5 +293,9 @@ def fix(part: dict) -> None: values.update(got) was_unit = (old or {}).get("단위") or {} was_src = (old or {}).get("출처") or {} - row["단위"] = {k: was_unit.get(k, units.get(k, "")) for k in values} - row["출처"] = {k: was_src.get(k, OWN_SOURCE) for k in values} + unit, src = ( + row.get("단위") or {}, + row.get("출처") or {}, + ) # 보낸 칸이 있으면 그 글(822-2 빌더) + row["단위"] = {k: unit.get(k) or was_unit.get(k, units.get(k, "")) for k in values} + row["출처"] = {k: src.get(k) or was_src.get(k, OWN_SOURCE) for k in values} diff --git a/docs/raw/요구_1104/_목록_802-2_변환대조.xlsx b/docs/raw/요구_1104/_목록_802-2_변환대조.xlsx index d3abd9b33..ada56c156 100644 Binary files a/docs/raw/요구_1104/_목록_802-2_변환대조.xlsx and b/docs/raw/요구_1104/_목록_802-2_변환대조.xlsx differ diff --git a/resources/master_data/_키대장.json b/resources/master_data/_키대장.json index c2c51ec34..1d30cd486 100644 --- a/resources/master_data/_키대장.json +++ b/resources/master_data/_키대장.json @@ -1,5 +1,5 @@ { - "다음": {"LB": 409, "EQ": 669, "RT": 20, "MN": 7000, "MT": 30719, "MO": 74, "MP": 364, "FX": 6, "CF": 159, "QF": 477, "GF": 338, "CC": 528, "GC": 1196, "QC": 2060, "GX": 5, "UA": 38}, + "다음": {"LB": 409, "EQ": 669, "RT": 20, "MN": 7000, "MT": 30719, "MO": 74, "MP": 364, "FX": 6, "CF": 159, "QF": 477, "GF": 338, "CC": 528, "GC": 1200, "QC": 2060, "GX": 5, "UA": 38}, "폐기": {"MT000001": "자재품목 휘발유 — 값이 비고 글뿐 · 유가 테이블로 감", "MT000002": "자재품목 경유 — 값이 비고 글뿐 · 유가 테이블로 감", "MT000003": "자재품목 선박용경유 — 값이 비고 글뿐 · 유가 테이블로 감", "MT000004": "자재품목 중유 — 값이 비고 글뿐 · 유가 테이블로 감", "MT000005": "자재품목 등유 — 값이 비고 글뿐 · 유가 테이블로 감", "LB000399": "이름 「〃」 — 직종이 아니라 되풀이 기호 · 소요량 13-6-9 에서 윗줄 직종으로 바로잡음", "MN": "재료_나라장터자재 — old 로 옮김 · 로직은 자재품목·품셈재료로 갈아 끼움", "LB000372": "미확보 고급기능사 — 측량노임 항공사진고급기능사 옛이름으로 옮김", "LB000393": "미확보 리베팅공 — 건설노임 철골공 옛이름으로 옮김(2010 통합표 연번10)", "LB000405": "미확보 Belt Conveyor 설치공 — 품셈 13-10-1 주② 배분으로 다섯 직종에 나눔", "MT000006": "자재품목 전력 — 재료_유가전력 전력 줄로 감", "MT000007": "자재품목 전력 — 재료_유가전력 전력 줄로 감", "LB000368": "미확보 기술사 — 기술사(건설) 옛이름으로 옮김", "LB000369": "미확보 특급기술자 — 특급기술자(건설) 옛이름으로 옮김", "LB000370": "미확보 고급기술자 — 고급기술자(건설) 옛이름으로 옮김", "LB000361": "미확보 중급기술자 — 중급기술자(건설) 옛이름으로 옮김", "LB000364": "미확보 초급기술자 — 초급기술자(건설) 옛이름으로 옮김", "LB000365": "미확보 고급숙련기술자 — 고급숙련기술자(건설) 옛이름으로 옮김", "LB000366": "미확보 중급숙련기술자 — 중급숙련기술자(건설) 옛이름으로 옮김", "LB000367": "미확보 초급숙련기술자 — 초급숙련기술자(건설) 옛이름으로 옮김", "LB000389": "미확보 기계기사 — 초급기술자(기계·설비) 옛이름으로 옮김", "LB000388": "미확보 기계산업기사 — 초급숙련기술자(기계·설비) 옛이름으로 옮김", "MO000055": {"원문번호": "주택용저압:기본_200이하", "파일": "재료_유가전력.json"}, "MO000056": {"원문번호": "주택용저압:기본_201~400", "파일": "재료_유가전력.json"}, "MO000057": {"원문번호": "주택용저압:기본_400초과", "파일": "재료_유가전력.json"}, "MO000059": {"원문번호": "주택용저압:전력량_다음200", "파일": "재료_유가전력.json"}, "MO000060": {"원문번호": "주택용저압:전력량_400초과", "파일": "재료_유가전력.json"}, "MO000061": {"원문번호": "주택용저압:월간최저요금", "파일": "재료_유가전력.json"}, "MO000062": {"원문번호": "일반용갑I저압:기본", "파일": "재료_유가전력.json"}, "MO000063": {"원문번호": "일반용갑I저압:전력량_여름철", "파일": "재료_유가전력.json"}, "MO000064": {"원문번호": "일반용갑I저압:전력량_봄가을철", "파일": "재료_유가전력.json"}, "MO000065": {"원문번호": "일반용갑I저압:전력량_겨울철", "파일": "재료_유가전력.json"}, "MO000066": {"원문번호": "산업용갑I저압:기본", "파일": "재료_유가전력.json"}, "MO000067": {"원문번호": "산업용갑I저압:전력량_여름철", "파일": "재료_유가전력.json"}, "MO000068": {"원문번호": "산업용갑I저압:전력량_봄가을철", "파일": "재료_유가전력.json"}, "MO000069": {"원문번호": "산업용갑I저압:전력량_겨울철", "파일": "재료_유가전력.json"}, "MO000070": {"원문번호": "임시전력갑:기본요금적용", "파일": "재료_유가전력.json"}, "MO000071": {"원문번호": "임시전력갑:전력량요금적용", "파일": "재료_유가전력.json"}, "MO000072": {"원문번호": "임시전력갑:월간최저요금", "파일": "재료_유가전력.json"}, "GC001145": "작업량당 기계경비 — 부르는 곳 0 · 필요하면 단가산출에 기계 하나 넣어 만듦(요구 734-4 · 735-4 · 813-2)", "GC001148": "작업량당 기계경비 — 부르는 곳 0 · 필요하면 단가산출에 기계 하나 넣어 만듦(요구 734-4 · 735-4 · 813-2)", "GC001151": "작업량당 기계경비 — 부르는 곳 0 · 필요하면 단가산출에 기계 하나 넣어 만듦(요구 734-4 · 735-4 · 813-2)", "GC001156": "작업량당 기계경비 — 부르는 곳 0 · 필요하면 단가산출에 기계 하나 넣어 만듦(요구 734-4 · 735-4 · 813-2)", "GC001159": "작업량당 기계경비 — 부르는 곳 0 · 필요하면 단가산출에 기계 하나 넣어 만듦(요구 734-4 · 735-4 · 813-2)", "GC001166": "작업량당 기계경비 — 부르는 곳 0 · 필요하면 단가산출에 기계 하나 넣어 만듦(요구 734-4 · 735-4 · 813-2)", "EQ000656": "자체 발전기 5.5㎾ — 품셈에 없는 기계 = 사용자 내 기계(요구서 796 · 821-4) · 결번", "EQ000657": "자체 발전기 7㎾ — 품셈에 없는 기계 = 사용자 내 기계(요구서 796 · 821-4) · 결번", "EQ000658": "자체 발전기 10㎾ — 품셈에 없는 기계 = 사용자 내 기계(요구서 796 · 821-4) · 결번", "EQ000659": "자체 대형 브레이커 0.18㎥ — 품셈에 없는 기계 = 사용자 내 기계(요구서 796 · 821-4) · 결번", "EQ000660": "자체 에어 호스 1.91㎝ — 품셈에 없는 기계 = 사용자 내 기계(요구서 796 · 821-4) · 결번", "EQ000661": "자체 모노펌프 5-20㎥/hr — 품셈에 없는 기계 = 사용자 내 기계(요구서 796 · 821-4) · 결번", "EQ000662": "자체 파워트로웰 3.73㎾ — 품셈에 없는 기계 = 사용자 내 기계(요구서 796 · 821-4) · 결번", "EQ000663": "자체 콘크리트펌프용 파이프 150㎜×1m — 품셈에 없는 기계 = 사용자 내 기계(요구서 796 · 821-4) · 결번", "EQ000664": "자체 콘크리트펌프용 파이프 150㎜×2m — 품셈에 없는 기계 = 사용자 내 기계(요구서 796 · 821-4) · 결번", "EQ000665": "자체 콘크리트펌프용 파이프 150㎜×3m — 품셈에 없는 기계 = 사용자 내 기계(요구서 796 · 821-4) · 결번", "EQ000666": "자체 콘크리트펌프용 파이프 곡관 150㎜ 45° — 품셈에 없는 기계 = 사용자 내 기계(요구서 796 · 821-4) · 결번", "EQ000667": "자체 콘크리트펌프용 파이프 곡관 150㎜ 60° — 품셈에 없는 기계 = 사용자 내 기계(요구서 796 · 821-4) · 결번", "EQ000668": "자체 콘크리트펌프용 파이프 곡관 150㎜ 90° — 품셈에 없는 기계 = 사용자 내 기계(요구서 796 · 821-4) · 결번", "GC001195": "공통 8 파워트로웰 시간당 경비 — 품셈에 없는 기계 = 사용자 내 기계(요구서 796 · 821-4) · 결번"}, "키": { "CC000001": {"원문번호": "공통 1-3-1 콘크리트 및 포장용 재료", "파일": "계수_건설품셈_01장_적용기준.json"}, @@ -2535,6 +2535,10 @@ "GC001192": {"원문번호": "공통 1-5-4 건설폐기물 발생량", "파일": "로직_건설품셈_01장_적용기준.json"}, "GC001193": {"원문번호": "공통 1-5-6 공사용수", "파일": "로직_건설품셈_01장_적용기준.json"}, "GC001194": {"원문번호": "공통 3-2-1 잔토처리(인력)", "파일": "로직_건설품셈_03장_토공사.json"}, + "GC001196": {"원문번호": "공통 8 기계 시간당 경비(전력)", "파일": "로직_건설품셈_08장_건설기계.json"}, + "GC001197": {"원문번호": "공통 8 기계 시간당 경비(전력 조종원)", "파일": "로직_건설품셈_08장_건설기계.json"}, + "GC001198": {"원문번호": "공통 8 기계 시간당 경비(손료계수 한 칸)", "파일": "로직_건설품셈_08장_건설기계.json"}, + "GC001199": {"원문번호": "공통 8 기계 시간당 경비(직접 값)", "파일": "로직_건설품셈_08장_건설기계.json"}, "GF000001": {"원문번호": "3-1 경계표시", "파일": "로직_산림품셈_03장_작업장_관리.json"}, "GF000002": {"원문번호": "3-3 작업로 설치", "파일": "로직_산림품셈_03장_작업장_관리.json"}, "GF000003": {"원문번호": "3-4-2 임산물 운반로 신설 작업량", "파일": "로직_산림품셈_03장_작업장_관리.json"}, diff --git a/resources/master_data/scripts/build_기계시간당_822_2.py b/resources/master_data/scripts/build_기계시간당_822_2.py new file mode 100644 index 000000000..eb7b24d9f --- /dev/null +++ b/resources/master_data/scripts/build_기계시간당_822_2.py @@ -0,0 +1,310 @@ +"""기계 시간당 경비 식 완성(PLAN 822-2 · 요구 797 · 798 · 799) — 기계표 · 08장 로직 고침(정본 저장 길). + +한 번만 돎(두 번째는 바뀐 것 없음): + 기계.json + · 주연료 칸에 ㎾ 글이 든 전동 기계 → 숫자 칸 `전력`(㎾ · 전동기 부하율 규정 없음 → 그대로) · 주연료 비움 + (원문 글은 `값원문` 그대로 · 비고에 한 줄) · 원문 잡재료 「-」 = 잡재료율 0 + · 조종원직종 13 대 = 사용자 확정(요구 799) · 아스팔트 믹싱플랜트 잡재료 「-」 = 0 + · EQ000534 이름 오자 「POWER TLOWEL」 → 「POWER TROWEL」(원문 8-4-8 표기 · `옛이름` 보존) + 로직_건설품셈_08장_건설기계.json + · 새 식 넷 — 전력 기종 · 전력 + 조종원 · 손료계수 한 칸 연료 기종 · 시간당 값 직접 + · 손료만 식(GC000273) 목록에서 옮긴 기계 뺌 → 맞는 식 목록에 더함(보정 식 GC000274 는 그대로) +저장 = `M01_MasterData_Store_Make.save`(검사 · 키 대장 · 줄 모양 그대로 · 개정확인). +수식 문서는 뒤에 `build_수식문서_802_2.py` 로 다시. + + venv python resources/master_data/scripts/build_기계시간당_822_2.py [--check] +""" + +from __future__ import annotations + +import copy +import re +import sys +from pathlib import Path + +ROOT = Path(__file__).resolve().parents[3] +sys.path.insert(0, str(ROOT)) + +from M01_MasterData import M01_MasterData_Store as store # noqa: E402 +from M01_MasterData import M01_MasterData_Store_Make as make # noqa: E402 + +MACHINE = "기계.json" +LOGIC = "로직_건설품셈_08장_건설기계.json" +JOB_SRC = "건설품셈 공통 8-1-3 5 · 건설노임 {}" +JOBS = { # 요구 799 — (직종, 까닭) + **{f"EQ00016{i}": ("1048", "건설기계관리법상 건설기계") for i in range(5, 10)}, + **{ + k: ("1048", "원문 8-1-3 5 표의 「쇄석기」") + for k in ("EQ000249", "EQ000250", "EQ000251", "EQ000252") + }, + "EQ000347": ("1048", "원문 8-1-3 5 표의 「천공기」"), + "EQ000348": ("1048", "원문 8-1-3 5 표의 「천공기」"), + "EQ000309": ("1050", "두 법에 없는 기계"), + "EQ000433": ("1050", "두 법에 없는 기계"), +} +POWER = { # 주연료 칸 ㎾ 글 → 전력(원문 값 그대로) + "EQ000345": 330, "EQ000347": 135, "EQ000348": 239, "EQ000426": 15.1, "EQ000427": 15.1, + "EQ000529": 3.73, "EQ000530": 7.46, "EQ000531": 37, "EQ000533": 1.49, "EQ000532": 1.87, +} # fmt: skip +MISC_DASH = ("EQ000426", "EQ000427", "EQ000529", "EQ000530", "EQ000531", "EQ000533", + *(f"EQ0001{n}" for n in range(87, 92))) # fmt: skip +TYPO = ("EQ000534", "POWER TLOWEL", "POWER TROWEL") + +P1, P2, N3, DIRECT = "전력", "전력조종원", "손료한칸연료", "직접" +MOVE = { # 식 → 더할 원문번호(손료만 식 GC000273 에서는 뺌) + "GC000276": ["2208-5008", "2208-5010", "2208-5012", "2208-5016", "2208-5020", "5105-0050", + "5105-0100", "5105-0150", "5105-0200", "5119-0625", "7205-0125"], + "GC000268": ["3108-0060", "3108-0080", "3108-0100", "3108-0120", "9010-0120", + "9010-0200"], + P1: ["7991-0050", "7202-0008", "7202-0010", "7991-0100", "7991-0500", + "7992-0001", "7993-0020"], + P2: ["5805-0002", "5805-0003"], + N3: ["7994-0050"], +} # fmt: skip +LOSS_ONLY = "GC000273" +#: 손료만 식에서 빼기만 — 주연료 「73.7+ 휘발유54.5」 를 풀지 않음(꼴로 고름 → 까닭 글) +DROP_ONLY = ["3450-0642"] +#: 목록 밖(꼴로 고름 → 값 모자람 까닭 글) — 가격 없는 기계를 목록에 두면 식 기본 · 옵션 대조가 갈림(802-2): +#: 아스팔트 스프레어 둘(가격 · 손료 없음 → 직종 입력 식 꼴) · TBM 4.5m(가격 없음 → 전력 식 꼴) +#: 3108-0040 = 주연료 중유 — 유가 표에 중유 없음(검사가 막음) → 목록 밖 · 꼴로 고름 → 까닭 글 +LABEL = {P1: "전력", P2: "전력 조종원", N3: "손료계수 한 칸", DIRECT: "직접 값"} + +_HEAD = { + "원문번호": "8", + "구분": "건설품셈 공통", + "상세구분": "08장 건설기계", + "결과단위": "원/시간", +} +_SRC = "건설품셈 공통 8-1-5 · 8-1-6" +_LOSS_ONE = { + "이름": "손료", + "식": "버림(EQ:{기계}.가격 * 1000 * EQ:{기계}.손료계수 / 10000000, 0)", + "출처": "건설품셈 공통 8-1-5 12 · 8-1-6 4", +} +_HOUR = { + "이름": "시간환산", + "식": "찾기(CC000336, 구분='시간환산').분자 / 찾기(CC000336, 구분='시간환산').분모", + "출처": "건설품셈 공통 1-1-3 2(일일 작업시간 8시간)", +} +_JOB = {"이름": "직종", "식": "EQ:{기계}.조종원직종", "출처": "건설품셈 공통 8-1-3 5"} +_CREW = { + "종류": "인력", + "요소": "LB:{직종}", + "이름": "조종원", + "단위": "인", + "수량": "EQ:{기계}.조종원 * 시간환산", + "비목": "노무비", + "출처": "건설품셈 공통 8-1-3 6", + "비고": "하루 노임 × 1/8(1일 8시간 · 건설품셈 공통 1-1-3 2)", +} +_ELEC_IN = { + "이름": "전력 계약종별", + "고르기": ["일반용(갑)Ⅰ 저압", "주택용 저압"], + "출처": "유가전력 한전 전기요금표 2025-01-01", + "비고": "품셈·계약예규에 계약종별 규정 없음(전력비는 실비 계상) — 기본 = 불러오기 기본값", +} +_ELEC = { + "종류": "재료", + "요소": {"이름": "전력량요금", "계약종별": "입력"}, + "이름": "전력", + "단위": "㎾h", + "수량": "EQ:{기계}.전력", + "비목": "재료비", + "출처": "건설품셈 공통 8-1-6 3 가", + "비고": "기계 줄 전력(㎾) 그대로 — 전동기 부하율 규정 없음", +} +_FUEL = {"이름": "연료", "식": "EQ:{기계}.주연료종류", "출처": "건설품셈 공통 8-4 주①㉰"} +_FUEL_LINE = { + "종류": "재료", + "요소": "MO:{연료}:{지역}", + "이름": "주연료", + "단위": "ℓ", + "수량": "EQ:{기계}.주연료", + "비목": "재료비", + "출처": "건설품셈 공통 8-4-8", +} +_REGION = {"이름": "지역", "고르기": None, "출처": "건설품셈 공통 8-1-7 5"} +_MISC = { + "이름": "잡재료비", + "식": "재료비 * EQ:{기계}.잡재료율 / 100", + "비목": "재료비", + "출처": "건설품셈 공통 8-4 주②", +} +_LOSS_ADD = {"이름": "기계손료", "식": "손료", "비목": "경비", "출처": "건설품셈 공통 8-1-6 2"} +_CUT = "손료 원 미만 버림(건설품셈 공통 8-1-5 12) · 합계 원문 규정 없음" +_S = {"기호": "S"} + + +def _vars(*names: str) -> dict: + sign = {"손료": "C", "시간환산": "Q"} + return { + n: {"기호": sign.get(n, "S"), "아래": n.replace("전력 계약종별", "전력계약종별")} + for n in names + } + + +def _machine_in(codes: list[str]) -> dict: + return {"이름": "기계", "고르기": codes} + + +def new_rows(regions: list) -> dict[str, dict]: + """새 식 넷(키 없음 — 저장이 대장 다음 번호).""" + region = {**_REGION, "고르기": regions} + return { + P1: { + **_HEAD, + "이름": "기계 시간당 기계경비(전력 기종)", + "출처": f"{_SRC} · 8-1-6 3 가", + "부품": {"갈래": "기계경비식"}, + "소유": "공용", + "비고": "원문 운전경비 표 주연료 칸에 ㎾ 가 찍힌 전동 기종 — 전력비 = 전력(㎾) × 전력량요금 · 잡재료 = 전력비의 %(8-4 주②)", + "입력": [_machine_in(MOVE[P1]), _ELEC_IN], + "중간": [_LOSS_ONE], + "호표": [_ELEC], + "덧줄": [_MISC, _LOSS_ADD], + "끝수": _CUT, + "변수표": _vars("기계", "전력 계약종별", "손료"), + }, + P2: { + **_HEAD, + "이름": "기계 시간당 기계경비(전력 · 조종원 기종)", + "출처": f"{_SRC} · 8-1-6 3 가", + "부품": {"갈래": "기계경비식"}, + "소유": "공용", + "비고": "원문 운전경비 표 주연료 칸에 ㎾ 가 찍히고 조종원이 있는 전동 기종(점보드릴) — 전력비 + 잡재료(전력비의 %) + 조종원", + "입력": [_machine_in(MOVE[P2]), _ELEC_IN], + "중간": [_LOSS_ONE, _JOB, _HOUR], + "호표": [_ELEC, _CREW], + "덧줄": [_MISC, _LOSS_ADD], + "끝수": _CUT, + "변수표": _vars("기계", "전력 계약종별", "손료", "직종", "시간환산"), + }, + N3: { + **_HEAD, + "이름": "기계 시간당 기계경비(조종원 없는 기종 · 손료계수 한 칸)", + "출처": _SRC, + "부품": {"갈래": "기계경비식"}, + "소유": "공용", + "비고": "원문 손료 표가 시간당 손료계수 하나만 준 기종(8-3-8 기타기계 등) 가운데 주연료가 있고 조종원이 없는 것", + "입력": [_machine_in(MOVE[N3]), region], + "중간": [_LOSS_ONE, _FUEL], + "호표": [_FUEL_LINE], + "덧줄": [_MISC, _LOSS_ADD], + "끝수": _CUT, + "변수표": _vars("기계", "지역", "손료", "연료"), + }, + DIRECT: { + **_HEAD, + "이름": "기계 시간당 기계경비(직접 값)", + "출처": "자체", + "부품": {"갈래": "기계경비식"}, + "소유": "공용", + "비고": "자체 — 구성 없는 기계 · 구성(손료 · 연료 · 조종원) 없이 시간당 노무비 · 재료비 · 경비를 바로 둔 기계(내 기계 「시간당 값 직접」) — 기계 줄 값 그대로", + "입력": [{"이름": "기계", "고르기": []}], + "중간": [], + "호표": [], + "덧줄": [ + { + "이름": "시간당 노무비", + "식": "EQ:{기계}.노무비", + "비목": "노무비", + "출처": "자체", + }, + { + "이름": "시간당 재료비", + "식": "EQ:{기계}.재료비", + "비목": "재료비", + "출처": "자체", + }, + {"이름": "시간당 경비", "식": "EQ:{기계}.경비", "비목": "경비", "출처": "자체"}, + ], # fmt: skip + "끝수": None, + "변수표": _vars("기계"), + }, + } + + +def _note(row: dict, text: str) -> None: + was = str(row.get("비고") or "") + if text not in was: + row["비고"] = f"{was} · {text}" if was else text + + +def machine_changes() -> list[dict]: + rows = {r["키"]: r for r in store.read(MACHINE)[0]["줄"]} + out = [] + for key, row in rows.items(): + new = copy.deepcopy(row) + vals, unit, src = new["값"], new.setdefault("단위", {}), new.setdefault("출처", {}) + if key in POWER and vals.get("전력") is None: + text = str(vals.get("주연료")) + text += "㎾" if unit.get("주연료") == "㎾" else "" # 모르타르 믹서 = 단위 칸에 ㎾ + got = re.search(r"([\d.]+)\s*㎾", text) + assert got and float(got.group(1)) == POWER[key], (key, text) + vals["주연료"], vals["전력"] = None, POWER[key] + unit["주연료"], unit["전력"] = "ℓ/hr", "kWh/hr" + src["전력"] = src.get("주연료") + _note(new, f"전력 = 원문 주연료 칸 「{text}」(㎾ · 전동기 부하율 규정 없음 → 그대로)") + if key == "EQ000532": + _note(new, "원문 「휘발유1.3」 갈래는 주연료2 칸 · 시간당 식은 전력") + if key in MISC_DASH and vals.get("잡재료율") is None: + vals["잡재료율"] = 0 + _note(new, "잡재료율 0 = 원문 잡재료 「-」") + if key in JOBS and not vals.get("조종원직종"): + job, why = JOBS[key] + vals["조종원직종"] = job + src["조종원직종"] = JOB_SRC.format(job) + _note(new, f"직종 = 사용자 확정(요구 799) — {why}") + if key == TYPO[0] and new.get("이름") == TYPO[1]: + items = list(new.items()) + at = [k for k, _ in items].index("이름") + 1 + items.insert(at, ("옛이름", TYPO[1])) + new = dict(items) + new["이름"] = TYPO[2] + if new.get("상세구분") == TYPO[1]: + new["상세구분"] = TYPO[2] + if new != row: + out.append({"op": "edit", "key": key, "row": new}) + return out + + +def logic_changes() -> list[dict]: + data = store.read(LOGIC)[0] + rows = {r["키"]: r for r in data["줄"]} + if any(r.get("이름") == "기계 시간당 기계경비(직접 값)" for r in rows.values()): + return [] + moved = {c for codes in MOVE.values() for c in codes} | set(DROP_ONLY) + out = [] + for key in (LOSS_ONLY, *[k for k in MOVE if k.startswith("GC")]): + new = copy.deepcopy(rows[key]) + pick = next(i for i in new["입력"] if i.get("이름") == "기계") + if key == LOSS_ONLY: + pick["고르기"] = [c for c in pick["고르기"] if str(c) not in moved] + else: + pick["고르기"] += [c for c in MOVE[key] if c not in pick["고르기"]] + out.append({"op": "edit", "key": key, "row": new}) + regions = next(i["고르기"] for i in rows["GC000268"]["입력"] if i["이름"] == "지역") + out += [{"op": "add", "row": row} for row in new_rows(regions).values()] + return out + + +def main(check: bool) -> None: + parts = [] + for file, changes in ((MACHINE, machine_changes()), (LOGIC, logic_changes())): + print(file, len(changes), [c.get("key") or c["row"]["이름"] for c in changes]) + if changes: + parts.append({"file": file, "version": store.read(file)[1], "changes": changes}) + if check or not parts: + return + # 대장 열쇠 = 원문번호 — 넷 다 「8」 이면 한 키로 겹침 → 옛 기계경비식처럼 이름 붙은 열쇠(줄은 「8」) + labels = {r["이름"]: f"공통 8 기계 시간당 경비({LABEL[t]})" for t, r in new_rows([]).items()} + plain = store.ledger_label + store.ledger_label = lambda book, tid, no, row: ( + labels.get(row.get("이름")) or plain(book, tid, no, row) + ) + got = make.save(parts, confirmed=True) + print("저장", got["added"]) + + +if __name__ == "__main__": + main("--check" in sys.argv) diff --git a/resources/master_data/기계.json b/resources/master_data/기계.json index 03b622f14..b1f595b6d 100644 --- a/resources/master_data/기계.json +++ b/resources/master_data/기계.json @@ -10907,7 +10907,7 @@ "주연료종류": null, "잡재료율": null, "조종원": 1, - "조종원직종": null + "조종원직종": "1048" }, "출처": { "가격": "건설품셈 공통 8-5-3", @@ -10924,9 +10924,9 @@ "주연료종류": "건설품셈 공통 8-4-3", "잡재료율": "건설품셈 공통 8-4-3", "조종원": "건설품셈 공통 8-4-3", - "조종원직종": "건설품셈 공통 8-1-3 5" + "조종원직종": "건설품셈 공통 8-1-3 5 · 건설노임 1048" }, - "비고": "규격 단위: (m×ton)" + "비고": "규격 단위: (m×ton) · 직종 = 사용자 확정(요구 799) — 건설기계관리법상 건설기계" }, { "키": "EQ000166", @@ -10968,7 +10968,7 @@ "주연료종류": null, "잡재료율": null, "조종원": 1, - "조종원직종": null + "조종원직종": "1048" }, "출처": { "가격": "건설품셈 공통 8-5-3", @@ -10985,9 +10985,9 @@ "주연료종류": "건설품셈 공통 8-4-3", "잡재료율": "건설품셈 공통 8-4-3", "조종원": "건설품셈 공통 8-4-3", - "조종원직종": "건설품셈 공통 8-1-3 5" + "조종원직종": "건설품셈 공통 8-1-3 5 · 건설노임 1048" }, - "비고": "규격 단위: (m×ton)" + "비고": "규격 단위: (m×ton) · 직종 = 사용자 확정(요구 799) — 건설기계관리법상 건설기계" }, { "키": "EQ000167", @@ -11029,7 +11029,7 @@ "주연료종류": null, "잡재료율": null, "조종원": 1, - "조종원직종": null + "조종원직종": "1048" }, "출처": { "가격": "건설품셈 공통 8-5-3", @@ -11046,9 +11046,9 @@ "주연료종류": "건설품셈 공통 8-4-3", "잡재료율": "건설품셈 공통 8-4-3", "조종원": "건설품셈 공통 8-4-3", - "조종원직종": "건설품셈 공통 8-1-3 5" + "조종원직종": "건설품셈 공통 8-1-3 5 · 건설노임 1048" }, - "비고": "규격 단위: (m×ton)" + "비고": "규격 단위: (m×ton) · 직종 = 사용자 확정(요구 799) — 건설기계관리법상 건설기계" }, { "키": "EQ000168", @@ -11090,7 +11090,7 @@ "주연료종류": null, "잡재료율": null, "조종원": 1, - "조종원직종": null + "조종원직종": "1048" }, "출처": { "가격": "건설품셈 공통 8-5-3", @@ -11107,9 +11107,9 @@ "주연료종류": "건설품셈 공통 8-4-3", "잡재료율": "건설품셈 공통 8-4-3", "조종원": "건설품셈 공통 8-4-3", - "조종원직종": "건설품셈 공통 8-1-3 5" + "조종원직종": "건설품셈 공통 8-1-3 5 · 건설노임 1048" }, - "비고": "규격 단위: (m×ton)" + "비고": "규격 단위: (m×ton) · 직종 = 사용자 확정(요구 799) — 건설기계관리법상 건설기계" }, { "키": "EQ000169", @@ -11151,7 +11151,7 @@ "주연료종류": null, "잡재료율": null, "조종원": 1, - "조종원직종": null + "조종원직종": "1048" }, "출처": { "가격": "건설품셈 공통 8-5-3", @@ -11168,9 +11168,9 @@ "주연료종류": "건설품셈 공통 8-4-3", "잡재료율": "건설품셈 공통 8-4-3", "조종원": "건설품셈 공통 8-4-3", - "조종원직종": "건설품셈 공통 8-1-3 5" + "조종원직종": "건설품셈 공통 8-1-3 5 · 건설노임 1048" }, - "비고": "규격 단위: (m×ton)" + "비고": "규격 단위: (m×ton) · 직종 = 사용자 확정(요구 799) — 건설기계관리법상 건설기계" }, { "키": "EQ000170", @@ -12251,7 +12251,7 @@ "손료계수": 2501, "주연료": 487.2, "주연료종류": "중유", - "잡재료율": null, + "잡재료율": 0, "조종원": 2, "조종원직종": "1048" }, @@ -12272,10 +12272,8 @@ "조종원": "건설품셈 공통 8-4-4", "조종원직종": "건설품셈 공통 8-1-3 5 · 건설노임 1048" }, - "비고": "조종원직종 원문 이름: 건설기계운전사 · 규격 단위: (ton/hr) · 주연료종류: 원문 글을 가름", - "값원문": { - "8-4-4 주연료": "중유487.2" - } + "비고": "조종원직종 원문 이름: 건설기계운전사 · 규격 단위: (ton/hr) · 주연료종류: 원문 글을 가름 · 잡재료율 0 = 원문 잡재료 「-」", + "값원문": { "8-4-4 주연료": "중유487.2" } }, { "키": "EQ000188", @@ -12315,7 +12313,7 @@ "손료계수": 2159, "주연료": 614.7, "주연료종류": "경유", - "잡재료율": null, + "잡재료율": 0, "조종원": 2, "조종원직종": "1048" }, @@ -12336,7 +12334,7 @@ "조종원": "건설품셈 공통 8-4-4", "조종원직종": "건설품셈 공통 8-1-3 5 · 건설노임 1048" }, - "비고": "조종원직종 원문 이름: 건설기계운전사 · 규격 단위: (ton/hr) · 주연료종류: 원문 글을 가름" + "비고": "조종원직종 원문 이름: 건설기계운전사 · 규격 단위: (ton/hr) · 주연료종류: 원문 글을 가름 · 잡재료율 0 = 원문 잡재료 「-」" }, { "키": "EQ000189", @@ -12376,7 +12374,7 @@ "손료계수": 2159, "주연료": 678.4, "주연료종류": "경유", - "잡재료율": null, + "잡재료율": 0, "조종원": 2, "조종원직종": "1048" }, @@ -12397,7 +12395,7 @@ "조종원": "건설품셈 공통 8-4-4", "조종원직종": "건설품셈 공통 8-1-3 5 · 건설노임 1048" }, - "비고": "조종원직종 원문 이름: 건설기계운전사 · 규격 단위: (ton/hr) · 주연료종류: 원문 글을 가름" + "비고": "조종원직종 원문 이름: 건설기계운전사 · 규격 단위: (ton/hr) · 주연료종류: 원문 글을 가름 · 잡재료율 0 = 원문 잡재료 「-」" }, { "키": "EQ000190", @@ -12437,7 +12435,7 @@ "손료계수": 2159, "주연료": 746.7, "주연료종류": "경유", - "잡재료율": null, + "잡재료율": 0, "조종원": 2, "조종원직종": "1048" }, @@ -12458,7 +12456,7 @@ "조종원": "건설품셈 공통 8-4-4", "조종원직종": "건설품셈 공통 8-1-3 5 · 건설노임 1048" }, - "비고": "조종원직종 원문 이름: 건설기계운전사 · 규격 단위: (ton/hr) · 주연료종류: 원문 글을 가름" + "비고": "조종원직종 원문 이름: 건설기계운전사 · 규격 단위: (ton/hr) · 주연료종류: 원문 글을 가름 · 잡재료율 0 = 원문 잡재료 「-」" }, { "키": "EQ000191", @@ -12498,7 +12496,7 @@ "손료계수": 2159, "주연료": 819.6, "주연료종류": "경유", - "잡재료율": null, + "잡재료율": 0, "조종원": 2, "조종원직종": "1048" }, @@ -12519,7 +12517,7 @@ "조종원": "건설품셈 공통 8-4-4", "조종원직종": "건설품셈 공통 8-1-3 5 · 건설노임 1048" }, - "비고": "조종원직종 원문 이름: 건설기계운전사 · 규격 단위: (ton/hr) · 주연료종류: 원문 글을 가름" + "비고": "조종원직종 원문 이름: 건설기계운전사 · 규격 단위: (ton/hr) · 주연료종류: 원문 글을 가름 · 잡재료율 0 = 원문 잡재료 「-」" }, { "키": "EQ000192", @@ -16081,7 +16079,7 @@ "주연료종류": null, "잡재료율": null, "조종원": 1, - "조종원직종": null + "조종원직종": "1048" }, "출처": { "가격": "건설품셈 공통 8-5-6", @@ -16098,9 +16096,9 @@ "주연료종류": "건설품셈 공통 8-4-6", "잡재료율": "건설품셈 공통 8-4-6", "조종원": "건설품셈 공통 8-4-6", - "조종원직종": "건설품셈 공통 8-1-3 5" + "조종원직종": "건설품셈 공통 8-1-3 5 · 건설노임 1048" }, - "비고": "규격 단위: (ton/hr)(㎾)" + "비고": "규격 단위: (ton/hr)(㎾) · 직종 = 사용자 확정(요구 799) — 원문 8-1-3 5 표의 「쇄석기」" }, { "키": "EQ000250", @@ -16142,7 +16140,7 @@ "주연료종류": null, "잡재료율": null, "조종원": 1, - "조종원직종": null + "조종원직종": "1048" }, "출처": { "가격": "건설품셈 공통 8-5-6", @@ -16159,9 +16157,9 @@ "주연료종류": "건설품셈 공통 8-4-6", "잡재료율": "건설품셈 공통 8-4-6", "조종원": "건설품셈 공통 8-4-6", - "조종원직종": "건설품셈 공통 8-1-3 5" + "조종원직종": "건설품셈 공통 8-1-3 5 · 건설노임 1048" }, - "비고": "규격 단위: (ton/hr)(㎾)" + "비고": "규격 단위: (ton/hr)(㎾) · 직종 = 사용자 확정(요구 799) — 원문 8-1-3 5 표의 「쇄석기」" }, { "키": "EQ000251", @@ -16203,7 +16201,7 @@ "주연료종류": null, "잡재료율": null, "조종원": 1, - "조종원직종": null + "조종원직종": "1048" }, "출처": { "가격": "건설품셈 공통 8-5-6", @@ -16220,9 +16218,9 @@ "주연료종류": "건설품셈 공통 8-4-6", "잡재료율": "건설품셈 공통 8-4-6", "조종원": "건설품셈 공통 8-4-6", - "조종원직종": "건설품셈 공통 8-1-3 5" + "조종원직종": "건설품셈 공통 8-1-3 5 · 건설노임 1048" }, - "비고": "규격 단위: (ton/hr)(㎾)" + "비고": "규격 단위: (ton/hr)(㎾) · 직종 = 사용자 확정(요구 799) — 원문 8-1-3 5 표의 「쇄석기」" }, { "키": "EQ000252", @@ -16264,7 +16262,7 @@ "주연료종류": null, "잡재료율": null, "조종원": 1, - "조종원직종": null + "조종원직종": "1048" }, "출처": { "가격": "건설품셈 공통 8-5-6", @@ -16281,9 +16279,9 @@ "주연료종류": "건설품셈 공통 8-4-6", "잡재료율": "건설품셈 공통 8-4-6", "조종원": "건설품셈 공통 8-4-6", - "조종원직종": "건설품셈 공통 8-1-3 5" + "조종원직종": "건설품셈 공통 8-1-3 5 · 건설노임 1048" }, - "비고": "규격 단위: (ton/hr)(㎾)" + "비고": "규격 단위: (ton/hr)(㎾) · 직종 = 사용자 확정(요구 799) — 원문 8-1-3 5 표의 「쇄석기」" }, { "키": "EQ000253", @@ -19689,7 +19687,7 @@ "주연료종류": null, "잡재료율": null, "조종원": 1, - "조종원직종": null + "조종원직종": "1050" }, "출처": { "가격": "건설품셈 공통 8-5-6", @@ -19706,8 +19704,9 @@ "주연료종류": "건설품셈 공통 8-4-6", "잡재료율": "건설품셈 공통 8-4-6", "조종원": "건설품셈 공통 8-4-6", - "조종원직종": "건설품셈 공통 8-1-3 5" - } + "조종원직종": "건설품셈 공통 8-1-3 5 · 건설노임 1050" + }, + "비고": "직종 = 사용자 확정(요구 799) — 두 법에 없는 기계" }, { "키": "EQ000310", @@ -21858,7 +21857,8 @@ "주연료종류": "", "잡재료율": "주연료의 %", "조종원": "인/일", - "조종원직종": "" + "조종원직종": "", + "전력": "kWh/hr" }, "값": { "가격": null, @@ -21871,11 +21871,12 @@ "정비비계수": 167, "관리비계수": 328, "손료계수": 870, - "주연료": "동력330㎾", + "주연료": null, "주연료종류": null, "잡재료율": 10, "조종원": null, - "조종원직종": null + "조종원직종": null, + "전력": 330 }, "출처": { "가격": "건설품셈 공통 8-5", @@ -21892,11 +21893,11 @@ "주연료종류": "건설품셈 공통 8-4-6", "잡재료율": "건설품셈 공통 8-4-6", "조종원": "건설품셈 공통 8-4-6", - "조종원직종": "건설품셈 공통 8-1-3 5" + "조종원직종": "건설품셈 공통 8-1-3 5", + "전력": "건설품셈 공통 8-4-6" }, - "값원문": { - "8-4-6 주연료": "동력330㎾" - } + "값원문": { "8-4-6 주연료": "동력330㎾" }, + "비고": "전력 = 원문 주연료 칸 「동력330㎾」(㎾ · 전동기 부하율 규정 없음 → 그대로)" }, { "키": "EQ000346", @@ -21981,7 +21982,8 @@ "주연료종류": "", "잡재료율": "주연료의 %", "조종원": "인/일", - "조종원직종": "" + "조종원직종": "", + "전력": "kWh/hr" }, "값": { "가격": 605472, @@ -21994,11 +21996,12 @@ "정비비계수": 777, "관리비계수": 738, "손료계수": 2515, - "주연료": "135㎾", + "주연료": null, "주연료종류": null, "잡재료율": 6, "조종원": 1, - "조종원직종": null + "조종원직종": "1048", + "전력": 135 }, "출처": { "가격": "건설품셈 공통 8-5-6", @@ -22015,11 +22018,11 @@ "주연료종류": "건설품셈 공통 8-4-6", "잡재료율": "건설품셈 공통 8-4-6", "조종원": "건설품셈 공통 8-4-6", - "조종원직종": "건설품셈 공통 8-1-3 5" + "조종원직종": "건설품셈 공통 8-1-3 5 · 건설노임 1048", + "전력": "건설품셈 공통 8-4-6" }, - "값원문": { - "8-4-6 주연료": "135㎾" - } + "값원문": { "8-4-6 주연료": "135㎾" }, + "비고": "전력 = 원문 주연료 칸 「135㎾」(㎾ · 전동기 부하율 규정 없음 → 그대로) · 직종 = 사용자 확정(요구 799) — 원문 8-1-3 5 표의 「천공기」" }, { "키": "EQ000348", @@ -22044,7 +22047,8 @@ "주연료종류": "", "잡재료율": "주연료의 %", "조종원": "인/일", - "조종원직종": "" + "조종원직종": "", + "전력": "kWh/hr" }, "값": { "가격": 1153045, @@ -22057,11 +22061,12 @@ "정비비계수": 777, "관리비계수": 738, "손료계수": 2515, - "주연료": "239㎾", + "주연료": null, "주연료종류": null, "잡재료율": 10, "조종원": 1, - "조종원직종": null + "조종원직종": "1048", + "전력": 239 }, "출처": { "가격": "건설품셈 공통 8-5-6", @@ -22078,11 +22083,11 @@ "주연료종류": "건설품셈 공통 8-4-6", "잡재료율": "건설품셈 공통 8-4-6", "조종원": "건설품셈 공통 8-4-6", - "조종원직종": "건설품셈 공통 8-1-3 5" + "조종원직종": "건설품셈 공통 8-1-3 5 · 건설노임 1048", + "전력": "건설품셈 공통 8-4-6" }, - "값원문": { - "8-4-6 주연료": "239㎾" - } + "값원문": { "8-4-6 주연료": "239㎾" }, + "비고": "전력 = 원문 주연료 칸 「239㎾」(㎾ · 전동기 부하율 규정 없음 → 그대로) · 직종 = 사용자 확정(요구 799) — 원문 8-1-3 5 표의 「천공기」" }, { "키": "EQ000349", @@ -26768,7 +26773,8 @@ "주연료종류": "", "잡재료율": "주연료의 %", "조종원": "인/일", - "조종원직종": "" + "조종원직종": "", + "전력": "kWh/hr" }, "값": { "가격": 16828, @@ -26781,11 +26787,12 @@ "정비비계수": 2333, "관리비계수": 1169, "손료계수": 6502, - "주연료": "동력 15.1㎾", + "주연료": null, "주연료종류": null, - "잡재료율": null, + "잡재료율": 0, "조종원": null, - "조종원직종": null + "조종원직종": null, + "전력": 15.1 }, "출처": { "가격": "건설품셈 공통 8-5-8", @@ -26802,12 +26809,11 @@ "주연료종류": "건설품셈 공통 8-4-8", "잡재료율": "건설품셈 공통 8-4-8", "조종원": "건설품셈 공통 8-4-8", - "조종원직종": "건설품셈 공통 8-1-3 5" + "조종원직종": "건설품셈 공통 8-1-3 5", + "전력": "건설품셈 공통 8-4-8" }, - "비고": "규격 단위: (W×L×H)", - "값원문": { - "8-4-8 주연료": "동력 15.1㎾" - } + "비고": "규격 단위: (W×L×H) · 전력 = 원문 주연료 칸 「동력 15.1㎾」(㎾ · 전동기 부하율 규정 없음 → 그대로) · 잡재료율 0 = 원문 잡재료 「-」", + "값원문": { "8-4-8 주연료": "동력 15.1㎾" } }, { "키": "EQ000427", @@ -26832,7 +26838,8 @@ "주연료종류": "", "잡재료율": "주연료의 %", "조종원": "인/일", - "조종원직종": "" + "조종원직종": "", + "전력": "kWh/hr" }, "값": { "가격": 21722, @@ -26845,11 +26852,12 @@ "정비비계수": 2333, "관리비계수": 1169, "손료계수": 6502, - "주연료": "동력 15.1㎾", + "주연료": null, "주연료종류": null, - "잡재료율": null, + "잡재료율": 0, "조종원": null, - "조종원직종": null + "조종원직종": null, + "전력": 15.1 }, "출처": { "가격": "건설품셈 공통 8-5-8", @@ -26866,12 +26874,11 @@ "주연료종류": "건설품셈 공통 8-4-8", "잡재료율": "건설품셈 공통 8-4-8", "조종원": "건설품셈 공통 8-4-8", - "조종원직종": "건설품셈 공통 8-1-3 5" + "조종원직종": "건설품셈 공통 8-1-3 5", + "전력": "건설품셈 공통 8-4-8" }, - "비고": "규격 단위: (W×L×H)", - "값원문": { - "8-4-8 주연료": "동력 15.1㎾" - } + "비고": "규격 단위: (W×L×H) · 전력 = 원문 주연료 칸 「동력 15.1㎾」(㎾ · 전동기 부하율 규정 없음 → 그대로) · 잡재료율 0 = 원문 잡재료 「-」", + "값원문": { "8-4-8 주연료": "동력 15.1㎾" } }, { "키": "EQ000428", @@ -27218,7 +27225,7 @@ "주연료종류": null, "잡재료율": null, "조종원": 1, - "조종원직종": null + "조종원직종": "1050" }, "출처": { "가격": "건설품셈 공통 8-5-8", @@ -27235,8 +27242,9 @@ "주연료종류": "건설품셈 공통 8-4-8", "잡재료율": "건설품셈 공통 8-4-8", "조종원": "건설품셈 공통 8-4-8", - "조종원직종": "건설품셈 공통 8-1-3 5" - } + "조종원직종": "건설품셈 공통 8-1-3 5 · 건설노임 1050" + }, + "비고": "직종 = 사용자 확정(요구 799) — 두 법에 없는 기계" }, { "키": "EQ000434", @@ -33047,7 +33055,8 @@ "주연료종류": "", "잡재료율": "주연료의 %", "조종원": "인/일", - "조종원직종": "" + "조종원직종": "", + "전력": "kWh/hr" }, "값": { "가격": 16913, @@ -33060,11 +33069,12 @@ "정비비계수": null, "관리비계수": null, "손료계수": 4677, - "주연료": "3.73㎾", + "주연료": null, "주연료종류": null, - "잡재료율": null, + "잡재료율": 0, "조종원": null, - "조종원직종": null + "조종원직종": null, + "전력": 3.73 }, "출처": { "가격": "건설품셈 공통 8-5-8", @@ -33081,11 +33091,11 @@ "주연료종류": "건설품셈 공통 8-4-8", "잡재료율": "건설품셈 공통 8-4-8", "조종원": "건설품셈 공통 8-4-8", - "조종원직종": "건설품셈 공통 8-1-3 5" + "조종원직종": "건설품셈 공통 8-1-3 5", + "전력": "건설품셈 공통 8-4-8" }, - "값원문": { - "8-4-8 주연료": "3.73㎾" - } + "값원문": { "8-4-8 주연료": "3.73㎾" }, + "비고": "전력 = 원문 주연료 칸 「3.73㎾」(㎾ · 전동기 부하율 규정 없음 → 그대로) · 잡재료율 0 = 원문 잡재료 「-」" }, { "키": "EQ000530", @@ -33110,7 +33120,8 @@ "주연료종류": "", "잡재료율": "주연료의 %", "조종원": "인/일", - "조종원직종": "" + "조종원직종": "", + "전력": "kWh/hr" }, "값": { "가격": 21887, @@ -33123,11 +33134,12 @@ "정비비계수": null, "관리비계수": null, "손료계수": 4677, - "주연료": "7.46㎾", + "주연료": null, "주연료종류": null, - "잡재료율": null, + "잡재료율": 0, "조종원": null, - "조종원직종": null + "조종원직종": null, + "전력": 7.46 }, "출처": { "가격": "건설품셈 공통 8-5-8", @@ -33144,11 +33156,11 @@ "주연료종류": "건설품셈 공통 8-4-8", "잡재료율": "건설품셈 공통 8-4-8", "조종원": "건설품셈 공통 8-4-8", - "조종원직종": "건설품셈 공통 8-1-3 5" + "조종원직종": "건설품셈 공통 8-1-3 5", + "전력": "건설품셈 공통 8-4-8" }, - "값원문": { - "8-4-8 주연료": "7.46㎾" - } + "값원문": { "8-4-8 주연료": "7.46㎾" }, + "비고": "전력 = 원문 주연료 칸 「7.46㎾」(㎾ · 전동기 부하율 규정 없음 → 그대로) · 잡재료율 0 = 원문 잡재료 「-」" }, { "키": "EQ000531", @@ -33173,7 +33185,8 @@ "주연료종류": "", "잡재료율": "주연료의 %", "조종원": "인/일", - "조종원직종": "" + "조종원직종": "", + "전력": "kWh/hr" }, "값": { "가격": 40769, @@ -33186,11 +33199,12 @@ "정비비계수": null, "관리비계수": null, "손료계수": 4677, - "주연료": "37㎾", + "주연료": null, "주연료종류": null, - "잡재료율": null, + "잡재료율": 0, "조종원": null, - "조종원직종": null + "조종원직종": null, + "전력": 37 }, "출처": { "가격": "건설품셈 공통 8-5-8", @@ -33207,11 +33221,11 @@ "주연료종류": "건설품셈 공통 8-4-8", "잡재료율": "건설품셈 공통 8-4-8", "조종원": "건설품셈 공통 8-4-8", - "조종원직종": "건설품셈 공통 8-1-3 5" + "조종원직종": "건설품셈 공통 8-1-3 5", + "전력": "건설품셈 공통 8-4-8" }, - "값원문": { - "8-4-8 주연료": "37㎾" - } + "값원문": { "8-4-8 주연료": "37㎾" }, + "비고": "전력 = 원문 주연료 칸 「37㎾」(㎾ · 전동기 부하율 규정 없음 → 그대로) · 잡재료율 0 = 원문 잡재료 「-」" }, { "키": "EQ000532", @@ -33232,13 +33246,14 @@ "정비비계수": "10^-7/시간", "관리비계수": "10^-7/시간", "손료계수": "10^-7/시간", - "주연료": "㎾", + "주연료": "ℓ/hr", "주연료종류": "", "주연료2": "ℓ/hr", "주연료2종류": "", "잡재료율": "주연료의 %", "조종원": "인/일", - "조종원직종": "" + "조종원직종": "", + "전력": "kWh/hr" }, "값": { "가격": 5696, @@ -33251,13 +33266,14 @@ "정비비계수": null, "관리비계수": null, "손료계수": 3708, - "주연료": 1.87, + "주연료": null, "주연료종류": null, "주연료2": 1.3, "주연료2종류": "휘발유", "잡재료율": 2, "조종원": null, - "조종원직종": null + "조종원직종": null, + "전력": 1.87 }, "출처": { "가격": "건설품셈 공통 8-5-8", @@ -33276,11 +33292,11 @@ "주연료2종류": "건설품셈 공통 8-4-8", "잡재료율": "건설품셈 공통 8-4-8", "조종원": "건설품셈 공통 8-4-8", - "조종원직종": "건설품셈 공통 8-1-3 5" + "조종원직종": "건설품셈 공통 8-1-3 5", + "전력": "건설품셈 공통 8-4-8" }, - "값원문": { - "8-4-8 주연료": "1.87㎾ 휘발유1.3" - } + "값원문": { "8-4-8 주연료": "1.87㎾ 휘발유1.3" }, + "비고": "전력 = 원문 주연료 칸 「1.87㎾」(㎾ · 전동기 부하율 규정 없음 → 그대로) · 원문 「휘발유1.3」 갈래는 주연료2 칸 · 시간당 식은 전력" }, { "키": "EQ000533", @@ -33305,7 +33321,8 @@ "주연료종류": "", "잡재료율": "주연료의 %", "조종원": "인/일", - "조종원직종": "" + "조종원직종": "", + "전력": "kWh/hr" }, "값": { "가격": 38, @@ -33318,11 +33335,12 @@ "정비비계수": null, "관리비계수": null, "손료계수": 3375, - "주연료": "1.49㎾", + "주연료": null, "주연료종류": null, - "잡재료율": null, + "잡재료율": 0, "조종원": null, - "조종원직종": null + "조종원직종": null, + "전력": 1.49 }, "출처": { "가격": "건설품셈 공통 8-5-8", @@ -33339,19 +33357,20 @@ "주연료종류": "건설품셈 공통 8-4-8", "잡재료율": "건설품셈 공통 8-4-8", "조종원": "건설품셈 공통 8-4-8", - "조종원직종": "건설품셈 공통 8-1-3 5" + "조종원직종": "건설품셈 공통 8-1-3 5", + "전력": "건설품셈 공통 8-4-8" }, - "값원문": { - "8-4-8 주연료": "1.49㎾" - } + "값원문": { "8-4-8 주연료": "1.49㎾" }, + "비고": "전력 = 원문 주연료 칸 「1.49㎾」(㎾ · 전동기 부하율 규정 없음 → 그대로) · 잡재료율 0 = 원문 잡재료 「-」" }, { "키": "EQ000534", "원문번호": "7994-0050", "원문": "건설품셈", "구분": "[70]기타기계", - "상세구분": "POWER TLOWEL", - "이름": "POWER TLOWEL", + "상세구분": "POWER TROWEL", + "이름": "POWER TROWEL", + "옛이름": "POWER TLOWEL", "규격": "3.73㎾", "단위": { "가격": "천원", diff --git a/resources/master_data/로직_건설품셈_08장_건설기계.json b/resources/master_data/로직_건설품셈_08장_건설기계.json index 929d896f8..abb927060 100644 --- a/resources/master_data/로직_건설품셈_08장_건설기계.json +++ b/resources/master_data/로직_건설품셈_08장_건설기계.json @@ -284,7 +284,13 @@ "9090-1300", "9090-1400", "9090-1500", - "9090-1600" + "9090-1600", + "3108-0060", + "3108-0080", + "3108-0100", + "3108-0120", + "9010-0120", + "9010-0200" ] }, { @@ -853,11 +859,6 @@ "2104-0220", "2104-0250", "2104-0300", - "2208-5008", - "2208-5010", - "2208-5012", - "2208-5016", - "2208-5020", "2105-0002", "2105-0003", "2105-0005", @@ -921,7 +922,6 @@ "2118-0010", "2210-0145", "3430-0300", - "3450-0642", "4115-0100", "4115-0150", "4115-0200", @@ -929,10 +929,6 @@ "4505-0015", "4505-0026", "4611-0075", - "5105-0050", - "5105-0100", - "5105-0150", - "5105-0200", "5111-0040", "5111-0050", "5111-0060", @@ -989,15 +985,12 @@ "5118-0005", "5118-0006", "5118-0007", - "5119-0625", "5203-1800", "5203-2200", "5203-2700", "5203-3500", "5203-4500", "5330-0074", - "5805-0002", - "5805-0003", "5901-0006", "5901-0010", "5901-0016", @@ -1018,9 +1011,6 @@ "6550-0130", "7103-0010", "7104-0010", - "7202-0008", - "7202-0010", - "7205-0125", "7206-0020", "7206-0070", "7206-0100", @@ -1058,10 +1048,6 @@ "7930-0075", "7930-0100", "7935-0180", - "7991-0050", - "7991-0100", - "7991-0500", - "7993-0020", "8201-0100", "8202-0100", "8203-0019", @@ -1370,7 +1356,30 @@ "소유": "공용", "비고": "원문 운전경비 표에 주연료가 빈 기종(공기식 크롤러드릴 등 — 동력은 공기압축기) — 손료 + 조종원", "입력": [ - { "이름": "기계", "고르기": ["5401-0017", "4108-0060", "4108-0090", "4108-0120", "4108-0150", "4108-0180", "4108-0210", "5401-0015"] }, + { + "이름": "기계", + "고르기": [ + "5401-0017", + "4108-0060", + "4108-0090", + "4108-0120", + "4108-0150", + "4108-0180", + "4108-0210", + "5401-0015", + "2208-5008", + "2208-5010", + "2208-5012", + "2208-5016", + "2208-5020", + "5105-0050", + "5105-0100", + "5105-0150", + "5105-0200", + "5119-0625", + "7205-0125" + ] + }, { "이름": "지역", "고르기": ["전국평균", "전국", "서울", "경기", "강원", "충북", "충남", "전북", "경북", "경남", "부산", "제주", "대구", "인천", "대전", "울산", "세종", "전남광주"], @@ -3456,6 +3465,140 @@ "조건": { "기호": "S", "아래": "조건" }, "유속": { "기호": "v", "아래": "유속" } } + }, + { + "키": "GC001196", + "원문번호": "8", + "구분": "건설품셈 공통", + "상세구분": "08장 건설기계", + "결과단위": "원/시간", + "이름": "기계 시간당 기계경비(전력 기종)", + "출처": "건설품셈 공통 8-1-5 · 8-1-6 · 8-1-6 3 가", + "부품": { "갈래": "기계경비식" }, + "소유": "공용", + "비고": "원문 운전경비 표 주연료 칸에 ㎾ 가 찍힌 전동 기종 — 전력비 = 전력(㎾) × 전력량요금 · 잡재료 = 전력비의 %(8-4 주②)", + "입력": [ + { "이름": "기계", "고르기": ["7991-0050", "7202-0008", "7202-0010", "7991-0100", "7991-0500", "7992-0001", "7993-0020"] }, + { "이름": "전력 계약종별", "고르기": ["일반용(갑)Ⅰ 저압", "주택용 저압"], "출처": "유가전력 한전 전기요금표 2025-01-01", "비고": "품셈·계약예규에 계약종별 규정 없음(전력비는 실비 계상) — 기본 = 불러오기 기본값" } + ], + "중간": [{ "이름": "손료", "식": "버림(EQ:{기계}.가격 * 1000 * EQ:{기계}.손료계수 / 10000000, 0)", "출처": "건설품셈 공통 8-1-5 12 · 8-1-6 4" }], + "호표": [ + { + "종류": "재료", + "요소": { "이름": "전력량요금", "계약종별": "입력" }, + "이름": "전력", + "단위": "㎾h", + "수량": "EQ:{기계}.전력", + "비목": "재료비", + "출처": "건설품셈 공통 8-1-6 3 가", + "비고": "기계 줄 전력(㎾) 그대로 — 전동기 부하율 규정 없음" + } + ], + "덧줄": [{ "이름": "잡재료비", "식": "재료비 * EQ:{기계}.잡재료율 / 100", "비목": "재료비", "출처": "건설품셈 공통 8-4 주②" }, { "이름": "기계손료", "식": "손료", "비목": "경비", "출처": "건설품셈 공통 8-1-6 2" }], + "끝수": "손료 원 미만 버림(건설품셈 공통 8-1-5 12) · 합계 원문 규정 없음", + "변수표": { "기계": { "기호": "S", "아래": "기계" }, "전력 계약종별": { "기호": "S", "아래": "전력계약종별" }, "손료": { "기호": "C", "아래": "손료" } } + }, + { + "키": "GC001197", + "원문번호": "8", + "구분": "건설품셈 공통", + "상세구분": "08장 건설기계", + "결과단위": "원/시간", + "이름": "기계 시간당 기계경비(전력 · 조종원 기종)", + "출처": "건설품셈 공통 8-1-5 · 8-1-6 · 8-1-6 3 가", + "부품": { "갈래": "기계경비식" }, + "소유": "공용", + "비고": "원문 운전경비 표 주연료 칸에 ㎾ 가 찍히고 조종원이 있는 전동 기종(점보드릴) — 전력비 + 잡재료(전력비의 %) + 조종원", + "입력": [ + { "이름": "기계", "고르기": ["5805-0002", "5805-0003"] }, + { "이름": "전력 계약종별", "고르기": ["일반용(갑)Ⅰ 저압", "주택용 저압"], "출처": "유가전력 한전 전기요금표 2025-01-01", "비고": "품셈·계약예규에 계약종별 규정 없음(전력비는 실비 계상) — 기본 = 불러오기 기본값" } + ], + "중간": [ + { "이름": "손료", "식": "버림(EQ:{기계}.가격 * 1000 * EQ:{기계}.손료계수 / 10000000, 0)", "출처": "건설품셈 공통 8-1-5 12 · 8-1-6 4" }, + { "이름": "직종", "식": "EQ:{기계}.조종원직종", "출처": "건설품셈 공통 8-1-3 5" }, + { "이름": "시간환산", "식": "찾기(CC000336, 구분='시간환산').분자 / 찾기(CC000336, 구분='시간환산').분모", "출처": "건설품셈 공통 1-1-3 2(일일 작업시간 8시간)" } + ], + "호표": [ + { + "종류": "재료", + "요소": { "이름": "전력량요금", "계약종별": "입력" }, + "이름": "전력", + "단위": "㎾h", + "수량": "EQ:{기계}.전력", + "비목": "재료비", + "출처": "건설품셈 공통 8-1-6 3 가", + "비고": "기계 줄 전력(㎾) 그대로 — 전동기 부하율 규정 없음" + }, + { + "종류": "인력", + "요소": "LB:{직종}", + "이름": "조종원", + "단위": "인", + "수량": "EQ:{기계}.조종원 * 시간환산", + "비목": "노무비", + "출처": "건설품셈 공통 8-1-3 6", + "비고": "하루 노임 × 1/8(1일 8시간 · 건설품셈 공통 1-1-3 2)" + } + ], + "덧줄": [{ "이름": "잡재료비", "식": "재료비 * EQ:{기계}.잡재료율 / 100", "비목": "재료비", "출처": "건설품셈 공통 8-4 주②" }, { "이름": "기계손료", "식": "손료", "비목": "경비", "출처": "건설품셈 공통 8-1-6 2" }], + "끝수": "손료 원 미만 버림(건설품셈 공통 8-1-5 12) · 합계 원문 규정 없음", + "변수표": { + "기계": { "기호": "S", "아래": "기계" }, + "전력 계약종별": { "기호": "S", "아래": "전력계약종별" }, + "손료": { "기호": "C", "아래": "손료" }, + "직종": { "기호": "S", "아래": "직종" }, + "시간환산": { "기호": "Q", "아래": "시간환산" } + } + }, + { + "키": "GC001198", + "원문번호": "8", + "구분": "건설품셈 공통", + "상세구분": "08장 건설기계", + "결과단위": "원/시간", + "이름": "기계 시간당 기계경비(조종원 없는 기종 · 손료계수 한 칸)", + "출처": "건설품셈 공통 8-1-5 · 8-1-6", + "부품": { "갈래": "기계경비식" }, + "소유": "공용", + "비고": "원문 손료 표가 시간당 손료계수 하나만 준 기종(8-3-8 기타기계 등) 가운데 주연료가 있고 조종원이 없는 것", + "입력": [ + { "이름": "기계", "고르기": ["7994-0050"] }, + { + "이름": "지역", + "고르기": ["전국평균", "전국", "서울", "경기", "강원", "충북", "충남", "전북", "경북", "경남", "부산", "제주", "대구", "인천", "대전", "울산", "세종", "전남광주"], + "출처": "건설품셈 공통 8-1-7 5" + } + ], + "중간": [ + { "이름": "손료", "식": "버림(EQ:{기계}.가격 * 1000 * EQ:{기계}.손료계수 / 10000000, 0)", "출처": "건설품셈 공통 8-1-5 12 · 8-1-6 4" }, + { "이름": "연료", "식": "EQ:{기계}.주연료종류", "출처": "건설품셈 공통 8-4 주①㉰" } + ], + "호표": [{ "종류": "재료", "요소": "MO:{연료}:{지역}", "이름": "주연료", "단위": "ℓ", "수량": "EQ:{기계}.주연료", "비목": "재료비", "출처": "건설품셈 공통 8-4-8" }], + "덧줄": [{ "이름": "잡재료비", "식": "재료비 * EQ:{기계}.잡재료율 / 100", "비목": "재료비", "출처": "건설품셈 공통 8-4 주②" }, { "이름": "기계손료", "식": "손료", "비목": "경비", "출처": "건설품셈 공통 8-1-6 2" }], + "끝수": "손료 원 미만 버림(건설품셈 공통 8-1-5 12) · 합계 원문 규정 없음", + "변수표": { "기계": { "기호": "S", "아래": "기계" }, "지역": { "기호": "S", "아래": "지역" }, "손료": { "기호": "C", "아래": "손료" }, "연료": { "기호": "S", "아래": "연료" } } + }, + { + "키": "GC001199", + "원문번호": "8", + "구분": "건설품셈 공통", + "상세구분": "08장 건설기계", + "결과단위": "원/시간", + "이름": "기계 시간당 기계경비(직접 값)", + "출처": "자체", + "부품": { "갈래": "기계경비식" }, + "소유": "공용", + "비고": "자체 — 구성 없는 기계 · 구성(손료 · 연료 · 조종원) 없이 시간당 노무비 · 재료비 · 경비를 바로 둔 기계(내 기계 「시간당 값 직접」) — 기계 줄 값 그대로", + "입력": [{ "이름": "기계", "고르기": [] }], + "중간": [], + "호표": [], + "덧줄": [ + { "이름": "시간당 노무비", "식": "EQ:{기계}.노무비", "비목": "노무비", "출처": "자체" }, + { "이름": "시간당 재료비", "식": "EQ:{기계}.재료비", "비목": "재료비", "출처": "자체" }, + { "이름": "시간당 경비", "식": "EQ:{기계}.경비", "비목": "경비", "출처": "자체" } + ], + "끝수": null, + "변수표": { "기계": { "기호": "S", "아래": "기계" } } } ] } diff --git a/resources/master_data/수식문서/수식_건설품셈_08장_건설기계.json b/resources/master_data/수식문서/수식_건설품셈_08장_건설기계.json index d637e805c..59a932359 100644 --- a/resources/master_data/수식문서/수식_건설품셈_08장_건설기계.json +++ b/resources/master_data/수식문서/수식_건설품셈_08장_건설기계.json @@ -62,7 +62,7 @@ "갈래": "기계경비식" }, "변수": [ - {"열쇠": "기계", "기호": "S", "아래": "기계", "위": "", "이름": "기계", "단위": "", "연결": {"갈래": "선택", "목록": ["1730-0015", "7204-0055", "0602-0150", "2702-0020", "0101-0007", "0101-0010", "0101-0012", "0101-0019", "0101-0032", "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", "4504-0032", "4504-0036", "4504-0041", "4504-0043", "4504-0047", "4504-0052", "4205-0010", "4205-0017", "4205-0020", "4205-0030", "4205-0040", "4205-0045", "2105-0002", "2105-0003", "2105-0010", "2105-0015", "2105-0018", "2502-0025", "0602-0025", "2502-0050", "2101-0010", "2101-0015", "2101-0020", "2101-0025", "2101-0030", "2101-0035", "2101-0040", "2101-0050", "2101-0070", "2101-0080", "2101-0100", "2101-0150", "2101-0220", "2101-0280", "2101-0300", "7204-0018", "7204-0160", "5205-0210", "5405-0110", "7505-0450", "5205-0255", "7505-0150", "5205-0103", "6701-0147", "6701-0184", "5205-0170", "7505-0350", "0302-0134", "7505-0100", "7505-0050", "5205-0071", "7505-0025", "0502-0036", "1306-0100", "1506-0032", "0121-0004", "1305-0007", "7204-0038", "7204-0065", "0302-0057", "5701-0020", "0302-0095", "3201-0003", "1106-0012", "1406-0015", "1206-0008", "3601-0102", "1306-0025", "0211-0018", "0602-0045", "0602-0060", "0602-0105", "1630-0080", "3901-0300", "7505-0250", "2502-0035", "1306-0120", "1106-0010", "3201-0001", "1406-0008", "3601-0202", "3601-0402", "3611-0142", "2502-0020", "2502-0075", "5205-0035", "2702-0030", "2702-0060", "0211-0060", "0211-0080", "0211-0100", "0221-0040", "0221-0070", "0302-0025", "0302-0172", "0302-0229", "0302-0287", "0302-0350", "0302-0500", "0406-0054", "0406-0115", "0406-0161", "0406-0206", "0503-0036", "0602-0200", "0602-0240", "0602-0320", "1106-0015", "1206-0010", "1206-0014", "1209-0001", "1209-0002", "1209-0004", "1209-0006", "1209-0007", "1209-0008", "1209-0013", "1306-0044", "1306-0060", "1406-0025", "1506-0011", "1506-0012", "1506-0015", "1506-0019", "1506-0025", "1506-0030", "1506-0037", "2602-0015", "2602-0025", "2602-0035", "2602-0045", "2702-0040", "3530-0015", "3530-0036", "3601-0204", "3601-0302", "3701-0200", "3805-0120", "4504-0021", "4504-0028", "5405-0150", "5701-0010", "7106-0035", "7505-0125", "7505-0200", "7505-0500", "7505-0700", "9010-0003", "9010-0006", "9010-0010", "9010-0012", "9010-0020", "9010-0022", "9010-0033", "9010-0040", "9010-0044", "9010-0060", "9010-0080", "9020-0010", "9020-0015", "9020-0016", "9020-0022", "9020-0035", "9020-0050", "9020-0072", "9020-0160", "9020-0180", "9020-0200", "9050-0075", "9050-0150", "9050-0450", "9050-0750", "9050-0850", "9090-0800", "9090-1000", "9090-1200", "9090-1300", "9090-1400", "9090-1500", "9090-1600"], "값": "1730-0015"}}, + {"열쇠": "기계", "기호": "S", "아래": "기계", "위": "", "이름": "기계", "단위": "", "연결": {"갈래": "선택", "목록": ["1730-0015", "7204-0055", "0602-0150", "2702-0020", "0101-0007", "0101-0010", "0101-0012", "0101-0019", "0101-0032", "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", "4504-0032", "4504-0036", "4504-0041", "4504-0043", "4504-0047", "4504-0052", "4205-0010", "4205-0017", "4205-0020", "4205-0030", "4205-0040", "4205-0045", "2105-0002", "2105-0003", "2105-0010", "2105-0015", "2105-0018", "2502-0025", "0602-0025", "2502-0050", "2101-0010", "2101-0015", "2101-0020", "2101-0025", "2101-0030", "2101-0035", "2101-0040", "2101-0050", "2101-0070", "2101-0080", "2101-0100", "2101-0150", "2101-0220", "2101-0280", "2101-0300", "7204-0018", "7204-0160", "5205-0210", "5405-0110", "7505-0450", "5205-0255", "7505-0150", "5205-0103", "6701-0147", "6701-0184", "5205-0170", "7505-0350", "0302-0134", "7505-0100", "7505-0050", "5205-0071", "7505-0025", "0502-0036", "1306-0100", "1506-0032", "0121-0004", "1305-0007", "7204-0038", "7204-0065", "0302-0057", "5701-0020", "0302-0095", "3201-0003", "1106-0012", "1406-0015", "1206-0008", "3601-0102", "1306-0025", "0211-0018", "0602-0045", "0602-0060", "0602-0105", "1630-0080", "3901-0300", "7505-0250", "2502-0035", "1306-0120", "1106-0010", "3201-0001", "1406-0008", "3601-0202", "3601-0402", "3611-0142", "2502-0020", "2502-0075", "5205-0035", "2702-0030", "2702-0060", "0211-0060", "0211-0080", "0211-0100", "0221-0040", "0221-0070", "0302-0025", "0302-0172", "0302-0229", "0302-0287", "0302-0350", "0302-0500", "0406-0054", "0406-0115", "0406-0161", "0406-0206", "0503-0036", "0602-0200", "0602-0240", "0602-0320", "1106-0015", "1206-0010", "1206-0014", "1209-0001", "1209-0002", "1209-0004", "1209-0006", "1209-0007", "1209-0008", "1209-0013", "1306-0044", "1306-0060", "1406-0025", "1506-0011", "1506-0012", "1506-0015", "1506-0019", "1506-0025", "1506-0030", "1506-0037", "2602-0015", "2602-0025", "2602-0035", "2602-0045", "2702-0040", "3530-0015", "3530-0036", "3601-0204", "3601-0302", "3701-0200", "3805-0120", "4504-0021", "4504-0028", "5405-0150", "5701-0010", "7106-0035", "7505-0125", "7505-0200", "7505-0500", "7505-0700", "9010-0003", "9010-0006", "9010-0010", "9010-0012", "9010-0020", "9010-0022", "9010-0033", "9010-0040", "9010-0044", "9010-0060", "9010-0080", "9020-0010", "9020-0015", "9020-0016", "9020-0022", "9020-0035", "9020-0050", "9020-0072", "9020-0160", "9020-0180", "9020-0200", "9050-0075", "9050-0150", "9050-0450", "9050-0750", "9050-0850", "9090-0800", "9090-1000", "9090-1200", "9090-1300", "9090-1400", "9090-1500", "9090-1600", "3108-0060", "3108-0080", "3108-0100", "3108-0120", "9010-0120", "9010-0200"], "값": "1730-0015"}}, {"열쇠": "지역", "기호": "S", "아래": "지역", "위": "", "이름": "지역", "단위": "", "출처": "건설품셈 공통 8-1-7 5", "연결": {"갈래": "선택", "목록": ["전국평균", "전국", "서울", "경기", "강원", "충북", "충남", "전북", "경북", "경남", "부산", "제주", "대구", "인천", "대전", "울산", "세종", "전남광주"], "값": "전국평균"}}, {"열쇠": "손료", "기호": "C", "아래": "손료", "위": "", "이름": "손료", "단위": "", "출처": "건설품셈 공통 8-1-5 12 · 8-1-6 4", "연결": {"갈래": "식"}}, {"열쇠": "연료", "기호": "S", "아래": "연료", "위": "", "이름": "연료", "단위": "", "출처": "건설품셈 공통 8-4 주①㉰", "연결": {"갈래": "요소", "키": "EQ:{S_기계}", "칸": "주연료종류"}}, @@ -306,7 +306,7 @@ "결과단위": "원/시간", "출처": "건설품셈 공통 8-1-5 · 8-1-6", "변수": [ - {"열쇠": "기계", "기호": "S", "아래": "기계", "위": "", "이름": "기계", "단위": "", "연결": {"갈래": "선택", "목록": ["7620-0003", "7621-0100", "7995-0050", "5210-0013", "5210-0027", "5220-0015", "7730-0150", "6516-0060", "6516-0120", "6516-0250", "6516-0300", "6105-0190", "6202-0060", "0230-0002", "6410-0080", "6410-0100", "6410-0120", "6410-0150", "6410-0200", "6901-0010", "6530-0090", "6530-0120", "6517-0100", "6517-0150", "6517-0200", "6517-0250", "6517-0300", "6510-0100", "6510-0150", "6510-0200", "6510-0250", "6510-0300", "6518-0100", "6518-0150", "6518-0200", "6518-0250", "6518-0300", "5501-0080", "7750-0016", "7750-0025", "7730-0050", "5401-0017", "5202-0127", "5202-0240", "5202-0300", "7611-0200", "7612-0200", "5204-0200", "5204-0300", "5204-0400", "5204-0500", "5204-0600", "5702-0095", "3430-0400", "7431-1300", "7740-0080", "7740-0150", "2101-0010", "2101-0015", "2101-0020", "2101-0025", "2101-0030", "2101-0035", "2101-0040", "2101-0050", "2101-0070", "2101-0080", "2101-0100", "2101-0150", "2101-0220", "2101-0280", "2101-0300", "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", "2208-5008", "2208-5010", "2208-5012", "2208-5016", "2208-5020", "2105-0002", "2105-0003", "2105-0005", "2105-0010", "2105-0015", "2105-0018", "0201-0012", "0201-0020", "0201-0040", "0201-0060", "0201-0070", "0201-0080", "0201-0100", "0201-0120", "0201-0200", "6105-0390", "6202-0125", "7830-0081", "7950-0149", "7951-0066", "7952-0246", "7953-3400", "7954-1119", "7611-0300", "7431-1100", "7431-2300", "7431-2500", "7611-0400", "7611-0500", "7614-0300", "0250-0100", "5210-0010", "5210-0019", "0103-0016", "0103-0019", "0103-0023", "0103-0027", "0103-0032", "0230-0004", "0230-0006", "0230-0007", "0230-0008", "0230-0010", "0240-0007", "0250-0080", "0407-0054", "0407-0092", "0407-0107", "0407-0161", "0407-0206", "0610-0150", "0610-0200", "0610-0240", "2115-0024", "2115-0031", "2115-0036", "2116-0031", "2116-0036", "2117-0022", "2117-0027", "2118-0010", "2210-0145", "3430-0300", "3450-0642", "4115-0100", "4115-0150", "4115-0200", "4115-0300", "4505-0015", "4505-0026", "4611-0075", "5105-0050", "5105-0100", "5105-0150", "5105-0200", "5111-0040", "5111-0050", "5111-0060", "5111-0076", "5111-0091", "5112-0001", "5112-0002", "5112-0003", "5112-0004", "5112-0005", "5113-0001", "5113-0002", "5113-0003", "5113-0004", "5113-0005", "5113-0006", "5113-0007", "5113-0008", "5113-0009", "5113-0010", "5113-0011", "5114-0001", "5114-0002", "5114-0003", "5114-0004", "5114-0005", "5114-0006", "5114-0007", "5114-0008", "5115-0030", "5115-0055", "5115-0075", "5115-0095", "5116-0001", "5116-0002", "5116-0003", "5116-0004", "5116-0005", "5116-0006", "5116-0007", "5116-0008", "5117-0001", "5117-0002", "5117-0003", "5117-0004", "5117-0005", "5117-0006", "5117-0007", "5117-0008", "5118-0001", "5118-0002", "5118-0003", "5118-0004", "5118-0005", "5118-0006", "5118-0007", "5119-0625", "5203-1800", "5203-2200", "5203-2700", "5203-3500", "5203-4500", "5330-0074", "5805-0002", "5805-0003", "5901-0006", "5901-0010", "5901-0016", "6202-0200", "6408-0015", "6408-0020", "6408-0030", "6408-0040", "6408-0050", "6408-0085", "6408-0100", "6515-0090", "6530-0030", "6530-0040", "6530-0045", "6530-0060", "6532-0220", "6550-0130", "7103-0010", "7104-0010", "7202-0008", "7202-0010", "7205-0125", "7206-0020", "7206-0070", "7206-0100", "7430-1100", "7430-1300", "7430-1500", "7430-2300", "7430-2500", "7612-0300", "7612-0400", "7613-0075", "7613-0150", "7613-0300", "7613-0400", "7613-0600", "7613-0900", "7620-0002", "7730-0080", "7730-0100", "7730-0125", "7740-0100", "7770-0004", "7930-0001", "7930-0002", "7930-0003", "7930-0005", "7930-0007", "7930-0010", "7930-0015", "7930-0020", "7930-0025", "7930-0030", "7930-0040", "7930-0050", "7930-0075", "7930-0100", "7935-0180", "7991-0050", "7991-0100", "7991-0500", "7993-0020", "8201-0100", "8202-0100", "8203-0019", "8204-0100", "8205-0100", "9060-0060", "9060-0100", "9060-0200", "9060-0300", "9060-0500", "9060-0600", "9080-0050", "9080-0080", "9080-0100", "9080-0120", "9080-0150", "9080-0200", "9080-0300", "9080-0500", "9080-0700", "9080-1000", "9080-1100", "9080-1400", "9080-1500", "9080-1750", "9080-2000", "9080-3000"], "값": "7620-0003"}}, + {"열쇠": "기계", "기호": "S", "아래": "기계", "위": "", "이름": "기계", "단위": "", "연결": {"갈래": "선택", "목록": ["7620-0003", "7621-0100", "7995-0050", "5210-0013", "5210-0027", "5220-0015", "7730-0150", "6516-0060", "6516-0120", "6516-0250", "6516-0300", "6105-0190", "6202-0060", "0230-0002", "6410-0080", "6410-0100", "6410-0120", "6410-0150", "6410-0200", "6901-0010", "6530-0090", "6530-0120", "6517-0100", "6517-0150", "6517-0200", "6517-0250", "6517-0300", "6510-0100", "6510-0150", "6510-0200", "6510-0250", "6510-0300", "6518-0100", "6518-0150", "6518-0200", "6518-0250", "6518-0300", "5501-0080", "7750-0016", "7750-0025", "7730-0050", "5401-0017", "5202-0127", "5202-0240", "5202-0300", "7611-0200", "7612-0200", "5204-0200", "5204-0300", "5204-0400", "5204-0500", "5204-0600", "5702-0095", "3430-0400", "7431-1300", "7740-0080", "7740-0150", "2101-0010", "2101-0015", "2101-0020", "2101-0025", "2101-0030", "2101-0035", "2101-0040", "2101-0050", "2101-0070", "2101-0080", "2101-0100", "2101-0150", "2101-0220", "2101-0280", "2101-0300", "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-0005", "2105-0010", "2105-0015", "2105-0018", "0201-0012", "0201-0020", "0201-0040", "0201-0060", "0201-0070", "0201-0080", "0201-0100", "0201-0120", "0201-0200", "6105-0390", "6202-0125", "7830-0081", "7950-0149", "7951-0066", "7952-0246", "7953-3400", "7954-1119", "7611-0300", "7431-1100", "7431-2300", "7431-2500", "7611-0400", "7611-0500", "7614-0300", "0250-0100", "5210-0010", "5210-0019", "0103-0016", "0103-0019", "0103-0023", "0103-0027", "0103-0032", "0230-0004", "0230-0006", "0230-0007", "0230-0008", "0230-0010", "0240-0007", "0250-0080", "0407-0054", "0407-0092", "0407-0107", "0407-0161", "0407-0206", "0610-0150", "0610-0200", "0610-0240", "2115-0024", "2115-0031", "2115-0036", "2116-0031", "2116-0036", "2117-0022", "2117-0027", "2118-0010", "2210-0145", "3430-0300", "4115-0100", "4115-0150", "4115-0200", "4115-0300", "4505-0015", "4505-0026", "4611-0075", "5111-0040", "5111-0050", "5111-0060", "5111-0076", "5111-0091", "5112-0001", "5112-0002", "5112-0003", "5112-0004", "5112-0005", "5113-0001", "5113-0002", "5113-0003", "5113-0004", "5113-0005", "5113-0006", "5113-0007", "5113-0008", "5113-0009", "5113-0010", "5113-0011", "5114-0001", "5114-0002", "5114-0003", "5114-0004", "5114-0005", "5114-0006", "5114-0007", "5114-0008", "5115-0030", "5115-0055", "5115-0075", "5115-0095", "5116-0001", "5116-0002", "5116-0003", "5116-0004", "5116-0005", "5116-0006", "5116-0007", "5116-0008", "5117-0001", "5117-0002", "5117-0003", "5117-0004", "5117-0005", "5117-0006", "5117-0007", "5117-0008", "5118-0001", "5118-0002", "5118-0003", "5118-0004", "5118-0005", "5118-0006", "5118-0007", "5203-1800", "5203-2200", "5203-2700", "5203-3500", "5203-4500", "5330-0074", "5901-0006", "5901-0010", "5901-0016", "6202-0200", "6408-0015", "6408-0020", "6408-0030", "6408-0040", "6408-0050", "6408-0085", "6408-0100", "6515-0090", "6530-0030", "6530-0040", "6530-0045", "6530-0060", "6532-0220", "6550-0130", "7103-0010", "7104-0010", "7206-0020", "7206-0070", "7206-0100", "7430-1100", "7430-1300", "7430-1500", "7430-2300", "7430-2500", "7612-0300", "7612-0400", "7613-0075", "7613-0150", "7613-0300", "7613-0400", "7613-0600", "7613-0900", "7620-0002", "7730-0080", "7730-0100", "7730-0125", "7740-0100", "7770-0004", "7930-0001", "7930-0002", "7930-0003", "7930-0005", "7930-0007", "7930-0010", "7930-0015", "7930-0020", "7930-0025", "7930-0030", "7930-0040", "7930-0050", "7930-0075", "7930-0100", "7935-0180", "8201-0100", "8202-0100", "8203-0019", "8204-0100", "8205-0100", "9060-0060", "9060-0100", "9060-0200", "9060-0300", "9060-0500", "9060-0600", "9080-0050", "9080-0080", "9080-0100", "9080-0120", "9080-0150", "9080-0200", "9080-0300", "9080-0500", "9080-0700", "9080-1000", "9080-1100", "9080-1400", "9080-1500", "9080-1750", "9080-2000", "9080-3000"], "값": "7620-0003"}}, {"열쇠": "손료", "기호": "C", "아래": "손료", "위": "", "이름": "손료", "단위": "", "출처": "건설품셈 공통 8-1-5 12 · 8-1-6 4", "연결": {"갈래": "식"}}, {"열쇠": "P_기계", "기호": "P", "아래": "기계", "위": "", "이름": "EQ:{기계}.가격", "단위": "", "연결": {"갈래": "요소", "키": "EQ:{S_기계}", "칸": "가격"}}, {"열쇠": "k_기계손료", "기호": "k", "아래": "기계손료", "위": "", "이름": "EQ:{기계}.손료계수", "단위": "", "연결": {"갈래": "요소", "키": "EQ:{S_기계}", "칸": "손료계수"}} @@ -412,7 +412,7 @@ "갈래": "기계경비식" }, "변수": [ - {"열쇠": "기계", "기호": "S", "아래": "기계", "위": "", "이름": "기계", "단위": "", "연결": {"갈래": "선택", "목록": ["5401-0017", "4108-0060", "4108-0090", "4108-0120", "4108-0150", "4108-0180", "4108-0210", "5401-0015"], "값": "5401-0017"}}, + {"열쇠": "기계", "기호": "S", "아래": "기계", "위": "", "이름": "기계", "단위": "", "연결": {"갈래": "선택", "목록": ["5401-0017", "4108-0060", "4108-0090", "4108-0120", "4108-0150", "4108-0180", "4108-0210", "5401-0015", "2208-5008", "2208-5010", "2208-5012", "2208-5016", "2208-5020", "5105-0050", "5105-0100", "5105-0150", "5105-0200", "5119-0625", "7205-0125"], "값": "5401-0017"}}, {"열쇠": "지역", "기호": "S", "아래": "지역", "위": "", "이름": "지역", "단위": "", "출처": "건설품셈 공통 8-1-7 5", "연결": {"갈래": "선택", "목록": ["전국평균", "전국", "서울", "경기", "강원", "충북", "충남", "전북", "경북", "경남", "부산", "제주", "대구", "인천", "대전", "울산", "세종", "전남광주"], "값": "전국평균"}}, {"열쇠": "손료", "기호": "C", "아래": "손료", "위": "", "이름": "손료", "단위": "", "출처": "건설품셈 공통 8-1-5 12 · 8-1-6 4", "연결": {"갈래": "식"}}, {"열쇠": "직종", "기호": "S", "아래": "직종", "위": "", "이름": "직종", "단위": "", "출처": "건설품셈 공통 8-1-3 5", "연결": {"갈래": "요소", "키": "EQ:{S_기계}", "칸": "조종원직종"}}, @@ -2213,6 +2213,145 @@ "비목": {"방법": "버림", "자리": 0}, "끝전": "비목버림" } + }, + { + "꼴": "수식문서", + "판": 1, + "키": "GC001196", + "이름": "기계 시간당 기계경비(전력 기종)", + "결과단위": "원/시간", + "출처": "건설품셈 공통 8-1-5 · 8-1-6 · 8-1-6 3 가", + "부품": { + "갈래": "기계경비식" + }, + "변수": [ + {"열쇠": "기계", "기호": "S", "아래": "기계", "위": "", "이름": "기계", "단위": "", "연결": {"갈래": "선택", "목록": ["7991-0050", "7202-0008", "7202-0010", "7991-0100", "7991-0500", "7992-0001", "7993-0020"], "값": "7991-0050"}}, + {"열쇠": "전력 계약종별", "기호": "S", "아래": "전력계약종별", "위": "", "이름": "전력 계약종별", "단위": "", "출처": "유가전력 한전 전기요금표 2025-01-01", "연결": {"갈래": "선택", "목록": ["일반용(갑)Ⅰ 저압", "주택용 저압"], "값": "일반용(갑)Ⅰ 저압"}}, + {"열쇠": "손료", "기호": "C", "아래": "손료", "위": "", "이름": "손료", "단위": "", "출처": "건설품셈 공통 8-1-5 12 · 8-1-6 4", "연결": {"갈래": "식"}}, + {"열쇠": "P_기계", "기호": "P", "아래": "기계", "위": "", "이름": "EQ:{기계}.가격", "단위": "", "연결": {"갈래": "요소", "키": "EQ:{S_기계}", "칸": "가격", "계약종별": "S_전력계약종별"}}, + {"열쇠": "k_기계손료", "기호": "k", "아래": "기계손료", "위": "", "이름": "EQ:{기계}.손료계수", "단위": "", "연결": {"갈래": "요소", "키": "EQ:{S_기계}", "칸": "손료계수", "계약종별": "S_전력계약종별"}}, + {"열쇠": "P_기계전력", "기호": "P", "아래": "기계전력", "위": "", "이름": "EQ:{기계}.전력", "단위": "", "연결": {"갈래": "요소", "키": "EQ:{S_기계}", "칸": "전력", "계약종별": "S_전력계약종별"}}, + {"열쇠": "P_전력", "기호": "P", "아래": "전력", "위": "", "이름": "전력단가", "단위": "", "연결": {"갈래": "요소", "재료": {"이름": "전력량요금", "계약종별": "입력"}, "단위": "㎾h", "계약종별": "S_전력계약종별"}}, + {"열쇠": "r_기계잡재료", "기호": "r", "아래": "기계잡재료", "위": "", "이름": "EQ:{기계}.잡재료율", "단위": "", "연결": {"갈래": "요소", "키": "EQ:{S_기계}", "칸": "잡재료율", "계약종별": "S_전력계약종별"}} + ], + "식": [ + {"기호": "C_손료", "식": "버림(P_기계 × 1000 × k_기계손료 ÷ 10000000, 0)"} + ], + "금액": [ + {"이름": "전력", "단위": "㎾h", "비목": "재료비", "수량": "P_기계전력", "단가": "P_전력", "출처": "건설품셈 공통 8-1-6 3 가"}, + {"이름": "잡재료비", "단위": "식", "비목": "재료비", "단가": "재료비 × r_기계잡재료 ÷ 100", "출처": "건설품셈 공통 8-4 주②"}, + {"이름": "기계손료", "단위": "식", "비목": "경비", "단가": "C_손료", "출처": "건설품셈 공통 8-1-6 2"} + ], + "끝수": { + "줄": {"방법": "버림", "자리": 1}, + "비목": {"방법": "버림", "자리": 0}, + "끝전": "비목버림" + } + }, + { + "꼴": "수식문서", + "판": 1, + "키": "GC001197", + "이름": "기계 시간당 기계경비(전력 · 조종원 기종)", + "결과단위": "원/시간", + "출처": "건설품셈 공통 8-1-5 · 8-1-6 · 8-1-6 3 가", + "부품": { + "갈래": "기계경비식" + }, + "변수": [ + {"열쇠": "기계", "기호": "S", "아래": "기계", "위": "", "이름": "기계", "단위": "", "연결": {"갈래": "선택", "목록": ["5805-0002", "5805-0003"], "값": "5805-0002"}}, + {"열쇠": "전력 계약종별", "기호": "S", "아래": "전력계약종별", "위": "", "이름": "전력 계약종별", "단위": "", "출처": "유가전력 한전 전기요금표 2025-01-01", "연결": {"갈래": "선택", "목록": ["일반용(갑)Ⅰ 저압", "주택용 저압"], "값": "일반용(갑)Ⅰ 저압"}}, + {"열쇠": "손료", "기호": "C", "아래": "손료", "위": "", "이름": "손료", "단위": "", "출처": "건설품셈 공통 8-1-5 12 · 8-1-6 4", "연결": {"갈래": "식"}}, + {"열쇠": "직종", "기호": "S", "아래": "직종", "위": "", "이름": "직종", "단위": "", "출처": "건설품셈 공통 8-1-3 5", "연결": {"갈래": "요소", "키": "EQ:{S_기계}", "칸": "조종원직종", "계약종별": "S_전력계약종별"}}, + {"열쇠": "시간환산", "기호": "Q", "아래": "시간환산", "위": "", "이름": "시간환산", "단위": "", "출처": "건설품셈 공통 1-1-3 2(일일 작업시간 8시간)", "연결": {"갈래": "식"}}, + {"열쇠": "P_기계", "기호": "P", "아래": "기계", "위": "", "이름": "EQ:{기계}.가격", "단위": "", "연결": {"갈래": "요소", "키": "EQ:{S_기계}", "칸": "가격", "계약종별": "S_전력계약종별"}}, + {"열쇠": "k_기계손료", "기호": "k", "아래": "기계손료", "위": "", "이름": "EQ:{기계}.손료계수", "단위": "", "연결": {"갈래": "요소", "키": "EQ:{S_기계}", "칸": "손료계수", "계약종별": "S_전력계약종별"}}, + {"열쇠": "Q_분자^표", "기호": "Q", "아래": "분자", "위": "표", "이름": "건설기계 조종원 노임 시간 환산 계수.분자", "단위": "", "연결": {"갈래": "표", "표": "CC000336", "조건": {"구분": "'시간환산'"}, "칸": "분자"}}, + {"열쇠": "Q_분모^표", "기호": "Q", "아래": "분모", "위": "표", "이름": "건설기계 조종원 노임 시간 환산 계수.분모", "단위": "", "연결": {"갈래": "표", "표": "CC000336", "조건": {"구분": "'시간환산'"}, "칸": "분모"}}, + {"열쇠": "P_기계전력", "기호": "P", "아래": "기계전력", "위": "", "이름": "EQ:{기계}.전력", "단위": "", "연결": {"갈래": "요소", "키": "EQ:{S_기계}", "칸": "전력", "계약종별": "S_전력계약종별"}}, + {"열쇠": "P_전력", "기호": "P", "아래": "전력", "위": "", "이름": "전력단가", "단위": "", "연결": {"갈래": "요소", "재료": {"이름": "전력량요금", "계약종별": "입력"}, "단위": "㎾h", "계약종별": "S_전력계약종별"}}, + {"열쇠": "Q_기계조종원", "기호": "Q", "아래": "기계조종원", "위": "", "이름": "EQ:{기계}.조종원", "단위": "", "연결": {"갈래": "요소", "키": "EQ:{S_기계}", "칸": "조종원", "계약종별": "S_전력계약종별"}}, + {"열쇠": "w_기계운전사", "기호": "w", "아래": "기계운전사", "위": "", "이름": "건설기계운전사노임", "단위": "", "연결": {"갈래": "요소", "키": "LB:{S_직종}", "계약종별": "S_전력계약종별"}}, + {"열쇠": "r_기계잡재료", "기호": "r", "아래": "기계잡재료", "위": "", "이름": "EQ:{기계}.잡재료율", "단위": "", "연결": {"갈래": "요소", "키": "EQ:{S_기계}", "칸": "잡재료율", "계약종별": "S_전력계약종별"}} + ], + "식": [ + {"기호": "C_손료", "식": "버림(P_기계 × 1000 × k_기계손료 ÷ 10000000, 0)"}, + {"기호": "Q_시간환산", "식": "Q_분자^표 ÷ Q_분모^표"} + ], + "금액": [ + {"이름": "전력", "단위": "㎾h", "비목": "재료비", "수량": "P_기계전력", "단가": "P_전력", "출처": "건설품셈 공통 8-1-6 3 가"}, + {"이름": "조종원", "단위": "인", "비목": "노무비", "수량": "Q_기계조종원 × Q_시간환산", "단가": "w_기계운전사", "출처": "건설품셈 공통 8-1-3 6"}, + {"이름": "잡재료비", "단위": "식", "비목": "재료비", "단가": "재료비 × r_기계잡재료 ÷ 100", "출처": "건설품셈 공통 8-4 주②"}, + {"이름": "기계손료", "단위": "식", "비목": "경비", "단가": "C_손료", "출처": "건설품셈 공통 8-1-6 2"} + ], + "끝수": { + "줄": {"방법": "버림", "자리": 1}, + "비목": {"방법": "버림", "자리": 0}, + "끝전": "비목버림" + } + }, + { + "꼴": "수식문서", + "판": 1, + "키": "GC001198", + "이름": "기계 시간당 기계경비(조종원 없는 기종 · 손료계수 한 칸)", + "결과단위": "원/시간", + "출처": "건설품셈 공통 8-1-5 · 8-1-6", + "부품": { + "갈래": "기계경비식" + }, + "변수": [ + {"열쇠": "기계", "기호": "S", "아래": "기계", "위": "", "이름": "기계", "단위": "", "연결": {"갈래": "선택", "목록": ["7994-0050"], "값": "7994-0050"}}, + {"열쇠": "지역", "기호": "S", "아래": "지역", "위": "", "이름": "지역", "단위": "", "출처": "건설품셈 공통 8-1-7 5", "연결": {"갈래": "선택", "목록": ["전국평균", "전국", "서울", "경기", "강원", "충북", "충남", "전북", "경북", "경남", "부산", "제주", "대구", "인천", "대전", "울산", "세종", "전남광주"], "값": "전국평균"}}, + {"열쇠": "손료", "기호": "C", "아래": "손료", "위": "", "이름": "손료", "단위": "", "출처": "건설품셈 공통 8-1-5 12 · 8-1-6 4", "연결": {"갈래": "식"}}, + {"열쇠": "연료", "기호": "S", "아래": "연료", "위": "", "이름": "연료", "단위": "", "출처": "건설품셈 공통 8-4 주①㉰", "연결": {"갈래": "요소", "키": "EQ:{S_기계}", "칸": "주연료종류"}}, + {"열쇠": "P_기계", "기호": "P", "아래": "기계", "위": "", "이름": "EQ:{기계}.가격", "단위": "", "연결": {"갈래": "요소", "키": "EQ:{S_기계}", "칸": "가격"}}, + {"열쇠": "k_기계손료", "기호": "k", "아래": "기계손료", "위": "", "이름": "EQ:{기계}.손료계수", "단위": "", "연결": {"갈래": "요소", "키": "EQ:{S_기계}", "칸": "손료계수"}}, + {"열쇠": "P_기계주연료", "기호": "P", "아래": "기계주연료", "위": "", "이름": "EQ:{기계}.주연료", "단위": "", "연결": {"갈래": "요소", "키": "EQ:{S_기계}", "칸": "주연료"}}, + {"열쇠": "P_휘발유", "기호": "P", "아래": "휘발유", "위": "", "이름": "휘발유단가", "단위": "", "연결": {"갈래": "요소", "키": "MO:{S_연료}:{S_지역}"}}, + {"열쇠": "r_기계잡재료", "기호": "r", "아래": "기계잡재료", "위": "", "이름": "EQ:{기계}.잡재료율", "단위": "", "연결": {"갈래": "요소", "키": "EQ:{S_기계}", "칸": "잡재료율"}} + ], + "식": [ + {"기호": "C_손료", "식": "버림(P_기계 × 1000 × k_기계손료 ÷ 10000000, 0)"} + ], + "금액": [ + {"이름": "주연료", "단위": "ℓ", "비목": "재료비", "수량": "P_기계주연료", "단가": "P_휘발유", "출처": "건설품셈 공통 8-4-8"}, + {"이름": "잡재료비", "단위": "식", "비목": "재료비", "단가": "재료비 × r_기계잡재료 ÷ 100", "출처": "건설품셈 공통 8-4 주②"}, + {"이름": "기계손료", "단위": "식", "비목": "경비", "단가": "C_손료", "출처": "건설품셈 공통 8-1-6 2"} + ], + "끝수": { + "줄": {"방법": "버림", "자리": 1}, + "비목": {"방법": "버림", "자리": 0}, + "끝전": "비목버림" + } + }, + { + "꼴": "수식문서", + "판": 1, + "키": "GC001199", + "이름": "기계 시간당 기계경비(직접 값)", + "결과단위": "원/시간", + "출처": "자체", + "부품": { + "갈래": "기계경비식" + }, + "변수": [ + {"열쇠": "기계", "기호": "S", "아래": "기계", "위": "", "이름": "기계", "단위": "", "연결": {"갈래": "선택", "목록": [], "값": 0}}, + {"열쇠": "P_EQ기계", "기호": "P", "아래": "EQ기계", "위": "", "이름": "EQ:{기계}", "단위": "", "연결": {"갈래": "요소", "키": "EQ:{S_기계}", "칸": "노무비"}}, + {"열쇠": "P_EQ기계2", "기호": "P", "아래": "EQ기계2", "위": "", "이름": "EQ:{기계}", "단위": "", "연결": {"갈래": "요소", "키": "EQ:{S_기계}", "칸": "재료비"}}, + {"열쇠": "P_EQ기계3", "기호": "P", "아래": "EQ기계3", "위": "", "이름": "EQ:{기계}", "단위": "", "연결": {"갈래": "요소", "키": "EQ:{S_기계}", "칸": "경비"}} + ], + "식": [], + "금액": [ + {"이름": "시간당 노무비", "단위": "식", "비목": "노무비", "단가": "P_EQ기계", "출처": "자체"}, + {"이름": "시간당 재료비", "단위": "식", "비목": "재료비", "단가": "P_EQ기계2", "출처": "자체"}, + {"이름": "시간당 경비", "단위": "식", "비목": "경비", "단가": "P_EQ기계3", "출처": "자체"} + ], + "끝수": { + "줄": {"방법": "버림", "자리": 1}, + "비목": {"방법": "버림", "자리": 0}, + "끝전": "비목버림" + } } ] }