Files
kent e217266376 docs: 5130 → SAM 품목 마이그레이션 문서 추가
- MASTER_PLAN.md: 마이그레이션 전체 계획
- PROGRESS.md: 진행 상황 및 최종 결과
- phase-1: 5130 소스 스키마 분석
- phase-2: SAM 타겟 스키마 분석
- phase-3: 필드 매핑 설계

마이그레이션 결과:
- 총 425건 품목 이관 완료 (models 18, parts 36, parts_sub 117, BDmodels 59, BOM 195)
- tenant_id: 287 (경동기업)

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-21 13:49:28 +09:00

5.9 KiB

5130 품목 테이블 스키마 분석

분석일: 2025-12-21 DB: chandj (MySQL 8.0)


1. 테이블 구조 개요

1.1 품목 관련 테이블

테이블 레코드 수 설명
models 18 제품 모델 (KSS01, KSE01 등)
parts 37 모델별 부품
parts_sub 134 부품별 세부 자재
item_list 9 품목 목록 (별도 용도)

1.2 계층 구조

models (제품 모델)
  └─ parts (부품) - model_id 참조
       └─ parts_sub (세부 자재) - part_id 참조

2. 테이블 상세 스키마

2.1 models (제품 모델)

필드 타입 NULL 설명
model_id int NO PRI 모델 ID
model_name varchar(255) NO 모델명 (KSS01, KSE01 등)
major_category enum('스크린','스라트') NO 대분류
finishing_type enum('SUS마감','EGI마감') NO 마감 유형
description text YES 설명
guiderail_type varchar(20) YES 가이드레일 유형
is_deleted tinyint(1) NO 삭제 여부
update_log text YES 변경 이력
created_at datetime YES 생성일
updated_at datetime YES 수정일

샘플 데이터:

model_id=12, model_name='KSS01', major_category='스크린', finishing_type='SUS마감'
model_id=14, model_name='KSE01', major_category='스크린', finishing_type='SUS마감'

2.2 parts (부품)

필드 타입 NULL 설명
part_id int NO PRI 부품 ID
model_id int NO MUL 모델 ID (FK → models)
part_name varchar(30) NO 부품명
spec varchar(50) YES 규격 (120*70 등)
unit varchar(15) YES 단위 (SET 등)
quantity int NO 수량
unitprice varchar(15) YES 단가
memo text YES 메모
img_url text YES 이미지 URL
is_deleted tinyint(1) YES 삭제 여부
created_at datetime YES 생성일
updated_at datetime YES 수정일

샘플 데이터:

part_id=49, model_id=12, part_name='상부브라켓', spec='120*70', unit='SET', quantity=1
part_id=50, model_id=12, part_name='하부브라켓', spec='60*40', unit='SET', quantity=2

2.3 parts_sub (세부 자재)

필드 타입 NULL 설명
subpart_id int NO PRI 세부 자재 ID
part_id int NO MUL 부품 ID (FK → parts)
subpart_name varchar(255) NO 자재명
quantity int NO 수량
material varchar(255) YES 재질 (SUS 1.2T 등)
bendSum varchar(15) YES 벤딩 합계
plateSum varchar(15) YES 판재 합계
finalSum varchar(15) YES 최종 합계
unitPrice varchar(15) YES 단가
computedPrice varchar(15) YES 계산 단가
lineTotal varchar(15) YES 라인 합계
image_url varchar(255) YES 이미지 URL
is_deleted tinyint(1) YES 삭제 여부
created_at datetime YES 생성일
updated_at datetime YES 수정일

샘플 데이터:

subpart_id=64, part_id=49, subpart_name='1차(전면)', quantity=1, material='SUS 1.2T'
subpart_id=65, part_id=49, subpart_name='2차(후면)', quantity=2, material='EGI 1.55T'

2.4 item_list (품목 목록)

필드 타입 NULL 설명
num int NO PRI 번호
item_name varchar(100) NO 품목명
col13 decimal(10,2) YES 가격
col60~col80 varchar(50) YES 추가 속성들

⚠️ 컬럼명이 col60~col80으로 되어 있어 의미 파악 필요


3. 관계도

┌─────────────────┐
│     models      │
│   (18 레코드)    │
│                 │
│ model_id (PK)   │
│ model_name      │
│ major_category  │
│ finishing_type  │
└────────┬────────┘
         │ 1:N
         ▼
┌─────────────────┐
│     parts       │
│   (37 레코드)    │
│                 │
│ part_id (PK)    │
│ model_id (FK) ──┤
│ part_name       │
│ spec            │
└────────┬────────┘
         │ 1:N
         ▼
┌─────────────────┐
│   parts_sub     │
│  (134 레코드)    │
│                 │
│ subpart_id (PK) │
│ part_id (FK) ───┤
│ subpart_name    │
│ material        │
└─────────────────┘

4. 데이터 특성

4.1 major_category (대분류)

  • 스크린 (Screen)
  • 스라트 (Slat)

4.2 finishing_type (마감 유형)

  • SUS마감 (스테인리스)
  • EGI마감 (아연도금)

4.3 material (재질) - parts_sub

  • SUS 1.2T, SUS 1.5T (스테인리스)
  • EGI 1.55T (아연도금)

5. 마이그레이션 고려사항

5.1 구조적 차이

5130 SAM 비고
3단계 계층 (models→parts→parts_sub) items + item_bom_items 구조 변환 필요
단순 FK 관계 entity_relationships 사용 관계 정의 방식 다름
고정 컬럼 JSON attributes 유연한 속성 저장

5.2 매핑 방향

  1. modelsitems (item_type='FG', 완제품)
  2. partsitems (item_type='PT', 부품)
  3. parts_subitems (item_type='RM', 원자재)
  4. parts → models 관계item_bom_items 또는 entity_relationships
  5. parts_sub → parts 관계item_bom_items 또는 entity_relationships

5.3 데이터 변환 필요 항목

  • major_categoryattributes.category 또는 별도 분류
  • finishing_typeattributes.finishing_type
  • materialattributes.material
  • 가격 필드들 (varchar) → decimal 변환