feat(malaysia): 세트 BOM을 itemcode_db에서 읽고 입력을 그리드 일괄로 전환

- 세트구성(set_bom) 수동 관리 메뉴/라우트/API/템플릿 제거
- 세트 BOM은 itemcode_db set_components(set_code/single_code/quantity)에서
  읽음 (MalaysiaItemcodeReader, ITEMCODE_DB_URL 재사용)
- db.py: create_set_out/compute_result/finalize_stocktake 에 bom_map 주입식
- 입출고: 낱개 전체 그리드 일괄 등록 + 세트 출고 그리드(BOM 분해)
- 일일 재고조사: 낱개+세트 전체 그리드에 수량만 키인 → 일괄 저장
- malaysia_stock_db.set_bom 테이블은 레거시(미사용)

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
2026-06-11 15:35:42 +09:00
parent f137f2a6a6
commit 6b43d9926d
10 changed files with 395 additions and 465 deletions
+8
View File
@@ -32,6 +32,7 @@ __all__ = [
"explode_stocktake",
"missing_bom_sets",
"build_malaysia_store",
"build_malaysia_itemcode",
]
@@ -45,3 +46,10 @@ def build_malaysia_store(*, dsn: str | None) -> Any:
from .db import MalaysiaStockStore # 지연 import (개발 환경 deps 없을 수 있음)
return MalaysiaStockStore(dsn)
def build_malaysia_itemcode() -> Any:
"""itemcode_db 읽기 전용 세트 BOM 리더. ITEMCODE_DB_URL 없으면 비활성."""
from .itemcode import MalaysiaItemcodeReader # 지연 import
return MalaysiaItemcodeReader()