fix(M02): 식 없는 계산 열(pv_a · pv_jt · pp_cp)은 빈 값 — 줄눈 간격 줄 식도 열 식이 있을 때만
- 값은 면적산출 알약 연결로 받음(PLAN 13장) · 표 채우기 시험을 새 규칙으로 Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01EUypcnp5d1gU2aeKh9F2H7
This commit is contained in:
@@ -437,15 +437,16 @@ def fill_document(
|
||||
cells = slots[slot]["값"]
|
||||
cells[column["id"]] = round((cells.get(column["id"]) or 0) + value, 3)
|
||||
|
||||
# 포장 줄눈 간격이 변수와 다르면 그 줄 식에 박음(줄 식이 열 식을 이김)
|
||||
# 포장 줄눈 간격이 변수와 다르면 그 줄 식에 박음(줄 식이 열 식을 이김) · 열 식이 없으면 안 박음
|
||||
# (식 없는 계산 열은 빈 값 — 값은 면적산출 알약 연결로 받음 · PLAN 13장)
|
||||
base_spacing = _number(variables.get("수축줄눈_간격_m"))
|
||||
for item, slot in zip(items, item_slot, strict=True):
|
||||
spacing = _number(item["options"].get("joint_spacing_m"))
|
||||
if item["type_id"] != "pavement_concrete" or spacing in (None, base_spacing):
|
||||
continue
|
||||
for new_id, suffix, new in made.get("pv_jt", []):
|
||||
if "|".join(_expansion({"펼침": ["thickness_cm"]}, item)) == suffix:
|
||||
text = new.get("식", "").replace("[$수축줄눈_간격_m]", _label("", spacing))
|
||||
if new.get("식") and "|".join(_expansion({"펼침": ["thickness_cm"]}, item)) == suffix:
|
||||
text = new["식"].replace("[$수축줄눈_간격_m]", _label("", spacing))
|
||||
slots[slot].setdefault("식", {})[new_id] = text
|
||||
|
||||
missing = sum(1 for item in items if item["type_id"] == "pipe" and not item.get("관연장"))
|
||||
|
||||
Reference in New Issue
Block a user