diff --git a/INDEX.md b/INDEX.md index 6fde46d..0d3930e 100644 --- a/INDEX.md +++ b/INDEX.md @@ -24,6 +24,7 @@ | 견적관리 | `features/quotes/README.md` | 견적 시스템, BOM 계산 | | 급여관리 API | `frontend/api-specs/payroll-api.md` | 급여관리 API 전체 명세 (18개 엔드포인트) | | 바로빌 회계 API | `frontend/api-specs/barobill-api.md` | 카드/은행/홈택스 REST API (42개 엔드포인트) | +| 재공품 생산 정책 | `rules/wip-production-policy.md` | 재공품(WIP) 개념, 제조업 공통 패턴, SAM 처리 방식 | | 재고생산관리 API | `frontend/api-specs/stock-production-api.md` | 재고생산 API 명세 (기존 수주 API + STOCK 타입) | | 결재관리 | `dev/dev_plans/approval-system-unification-plan.md` | MNG→API 결재 통합 계획 | | API 품질 | `system/api-code-quality-audit.md` | 정석 패턴 R1~R6, 안티패턴, 보안, 체크리스트 | @@ -139,6 +140,7 @@ DB 도메인별: | [pricing-policy.md](rules/pricing-policy.md) | 단가 정책 | | [numbering-rules.md](rules/numbering-rules.md) | 채번 규칙 | | [client-policy.md](rules/client-policy.md) | 고객사 관리 정책 | +| [wip-production-policy.md](rules/wip-production-policy.md) | 재공품(WIP) 생산 정책 (개념, MTS/MTO/ATO, 제조업 공통 패턴) | | [billing-policy.md](rules/billing-policy.md) | 과금 정책 (CONFIDENTIAL) | | [customer-pricing.md](rules/customer-pricing.md) | 고객 요금표 | | [partner-commission.md](rules/partner-commission.md) | 영업파트너 수당 체계 | diff --git a/rules/wip-production-policy.md b/rules/wip-production-policy.md new file mode 100644 index 0000000..43a90ab --- /dev/null +++ b/rules/wip-production-policy.md @@ -0,0 +1,326 @@ +# 재공품(WIP) 생산 정책 + +> **작성일**: 2026-03-16 +> **상태**: 설계 확정 + +--- + +## 1. 개요 + +### 1.1 목적 + +제조업에서 **재공품(WIP, Work-In-Process)** 생산이 왜 필요하고, SAM 시스템에서 어떻게 처리하는지 정의한다. + +### 1.2 대상 독자 + +- SAM을 도입하는 모든 제조업체 +- 시스템 운영자 및 생산관리 담당자 +- 개발팀 (기능 설계 시 참고) + +--- + +## 2. 재공품이란 + +### 2.1 정의 + +재공품(WIP)은 **완성품이 되기 전 단계의 중간 생산물**이다. + +블라인드/스크린 제조업에서는 절곡 가공된 **가이드레일, 케이스, 마구리, 바텀바** 등이 대표적인 재공품이다. 이 부품들은 최종 제품(블라인드)에 조립되기 전까지는 재공품 상태로 재고에 보관된다. + +``` +원자재 (알루미늄 코일, 철판 등) + ↓ 절곡 가공 +재공품 (가이드레일, 케이스, 바텀바 등) ← 이 단계 + ↓ 조립 +완성품 (블라인드, 스크린) + ↓ 출하 +고객 납품 +``` + +### 2.2 재공품 vs 완성품 vs 원자재 + +| 구분 | 설명 | 예시 | +|------|------|------| +| **원자재** | 가공 전 소재 | 알루미늄 코일, 철판, SUS판 | +| **재공품 (WIP)** | 가공 완료, 조립 전 | 가이드레일, 케이스, 바텀바, 마구리 | +| **완성품** | 출하 가능 상태 | 완성된 블라인드, 스크린 | + +--- + +## 3. 왜 재공품을 미리 만드는가 + +### 3.1 제조업의 현실 + +모든 제조업에는 **수주가 몰리는 성수기**와 **한가한 비수기**가 존재한다. + +``` +┌────────────────────────────────────────────────┐ +│ 수주량 │ +│ ▲ │ +│ │ ╱╲ ╱╲ │ +│ │ ╱╲ ╱ ╲ ╱ ╲ ╱╲ │ +│ │╱ ╲╱ ╲╱ ╲╱ ╲ │ +│ └──────────────────────────── ▶ 시간 │ +│ 비수기 성수기 비수기 성수기 │ +│ │ +│ ✕ 비수기: 작업자 유휴 → 인건비 낭비 │ +│ ✕ 성수기: 작업 폭주 → 납기 지연 │ +└────────────────────────────────────────────────┘ +``` + +### 3.2 재공품 미리 생산의 효과 + +``` +┌─────────────────────────────────────────────────┐ +│ │ +│ ① 유휴시간 활용 │ +│ 비수기에 작업자들이 놀지 않고 재공품 생산 │ +│ → 인건비 대비 생산성 향상 │ +│ │ +│ ② 납기 단축 │ +│ 수주가 들어오면 이미 만들어둔 재공품 사용 │ +│ → 절곡 가공 시간 절약 → 납기 3~5일 단축 │ +│ │ +│ ③ 생산 평준화 │ +│ 성수기 작업 부하를 비수기로 분산 │ +│ → 잔업/야근 감소 → 품질 안정 │ +│ │ +│ ④ 긴급 수주 대응 │ +│ 재고가 있으면 긴급 주문도 즉시 대응 가능 │ +│ → 고객 만족도 향상 → 수주 확보 │ +│ │ +└─────────────────────────────────────────────────┘ +``` + +### 3.3 어떤 품목을 미리 만드는가 + +모든 재공품을 무작정 만들지는 않는다. **다음 조건에 해당하는 품목**만 미리 생산한다: + +| 조건 | 설명 | 예시 | +|------|------|------| +| **규격 표준화** | 사이즈/재질이 정해져 있음 | 가이드레일 2438mm, 3000mm | +| **수요 빈도 높음** | 자주 출고되는 품목 | 주력 제품의 핵심 부품 | +| **가공 시간 김** | 만들기 시간이 오래 걸림 | 절곡 가공 (절단→벤딩→용접) | +| **보관 용이** | 장기 보관해도 품질 저하 없음 | 금속 부품 (부식 방지 처리 완료) | + +> **주의**: 주문 제작품(고객 맞춤 사이즈)은 재공품 대상이 아니다. 표준 규격품만 해당한다. + +--- + +## 4. SAM 시스템에서의 처리 방식 + +### 4.1 설계 원칙 + +SAM은 **수주 → 생산지시 → 작업지시 → 생산**의 흐름으로 동작한다. 수주가 없으면 생산지시를 생성할 수 없는 구조이다. + +재공품 생산은 수주가 없지만 생산이 필요한 경우이므로, **내부 오더(Internal Order)** 개념을 도입하여 해결한다. + +``` +일반 수주: 고객 주문 → 수주 등록 → 생산지시 → 작업지시 → 생산 +재공품 생산: (주문 없음) → 재고생산 등록 → 생산지시 → 작업지시 → 생산 + ↑ + 내부 오더 (order_type_code = 'STOCK') +``` + +### 4.2 기존 테이블 공유 + +재공품 생산을 위해 별도 테이블을 만들지 않는다. 기존 `orders` 테이블에 `order_type_code = 'STOCK'`을 추가하여 구분한다. + +``` +orders 테이블 +├── ORDER → 고객 수주 (거래처 주문) +├── PURCHASE → 발주 (자재 구매) +└── STOCK → 재고생산 (내부 오더, 재공품) +``` + +**이유**: +- 하류 시스템(작업지시, 생산, 품질검사, 출하)을 **변경 없이** 재활용 +- 생산 통계에 재공품 생산량도 **자동 포함** +- 이력 관리(누가, 언제, 얼마나 재공품을 생산했는지) **기존 구조로 추적** + +### 4.3 재공품 생산 흐름 + +``` +┌─────────────────────────────────────────────────┐ +│ │ +│ 1. 재고생산 등록 │ +│ ├─ 품목 선택 (이미 정해진 재공품) │ +│ ├─ 수량 입력 │ +│ ├─ 생산 사유 입력 (선택) │ +│ └─ order_type_code = 'STOCK' 자동 설정 │ +│ │ +│ 2. 재고생산 확정 │ +│ ├─ 상태: DRAFT → CONFIRMED │ +│ └─ ※ 매출 생성 안 함 (내부 오더이므로) │ +│ │ +│ 3. 생산지시 생성 │ +│ ├─ 절곡 공정 자동 선택 │ +│ ├─ 현장명 = '재고생산' 자동 설정 │ +│ ├─ 작업예정일 = 오늘 날짜 │ +│ └─ 작업지시(WorkOrder) 생성 │ +│ │ +│ 4. 절곡 작업 수행 │ +│ ├─ 작업자가 절곡 공정 수행 │ +│ ├─ 자재 투입 기록 │ +│ ├─ 중간검사 │ +│ └─ 작업 완료 처리 │ +│ │ +│ 5. 재고 입고 │ +│ ├─ 완성된 재공품 → 재고(Stock Lot) 등록 │ +│ └─ 향후 수주 시 재고에서 출고 │ +│ │ +└─────────────────────────────────────────────────┘ +``` + +### 4.4 일반 수주와의 차이 + +| 항목 | 일반 수주 | 재공품 생산 | +|------|----------|-----------| +| 트리거 | 고객 주문 | 생산 계획 (유휴시간 활용) | +| 거래처 | 있음 | 없음 (내부 오더) | +| 견적 | 있음 (선택) | 없음 | +| 납기 | 고객 요청일 | 없음 (가능한 빨리) | +| 공정 선택 | BOM 기반 자동 매칭 | 절곡 공정 고정 | +| 금액/매출 | 계산 + 매출 인식 | 없음 | +| 현장명 | 고객 현장 | '재고생산' 고정 | +| 채번 | `ORD20260316xxxx` | `STK20260316xxxx` | +| 생산 결과 | 고객 출하 | 재고 입고 | + +--- + +## 5. 재공품 재고 관리 + +### 5.1 재공품 재고의 생명주기 + +``` +재공품 생산 완료 + ↓ +재고 입고 (Stock Lot 생성) + ↓ +재고 보관 (창고/적재대) + ↓ +수주 접수 → 재고 확인 + ↓ +재고에서 출고 → 조립 → 완성품 + ↓ +고객 출하 +``` + +### 5.2 재고 확인 시점 + +수주가 들어오면 시스템에서 **해당 재공품이 재고에 있는지 자동 확인**한다: + +- **재고 있음** → 절곡 공정 스킵, 바로 조립 단계로 이동 → 납기 단축 +- **재고 없음** → 일반 생산 흐름 (절곡 공정부터 시작) + +### 5.3 안전재고와 목표 수량 + +재고생산 등록 시 `목표 재고 수량(target_stock_qty)`을 설정할 수 있다. + +| 항목 | 설명 | +|------|------| +| 목표 재고 수량 | 이 수량만큼 재고를 유지하고 싶은 목표 | +| 현재 재고 수량 | Stock Lot에서 조회 | +| 생산 필요 수량 | 목표 - 현재 = 부족분 | + +--- + +## 6. 제조업 공통 패턴 + +### 6.1 Make-to-Stock (MTS) vs Make-to-Order (MTO) + +SAM 시스템은 기본적으로 **MTO(주문생산)** 방식이다. 재공품 생산은 **MTS(재고생산)** 방식을 부분적으로 도입한 것이다. + +| 전략 | 설명 | SAM 적용 | +|------|------|----------| +| **MTO** (주문생산) | 수주 → 생산 | 일반 수주 (`ORDER`) | +| **MTS** (재고생산) | 예측 → 생산 → 재고 | 재고생산 (`STOCK`) | +| **ATO** (주문조립) | 재공품 재고 + 수주 → 조립 | MTS + MTO 결합 | + +블라인드/스크린 제조에서는 **ATO 패턴**이 가장 효율적이다: + +``` +MTS: 표준 재공품 미리 생산 (절곡) + ↓ +ATO: 수주 → 재공품 + 맞춤 부품 → 조립 → 출하 + ↓ + 납기 단축 + 유휴시간 활용 +``` + +### 6.2 다른 제조업 적용 사례 + +재공품 생산은 블라인드/스크린에 국한되지 않는다. **모든 제조업**에서 동일한 패턴이 적용된다: + +| 업종 | 원자재 | 재공품 (WIP) | 완성품 | +|------|--------|-------------|--------| +| **블라인드/스크린** | 알루미늄 코일, 철판 | 가이드레일, 케이스, 바텀바 | 블라인드, 스크린 | +| **가구** | 목재, MDF | 재단된 판재, 엣지밴딩 부품 | 책상, 의자, 캐비닛 | +| **자동차** | 철강, 플라스틱 | 프레스 부품, 엔진 블록 | 자동차 | +| **전자제품** | PCB 원판, 칩 | 조립된 PCB, 하우징 | 스마트폰, TV | +| **식품** | 밀가루, 설탕 | 반죽, 소스 | 빵, 과자 | +| **의류** | 원단, 실 | 재단 원단, 염색 원단 | 완성 의류 | + +### 6.3 재공품 생산의 핵심 가치 + +``` +┌─────────────────────────────────────────────────┐ +│ │ +│ 💰 비용 절감 │ +│ 유휴 인건비를 생산으로 전환 │ +│ → 작업자가 놀지 않고 가치를 창출 │ +│ │ +│ ⏱️ 납기 단축 │ +│ 수주 → 즉시 조립 가능 (절곡 공정 스킵) │ +│ → 고객 만족도 향상 │ +│ │ +│ 📊 생산 평준화 │ +│ 성수기/비수기 작업량 균등화 │ +│ → 잔업 감소, 품질 안정 │ +│ │ +│ 🚀 경쟁력 확보 │ +│ 빠른 납기 = 수주 확보 │ +│ → 매출 증대 │ +│ │ +└─────────────────────────────────────────────────┘ +``` + +--- + +## 7. 주의사항 + +### 7.1 과잉 생산 방지 + +재공품을 너무 많이 만들면 **재고 비용 증가**와 **사장 재고(불용 재고)** 문제가 발생한다. + +| 위험 | 설명 | 대응 | +|------|------|------| +| 과잉 재고 | 수요보다 많이 생산 | 목표 수량 설정, 주기적 재고 점검 | +| 사장 재고 | 규격 변경/단종으로 사용 불가 | 표준 규격품만 대상, 수요 예측 기반 | +| 보관 비용 | 창고 공간 점유 | 적정 재고 수준 유지 | +| 품질 저하 | 장기 보관 시 녹/변색 | 보관 환경 관리, 선입선출(FIFO) | + +### 7.2 생산 대상 품목 선정 기준 + +``` +❌ 주문 맞춤 제작품 (고객 사이즈) +❌ 수요 불확실 품목 +❌ 원자재 가격 변동이 큰 품목 +❌ 보관이 어려운 품목 + +✅ 표준 규격품 (정해진 사이즈) +✅ 출고 빈도 높은 품목 +✅ 가공 시간이 긴 품목 +✅ 장기 보관 가능 품목 +``` + +--- + +## 관련 문서 + +- [재고생산관리 기능 설명](../features/sales/stock-production.md) +- [재고생산관리 API 명세](../frontend/api-specs/stock-production-api.md) +- [품목 정책](item-policy.md) + +--- + +**최종 업데이트**: 2026-03-16