feat(846-2): 기계 줄 시간당 작업량 화면 — 산출근거 「시간당 작업량」 줄 먼저 · 비목 ÷ 시간당 작업량 · 제어 구역 일당 / 시간당 식 고르기 · 변수 칸 · 기계 보기 작업량 식
- 산출근거: 일당 「시간당 작업량 = 시공량 560 ㎥/일 ÷ (1 대 × 8 시간) = 70 ㎥/시간」 · 시간당 식 = q · K · f · E · cm 값 줄 + 한 층 분수 Q 식 · 비목 줄 「59,020 원/시간 ÷ 70 ㎥/시간 = 843.1 원」(금액 그대로) - 제어 구역: 「시간당 작업량」 묶음 맨 위 — 방식 고르기(식 없는 기계 = 잠김 + 까닭) · 시간당 = 작업량 틀 변수 칸(고침 · 원래 값) · 덮음 = 기계덮음.<기계>.작업량 - 기계 보기: 왼쪽 작업량 카드(기계 정본 변수) · 오른쪽 풀이 · 서버가 작업량 틀 연결을 실음(M02_MyMachine_Sheet._work) - 시험: test_846_2_work_view 새로 · test_845_2 GC000088 비목 줄 기대값을 새 꼴로 고침(846-2 표시 변경) · 헬퍼 가짜 DOM 이 진짜 DOM 처럼 요소를 옮김(같은 요소 두 줄 재사용 흠을 잡게) Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
@@ -9,6 +9,7 @@
|
||||
- 바탕 = 처음 줄 인력 · 잡품 목록(842-3 · `master_doc_cover.row_entry`) — 덮음(지금 줄 목록)이 그 위에 · 값 박음은
|
||||
목록 → 조종원 수 · 직종 · 잡재료율(`master_machine_crew.view`)
|
||||
- 직종 = 노임 요소 코드 → 인력 원문번호(인력 줄 키 `LB:원문번호`)
|
||||
- 작업량(846-2) = 지금 줄 `값.작업량` 식마다 작업량 틀 문서 · 표를 연결에 더함(오른쪽 풀이)
|
||||
"""
|
||||
|
||||
from __future__ import annotations
|
||||
@@ -59,6 +60,19 @@ def _jobs() -> dict[str, str]:
|
||||
return {str(r["키"]): str(r.get("원문번호")) for r in rows if r.get("키")}
|
||||
|
||||
|
||||
def _work(cur: dict, rec, mc) -> None:
|
||||
"""기계 작업량 줄 → 작업량 틀 문서 · 표 연결(못 읽는 식 = 건너뜀 · 화면이 「불러오는 중」)."""
|
||||
for spec in (cur.get("값") or {}).get("작업량") or []:
|
||||
key = str(spec.get("식") or "") if isinstance(spec, dict) else ""
|
||||
try:
|
||||
tpl = rec.doc(key) if key else None
|
||||
if tpl:
|
||||
rec.prefetch(tpl)
|
||||
mc.calc(tpl, rec, dict(spec.get("변수") or {}))
|
||||
except Exception: # noqa: BLE001 — 그림 연결만(셈 정본 아님)
|
||||
continue
|
||||
|
||||
|
||||
def sheet(row: Any, base: Any = None, cover: Any = None, mine: bool = False) -> dict:
|
||||
import master_doc_calc as mc
|
||||
import master_doc_cover as mcv
|
||||
@@ -91,6 +105,7 @@ def sheet(row: Any, base: Any = None, cover: Any = None, mine: bool = False) ->
|
||||
rec = mr.Rec(links)
|
||||
rec.prefetch(shaped)
|
||||
mc.calc(shaped, rec, given)
|
||||
_work(cur, rec, mc)
|
||||
got = {"키": logic["키"], "이름": logic.get("이름"), "까닭": mh.why(cur, logic), "문서": doc,
|
||||
"값": vals, "연결": rec.out()} # fmt: skip
|
||||
return json.loads(json.dumps(out | got, ensure_ascii=False, default=_plain))
|
||||
|
||||
Reference in New Issue
Block a user