feat(816-3): 체인톱 시간당 기계경비 GF000337 · 체인톱에 이어진 기계 줄 시간당 = 1 일 1 대당 ÷ 8
- 새 로직 파일 산림품셈 02장(차례 0) GF000337 — GF000076 체인톱 줄(2-1-1 휘발유 · 체인오일 · 잡품 · 2-2-1 손료) × 시간환산 · 수식 문서 빌더 변환(옛 엔진 = 새 계산기) - M02_Machine_Hourly 기계 줄만의 식 고름 = 기계 줄 값(가격 · 손료계수)을 읽는 기계경비식 - 별칭 값은 사용자 몫(마스터에 안 넣음) · 인치 따옴표 통째 별칭은 master_alias 그대로 깨지지 않음(시험 = 임시 별칭) Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
@@ -68,15 +68,15 @@ def logic_of(code: str) -> dict | None:
|
||||
|
||||
|
||||
def _own(code: str) -> dict | None:
|
||||
"""그 기계만의 시간당 경비 식(816-1 · 4륜구동 1톤 덤프트럭 = GF000145) — 「기계」 입력 없는
|
||||
기계경비식이 그 원문번호 기계 줄 가격(`EQ….가격`)을 읽으면 그 식 · 없으면 None."""
|
||||
"""그 기계만의 시간당 경비 식(816-1 · 4륜구동 1톤 덤프트럭 = GF000145 · 816-3 체인톱 = GF000337) —
|
||||
「기계」 입력 없는 기계경비식이 그 원문번호 기계 줄 값(`EQ….가격` · `EQ….손료계수`)을 읽으면 그 식."""
|
||||
rows = store.loaded()[1].index.get("EQ", {}).values()
|
||||
prices = [f"{r.get('키')}.가격" for r in rows if code and str(r.get("원문번호")) == code]
|
||||
keys = [f"{r.get('키')}." for r in rows if code and str(r.get("원문번호")) == code]
|
||||
for data in store.loaded()[0].values():
|
||||
for row in data.get("줄") or [] if data.get("그룹") == "로직" else []:
|
||||
if (row.get("부품") or {}).get("갈래") != "기계경비식" or takes_machine(row):
|
||||
continue
|
||||
if any(p in str(row.get("중간")) for p in prices):
|
||||
if any(k in str(row.get("중간")) + str(row.get("호표")) for k in keys):
|
||||
return row
|
||||
return None
|
||||
|
||||
|
||||
Reference in New Issue
Block a user