Files
sam-docs/projects/5130-migration/MASTER_PLAN.md
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

6.4 KiB

5130 → SAM 품목 마이그레이션 마스터 플랜

프로젝트: 5130 품목(부품, 자재, BOM) 데이터를 SAM API/MNG DB로 이전 시작일: 2025-12-21 목표: 5130의 item 관련 데이터를 SAM 구조에 맞게 마이그레이션


1. 프로젝트 개요

1.1 배경

  • 5130(경동기업 레거시)과 SAM(신규 ERP)의 DB 구조가 상이
  • 수작업 데이터 입력은 불가능한 데이터 볼륨
  • 구조 분석 → 매핑 → 마이그레이션 전략 필요

1.2 핵심 원칙

원칙 설명
분석 우선 양쪽 구조를 완벽히 파악 후 작업
문서화 필수 모든 매핑/변환 규칙 문서화
반복 검증 테스트 마이그레이션 → 수정 → 재시도
롤백 가능 실패 시 복구 가능한 전략

1.3 대상 테이블 (5130)

테이블 설명 우선순위
items 품목 기본 정보 🔴 필수
item_sections 품목 섹션 🔴 필수
item_pages 품목 페이지 🟡 중요
item_id_mappings ID 매핑 관계 🟡 중요
item_fields 필드 정의 🔴 필수
item_details 품목 상세 데이터 🔴 필수
item_bom_items BOM 구성 🔴 필수
entity_relationships 엔티티 관계 🟡 중요

2. 작업 Phase 정의

Phase 1: 소스 분석 (5130) 🔵 진행중

목표: 5130 DB 구조 완벽 파악

체크리스트:

  • 5130/docs 문서 확인
  • Item 관련 테이블 스키마 조회 (DB 직접)
  • 테이블 간 관계도 작성
  • 데이터 샘플 확인
  • 데이터 볼륨 파악

산출물: phase-1-source-analysis/

  • 5130-item-schema.md - 테이블 스키마
  • 5130-item-relations.md - 테이블 관계도
  • 5130-data-samples.md - 데이터 샘플

Phase 2: 타겟 분석 (SAM) 대기

목표: SAM API/MNG DB 구조 파악

체크리스트:

  • api/docs 문서 확인
  • SAM items 테이블 스키마 확인
  • API 엔드포인트 구조 확인
  • Multi-tenant 구조 파악

산출물: phase-2-target-analysis/

  • sam-item-schema.md
  • sam-api-endpoints.md

Phase 3: 매핑 설계 대기

목표: 5130 → SAM 변환 규칙 정의

체크리스트:

  • 필드 매핑 테이블 작성
  • 타입 변환 규칙 정의
  • 관계 매핑 정의
  • 누락/추가 필드 식별
  • 데이터 변환 함수 설계

산출물: phase-3-mapping/

  • field-mapping.md - 필드 매핑 테이블
  • transform-rules.md - 변환 규칙
  • gap-analysis.md - Gap 분석

Phase 4: 마이그레이션 개발 대기

목표: 마이그레이션 스크립트 개발

체크리스트:

  • 마이그레이션 스크립트 설계
  • 순서 결정 (의존성 기반)
  • 검증 쿼리 작성
  • 롤백 스크립트 작성

산출물: phase-4-migration/

  • migration-order.md
  • scripts/ (마이그레이션 스크립트)
  • validation/ (검증 쿼리)

Phase 5: 실행 및 검증 대기

목표: 실제 마이그레이션 및 검증

체크리스트:

  • 테스트 환경 마이그레이션
  • 데이터 정합성 검증
  • 오류 수정 및 재시도
  • 최종 마이그레이션
  • 완료 리포트 작성

산출물: FINAL_REPORT.md


3. 참조 정보

3.1 5130 시스템

DB명: chandj
엔진: MySQL 8.0
PHP: 7.3
도메인: 5130.co.kr, 5130.sam.kr (개발)
회사: 경동기업, 주일철강

3.2 SAM 시스템

Framework: Laravel 12
PHP: 8.4+
Multi-tenant: tenant_id 기반
DB: items 테이블 (products + materials 통합 완료)

3.3 주요 문서

  • 5130: 5130/docs/DATABASE.md, MODULES.md, README.md
  • SAM: api/docs/, docs/guides/PROJECT_DEVELOPMENT_POLICY.md
  • 워크플로우: docs/guides/common-workflow-framework.md

4. 문서 구조

docs/projects/5130-migration/
├── MASTER_PLAN.md              # 이 문서
├── PROGRESS.md                 # 진행 상황 추적
│
├── phase-1-source-analysis/    # 🔵 진행중
│   ├── README.md
│   ├── 5130-item-schema.md
│   ├── 5130-item-relations.md
│   └── 5130-data-samples.md
│
├── phase-2-target-analysis/    # ⚪ 대기
│   ├── README.md
│   ├── sam-item-schema.md
│   └── sam-api-endpoints.md
│
├── phase-3-mapping/            # ⚪ 대기
│   ├── README.md
│   ├── field-mapping.md
│   ├── transform-rules.md
│   └── gap-analysis.md
│
├── phase-4-migration/          # ⚪ 대기
│   ├── README.md
│   ├── migration-order.md
│   ├── scripts/
│   └── validation/
│
└── FINAL_REPORT.md

5. 세션 영속성

5.1 Serena 메모리

5130-migration-state    → 현재 phase, task, 다음 액션
5130-migration-context  → 분석 결과, 결정사항, 참조

5.2 세션 복구

  1. serena.list_memories() → 상태 확인
  2. PROGRESS.md → 상세 진행상황
  3. "다음 액션"부터 재개

5.3 업데이트 시점

시점 행동
세션 시작 read_memory(state) → 이어서 진행
Phase 완료 write_memory(state) + PROGRESS.md
중요 발견 write_memory(context)
세션 종료 양쪽 최종 저장

6. 작업 프로세스

6.1 기본 원칙 (common-workflow-framework 참조)

  • 분석 작업: 분석 → 문서화 → 확인
  • 마이그레이션: 설계 → 개발 → 테스트 → 수정 (반복)

6.2 단계별 프로세스

Phase 유형 프로세스
1-2 분석 조사 → 문서화 → 검토
3 설계 매핑 → 규칙정의 → 검토
4 개발 스크립트 → 테스트 → 수정
5 실행 마이그레이션 → 검증 → 수정 (반복)

7. 현재 상태

7.1 Phase 1 진행 현황

  • 5130/docs 문서 확인 완료
  • ⚠️ Item 테이블 스키마가 문서에 없음 → DB 직접 조회 필요
  • 다음 액션: 5130 DB에서 Item 테이블 스키마 조회

7.2 발견 사항

  • 5130/docs에는 output, estimate, instock, eworks 등 업무 테이블만 문서화
  • Item 관련 8개 테이블은 문서 미작성 → 실제 DB에서 직접 분석 필요

변경 이력

날짜 변경 내용 작성자
2025-12-21 초기 마스터 플랜 작성 Claude