수주 데이터 스키마 분석
분석 일시: 2024-12-18
소스: design/mes기획서_리액트/src/configs/orderMasterConfig.js
수주 유형 (entityTypes)
| ID |
코드 |
이름 |
설명 |
| 1 |
NORMAL |
일반수주 |
견적 기반 일반 수주 |
| 2 |
ADDITIONAL |
추가수주 |
기존 수주 추가분 |
| 3 |
DIRECT |
직접수주 |
견적 없이 직접 입력 |
제품 카테고리 (생산공정 분류)
| ID |
코드 |
이름 |
| 1 |
SCREEN |
스크린 |
| 2 |
FOLD |
절곡 |
| 3 |
SLAT |
슬랫 |
| 4 |
ASSY |
조립 |
섹션 구조 (masterSections)
| ID |
키 |
이름 |
타입 |
설명 |
| 1 |
basicInfo |
기본정보 |
general |
수주 기본 정보 |
| 2 |
deliveryInfo |
납품정보 |
general |
납품 관련 정보 |
| 3 |
itemInfo |
품목정보 |
multiRow |
수주 품목 목록 |
| 4 |
productionSpec |
제작사양 |
multiRow |
제작 상세 사양 |
| 5 |
amountInfo |
금액정보 |
general |
금액 합계 |
| 6 |
etcInfo |
기타정보 |
general |
기타 정보 |
필드 상세 (masterFields)
기본정보 (basicInfo)
| ID |
필드키 |
필드명 |
입력타입 |
필수 |
자동생성 |
설명 |
| 1 |
orderNo |
수주번호 |
text |
✅ |
✅ |
수주 식별 번호 |
| 2 |
orderDate |
수주일 |
date |
✅ |
- |
수주 등록일 |
| 3 |
quoteNo |
견적번호 |
text |
- |
- |
연결된 견적번호 |
| 4 |
customerName |
거래처명 |
text |
✅ |
- |
거래처명 |
| 5 |
customerId |
거래처ID |
text |
- |
- |
거래처 식별자 |
| 6 |
siteName |
현장명 |
text |
✅ |
- |
설치 현장명 |
| 7 |
manager |
담당자 |
text |
- |
- |
거래처 담당자 |
| 8 |
contact |
연락처 |
text |
- |
- |
담당자 연락처 |
납품정보 (deliveryInfo)
| ID |
필드키 |
필드명 |
입력타입 |
필수 |
옵션 |
| 10 |
dueDate |
납기일 |
date |
✅ |
- |
| 11 |
deliveryMethod |
배송방법 |
select |
- |
직접배차, 상차, 택배, 화물, 직접배송 |
| 12 |
deliveryAddress |
납품주소 |
text |
- |
- |
| 13 |
receiverName |
수령자명 |
text |
- |
- |
| 14 |
receiverPhone |
수령자연락처 |
text |
- |
- |
품목정보 (itemInfo) - 다중행
| ID |
필드키 |
필드명 |
입력타입 |
필수 |
옵션/검증 |
| 20 |
productCode |
품목코드 |
text |
- |
- |
| 21 |
productName |
품목명 |
select |
✅ |
국민방화스크린셔터, 방화셔터, 방연셔터 |
| 22 |
category |
카테고리 |
select |
- |
스크린, 절곡, 슬랫, 조립 |
| 23 |
floor |
층 |
text |
- |
- |
| 24 |
location |
위치 |
text |
- |
- |
| 25 |
openWidth |
개구폭(mm) |
number |
✅ |
min:500, max:15000 |
| 26 |
openHeight |
개구높이(mm) |
number |
✅ |
min:500, max:10000 |
| 27 |
qty |
수량 |
number |
✅ |
min:1 |
| 28 |
unitPrice |
단가 |
number |
- |
- |
| 29 |
amount |
금액 |
number |
- |
자동계산 |
제작사양 (productionSpec) - 다중행
| ID |
필드키 |
필드명 |
입력타입 |
자동계산 |
옵션 |
| 30 |
prodWidth |
제작폭(mm) |
number |
✅ |
개구폭+140 |
| 31 |
prodHeight |
제작높이(mm) |
number |
✅ |
MAX(개구높이+400, 2950) |
| 32 |
guideRailType |
가이드레일형태 |
select |
- |
백면형, 양면형, 편면형 |
| 33 |
guideRailSpec |
가이드레일규격 |
select |
- |
120-70, 150-80, 180-90 |
| 34 |
finish |
마감 |
select |
- |
SUS마감, 분체도장, 용융아연 |
| 35 |
shaft |
샤프트 |
number |
✅ |
폭>6000:5인치, 그외:4인치 |
| 36 |
capacity |
전동용량 |
number |
✅ |
폭>6000:300kg, 그외:160kg |
금액정보 (amountInfo)
| ID |
필드키 |
필드명 |
입력타입 |
자동계산 |
| 40 |
totalAmount |
총금액 |
number |
✅ (품목 금액 합계) |
기타정보 (etcInfo)
| ID |
필드키 |
필드명 |
입력타입 |
| 50 |
note |
비고 |
textarea |
자동계산 규칙 (calculations)
| 필드 |
수식 |
설명 |
| prodWidth |
openWidth + 140 |
제작폭 = 개구폭 + 140 |
| prodHeight |
MAX(openHeight + 400, 2950) |
제작높이 = MAX(개구높이+400, 2950) |
| shaft |
openWidth > 6000 ? 5 : 4 |
샤프트 인치 |
| capacity |
openWidth > 6000 ? 300 : 160 |
전동용량 kg |
| amount |
qty * unitPrice |
금액 = 수량 × 단가 |
| totalAmount |
SUM(items.amount) |
총금액 = 품목 금액 합계 |
페이지 템플릿
일반 수주 (order_normal)
- 경로:
/판매관리/수주_등록
- 유형: NORMAL
- 섹션: 기본정보 → 납품정보 → 품목정보 → 제작사양 → 금액정보 → 기타정보
추가 수주 (order_additional)
- 경로:
/판매관리/수주_추가
- 유형: ADDITIONAL
- 섹션: 기본정보(간소화) → 추가 품목 → 기타정보
API 엔드포인트 추정
수주 CRUD
관련 API
다음 분석 단계
- QuoteDetailNew.jsx, QuoteDocumentDialogs.jsx - UI 구조 및 액션
- App.jsx 수주 섹션 - 비즈니스 로직, 상태 관리