거래처 통합 관리(Partner) 개편 및 탭 분리 구현 계획

Goal Description

기존 Supplier(공급사) 모델 중심의 구조를 Partner(거래처) 통합 모델로 개편합니다. 이 과정에서 내부적으로 공급사(SUPPLIER)와 고객사(CUSTOMER)를 type으로 구분하여 관리하고, '거래처 관리' 메뉴 하위에 공급사 | 고객사 탭을 두어 별도의 페이지처럼 작동하도록 구성합니다. 또한 사용자가 요청하신 비밀번호(로그인용) 항목 추가주소(기본주소, 나머지주소) 분리를 반영합니다.

Proposed Changes

1. Database Migrations

2. Models

3. Filament Resources (UI/UX)

4. Tests & Seeders


Verification Plan

Automated Tests

Manual Verification

  1. 환경 설정 > 거래처 관리 메뉴 접근
  2. 공급사 | 고객사 탭 정상 분리 및 데이터 필터링 검증
  3. 신규 거래처 등록 시 '주소/나머지 주소' 작성 및 '비밀번호' 저장 정상 확인
  4. 기존에 생성된 바슈롬, 쿠퍼비전 등의 발주 데이터가 유실 없이 잘 연동되는지 확인

[기획] 향후 옴니채널 재고 할당(OMS) 상세 설계안

Goal Description

향후 상품 정보 대폭 수정 시 반영될 **[채널별 재고 할당 및 예약 주문 고도화]**에 대한 아키텍처 초안.

✔️ 현행 할당(/admin/allocations) 시스템의 한계점 분석 현재 시스템의 InventoryAllocation은 특정 위치(Warehouse)의 물리적 재고(Inventory) 레코드에 1:1로 결합된 allocated_qty(할당량) 방식을 띄고 있습니다. 이는 오프라인 창고 이동이나 재고 차감 시 락(Lock) 경합을 유발하고 수불 기록이 남지 않아 오류 추적이 불가능한 구조입니다.

따라서 기존의 복잡한 물리재고 종속형 누적 할당량을 완전히 폐기하고, 은행 통장 잔고(Running Balance) 모델과 수불부(Audit Trail) 개념을 도입하여 '일반 할당 재고(stock)'와 '예약 할당 재고(preorder_stock)' 모두를 완벽한 무결성으로 보장하는 새로운 재고 관리를 구현합니다.

Proposed Changes

1. 재고 모델: "통장 잔고(Running Balance)" 구조

채널별 재고 할당 테이블(channel_stocks)에는 증감 과정의 복잡한 내역 없이 오직 2개의 '현재 잔액(Balance)' 필드만 유지하여 직관성을 극대화합니다.

2. 수불부 모델: "거래 내역(Stock History)" 구조

사용자의 수기 조정, 주문에 의한 자동 차감, 취소에 의한 복구 등 **잔고가 변하는 모든 이벤트는 1원 단위까지 무조건 ChannelStockHistory 테이블에 기록(Insert Only)**됩니다.

3. API 및 Frontend 응답 제어 로직 (주문 상태 자동화)

4. 예약 주문(Pre-order) 처리 프로세스

Verification Plan

이 구조는 **기록의 영구성(수불부)**과 **동시성 제어(LockForUpdate)**를 통해 다중 채널 쇼핑몰 동시 주문 폭주 상황에서도 '초과 판매(Overselling)' 및 데이터 꼬임을 원천 차단하는 가장 무결한 아키텍처로 기능하게 됩니다.

← 문서 목록으로