From d611aac6756c8f76f868c1c12d4e60df2f971fc9 Mon Sep 17 00:00:00 2001 From: umsangdon Date: Thu, 24 Sep 2026 21:13:57 +0900 Subject: [PATCH] =?UTF-8?q?feat(m01):=20=EB=8B=A8=EC=9C=84=20=ED=9B=84?= =?UTF-8?q?=EB=B3=B4=20=EA=B0=99=EC=9D=80=20=EC=84=B1=EA=B2=A9=EC=9D=B8=20?= =?UTF-8?q?=EB=B9=88=20=EC=A4=84=EB=A7=8C=20=EA=B2=80=EC=83=89=EC=96=B4?= =?UTF-8?q?=EB=A1=9C=20(PLAN=208-3)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - 혼화제(GC000684) g ↔ kg — 검색어 「무수축혼화제」 · 단가 0 → 5 · 금액 변화 0(수량 0) - 성격이 다른 11줄 · 값 빈 자리표 14줄은 그대로 - 도구: 빈 줄은 후보 단위가 같은 성격일 때만 바꿈 · 1,354 자동값 금액 변화 0 · check_master 로직 0 · 단위 16 → 15 Co-Authored-By: Claude Sonnet 5 Claude-Session: https://claude.ai/code/session_01V1MKKZKpUHTPKb513FneU8 --- resources/master_data/scripts/build_재료_검색어.py | 11 ++++++++--- .../master_data/로직_건설품셈_09장_미장공사.json | 2 +- 2 files changed, 9 insertions(+), 4 deletions(-) diff --git a/resources/master_data/scripts/build_재료_검색어.py b/resources/master_data/scripts/build_재료_검색어.py index 9ed8a227..134ddbcd 100644 --- a/resources/master_data/scripts/build_재료_검색어.py +++ b/resources/master_data/scripts/build_재료_검색어.py @@ -173,9 +173,14 @@ def convert(master: mf.Master, row: dict, item: dict) -> tuple[dict | None, list words = [w for k in ("이름", "규격") for w in str(elem.get(k) or "").split()] targets = {want for _, want in cases} if targets == {None}: - # 지금 같은 단위 후보 0 인 빈 줄 — 검색어는 다른 단위 품목을 잡아 값이 생기거나(금액 바뀜) - # 후보 0 검사에 걸림 · 조건 그대로 두고 목록으로 알림 - return None, cases + # 지금 같은 단위 후보 0 인 빈 줄 — 후보 단위가 줄 단위와 같은 성격(g ↔ kg 등)일 때만 + # 검색어로(값이 생김 · 금액 바뀜 · 줄마다 보고) · 성격이 다르면 빈칸 그대로 + probe = {**base, "검색어": _root(item.get("이름"))} + got = mp.search(master, probe, mau.values(master, row), unit) + if not got or not mp.same_kind(master.get(got[0])["단위"], unit): + return None, cases + name = _core(master.get(got[0]))[0] + return {**base, "검색어": name}, cases if len(targets) == 1: want = master.get(next(iter(targets))) name, *spec = _core(want) diff --git a/resources/master_data/로직_건설품셈_09장_미장공사.json b/resources/master_data/로직_건설품셈_09장_미장공사.json index 60280994..39b1558a 100644 --- a/resources/master_data/로직_건설품셈_09장_미장공사.json +++ b/resources/master_data/로직_건설품셈_09장_미장공사.json @@ -475,7 +475,7 @@ }, { "종류": "재료", - "요소": {"구분": "도료·방수·접착", "상세구분": "접착·혼화"}, + "요소": {"구분": "도료·방수·접착", "상세구분": "접착·혼화", "검색어": "무수축혼화제"}, "이름": "혼화제", "단위": "g", "수량": "만약(혼화제 == '씀', 찾기(QC001356, 구분='혼화제').수량, 0)",