diff --git a/Z01_MasterData/Z01_MasterData_BasePrices.py b/Z01_MasterData/Z01_MasterData_BasePrices.py index 1157d334..fcd75a28 100644 --- a/Z01_MasterData/Z01_MasterData_BasePrices.py +++ b/Z01_MasterData/Z01_MasterData_BasePrices.py @@ -338,9 +338,14 @@ def _sorted(rows: list[dict[str, Any]], column: str, desc: bool) -> list[dict[st return sorted(filled, key=lambda r: _order_key(r[column]), reverse=desc) + empty +#: 돌쌓기 표준경사는 B06 횡단설계가 같은 값으로 기울기를 그림 — 아홉 중 **그림에도 닿는** 하나(브레인). +_SLOPE_NOTICE = "고치면 횡단 도면 모양도 함께 바뀜 — B06 횡단설계가 같은 값으로 벽 기울기를 그림" +_EXTRA_NOTICE = {"rate": _RATE_NOTICE, "masonry_slope": _SLOPE_NOTICE} + + def notice(kind: str) -> list[str]: """표 수준 알림 — 화면이 따로 가지면 문구가 두 벌이 됨(브레인 ③).""" - return [_SCOPE_NOTICE] + ([_RATE_NOTICE] if kind == "rate" else []) + return [_SCOPE_NOTICE] + ([_EXTRA_NOTICE[kind]] if kind in _EXTRA_NOTICE else []) def spec(kind: str, columns: list[str]) -> dict[str, Any]: diff --git a/resources/tester/test_z01_base_tables.py b/resources/tester/test_z01_base_tables.py index 429320b9..97671f68 100644 --- a/resources/tester/test_z01_base_tables.py +++ b/resources/tester/test_z01_base_tables.py @@ -75,6 +75,17 @@ def test_아홉이_기초단가와_같은_길로_섬(client: TestClient) -> None assert table["source"] == [], kind # 출처표엔 아직 이 아홉이 없음 — 빈 목록(모양은 그대로) +def test_돌쌓기_경사는_도면에도_닿는다고_알림(client: TestClient) -> None: + """아홉 중 하나만 수량 말고 **그림**에도 닿음 — 화면이 사전을 가지면 문구가 두 벌(브레인).""" + slope = _get(client, "masonry_slope", size=1)["notice"] + assert any("횡단 도면" in line for line in slope) and len(slope) == 2 + assert all( + not any("횡단 도면" in line for line in _get(client, kind, size=1)["notice"]) + for kind in NEW_KINDS + if kind != "masonry_slope" + ) + + def test_값표만_태우고_이음표는_안_태움(client: TestClient) -> None: formwork = " ".join(_ids(_get(client, "formwork_reuse", size=500))) assert "type_map" not in formwork and "euroform_type/classes" in formwork