- 공통 정책 문서 신규 생성 (guides/PROJECT_DEVELOPMENT_POLICY.md) - DB 테이블 정책 (Hybrid EAV, options JSON) - 코드 컨벤션 (추측 금지 원칙) - Enum 지양 정책 (common_codes 테이블 활용) - Phase 진행 방식 및 세션/커밋 정책 - 견적 기능 개발 문서 생성 (projects/quotation/) - MASTER_PLAN.md: 4단계 개발 흐름 정의 - PROGRESS.md: 진행 현황 추적용
5.1 KiB
5.1 KiB
견적(Quotation) 기능 개발 마스터 플랜
목표: 5130 레거시 견적 기능을 SAM 시스템(mng + api)으로 이관 공통 정책: PROJECT_DEVELOPMENT_POLICY.md 참조 최종 업데이트: 2025-12-19
📋 프로젝트 개요
개발 흐름
Phase 1: 5130 견적 기능 분석
↓
Phase 2: mng 견적 수식 관리 분석
↓
Phase 3: mng 견적 기능 구현 (5130 수식 적용)
↓
Phase 4: 견적 API 개발
핵심 원칙
- 기존 테이블 활용: 새 테이블 임의 생성 금지, 기존 prices/products 등 활용
- 5130 수식 정확 반영: JS 파일 분석으로 모든 수식 누락 없이 이관
- 품목기준관리 연동: SAM 품목 데이터 기반으로 견적 산출
- 단계별 문서화: 세션 중단 시에도 이어서 작업 가능하도록 진행 상황 기록
📁 문서 구조
docs/projects/quotation/
├── MASTER_PLAN.md # 이 문서
├── PROGRESS.md # 진행 현황
├── phase-1-5130-analysis/ # 1단계: 5130 분석
│ ├── README.md
│ ├── ui-analysis.md
│ ├── js-formulas.md # ⚠️ 핵심: 수식 분석
│ ├── db-structure.md
│ └── business-logic.md
├── phase-2-mng-analysis/ # 2단계: mng 분석
│ ├── README.md
│ ├── current-state.md
│ └── issues.md
├── phase-3-implementation/ # 3단계: 구현
│ ├── README.md
│ ├── table-mapping.md
│ ├── formula-spec.md
│ └── implementation.md
└── phase-4-api/ # 4단계: API 개발
├── README.md
└── api-spec.md
📊 Phase 상세
Phase 1: 5130 견적 기능 분석
목표: 5130 레거시 견적 시스템 완전 분석 및 문서화
분석 대상:
- https://5130.sam.kr/estimate/list.php
- 관련 모든 PHP 파일
- ⚠️ 핵심: 모든 JS 파일 (수식 분석)
산출물:
| 파일 | 설명 |
|---|---|
| README.md | 체크리스트 및 요약 |
| ui-analysis.md | 화면별 기능 분석 |
| js-formulas.md | JS 수식 전체 분석 (핵심!) |
| db-structure.md | 테이블/컬럼 구조 |
| business-logic.md | 비즈니스 로직 정리 |
수식 분석 체크리스트:
각 수식 분석 시 필수 기록:
- [ ] 수식 이름/ID
- [ ] 입력 변수 목록
- [ ] 계산 공식 (수학적 표기)
- [ ] 출력 값 및 단위
- [ ] 예외 처리 조건
- [ ] 테스트 케이스 (입력 → 예상 출력)
Phase 2: mng 견적 수식 관리 분석
목표: 현재 mng 견적 기능 상태 파악 및 문제점 도출
분석 대상:
- https://mng.sam.kr/quote-formulas
- 관련 Filament 리소스
- 모델 및 마이그레이션
산출물:
| 파일 | 설명 |
|---|---|
| README.md | 체크리스트 및 요약 |
| current-state.md | 현재 구현 상태 |
| issues.md | 오류/문제점 목록 |
분석 포인트:
- 현재 수식 관리 기능 동작 여부
- 오류 및 버그 목록
- 5130과의 차이점
- 개선 필요 사항
Phase 3: mng 견적 기능 구현
목표: 5130 수식을 SAM 품목기준관리와 연동하여 구현
핵심 원칙:
- 5130 수식 정확히 반영
- SAM 기존 테이블 활용
- 품목기준관리 데이터 연동
참조 문서:
docs/projects/mes/v1-analysis/quotation-analysis.md- Phase 1 분석 결과 (js-formulas.md)
- Phase 2 분석 결과
산출물:
| 파일 | 설명 |
|---|---|
| README.md | 체크리스트 및 요약 |
| table-mapping.md | 테이블 매핑 (5130 → SAM) |
| formula-spec.md | 수식 명세 (SAM 버전) |
| implementation.md | 구현 상세 |
Phase 4: 견적 API 개발
목표: React 프론트엔드 연동을 위한 REST API 개발
산출물:
| 파일 | 설명 |
|---|---|
| README.md | 체크리스트 및 요약 |
| api-spec.md | API 명세 (Swagger) |
API 개발 원칙:
- SAM API Rules 준수
- Swagger 문서화 필수
- Multi-tenant 지원
- FormRequest 검증
🔗 참조 문서
공통 정책 (필독)
- PROJECT_DEVELOPMENT_POLICY.md - DB 정책, 기술 스택, 코드 컨벤션, Phase 진행 방식
견적 관련
- docs/projects/mes/v1-analysis/quotation-analysis.md - MES 견적 분석
- PROGRESS.md - 진행 현황
🚀 시작 명령어 예시
견적 기능 개발 Phase 1 시작:
1. 공통 정책 확인: docs/guides/PROJECT_DEVELOPMENT_POLICY.md
2. PROGRESS.md 확인
3. 5130 견적 페이지 분석 시작
- https://5130.sam.kr/estimate/list.php
- 관련 JS 파일 전체 분석
4. phase-1-5130-analysis/ 문서 작성
MCP: Sequential Thinking 적용
페르소나: root-cause-analyst (분석 단계)
📝 변경 이력
| 날짜 | 변경 내용 | 작성자 |
|---|---|---|
| 2025-12-19 | 공통 정책 분리, 견적 특화 내용만 유지 | Claude |
| 2025-12-19 | 초기 마스터 플랜 작성 | Claude |