- erp-api-list.md: Phase 5 섹션 추가 (12개 API) - erp-api-detail.md: Phase 5 상세 스펙 추가 - 13. 사용자 초대 (5개): 목록, 발송, 수락, 취소, 재발송 - 14. 알림 설정 (3개): 조회, 수정, 일괄수정 - 15. 계정 관리 (4개): 탈퇴, 사용중지, 약관조회, 약관수정
214 lines
6.2 KiB
Markdown
214 lines
6.2 KiB
Markdown
# 견적(Quotation) 기능 개발 마스터 플랜
|
|
|
|
> **목표:** 5130 레거시 견적 기능을 SAM 시스템(mng + api)으로 이관
|
|
> **공통 정책:** [PROJECT_DEVELOPMENT_POLICY.md](../../guides/PROJECT_DEVELOPMENT_POLICY.md) 참조
|
|
> **최종 업데이트:** 2025-12-19
|
|
|
|
---
|
|
|
|
## 📋 프로젝트 개요
|
|
|
|
### 개발 흐름
|
|
|
|
```
|
|
Phase 1: 5130 견적 기능 분석
|
|
↓
|
|
Phase 2: mng 견적 수식 관리 분석
|
|
↓
|
|
Phase 3: mng 견적 기능 구현 (5130 수식 적용)
|
|
↓
|
|
Phase 4: 견적 API 개발
|
|
```
|
|
|
|
### 핵심 원칙
|
|
|
|
1. **기존 테이블 활용**: 새 테이블 임의 생성 금지, 기존 prices/products 등 활용
|
|
2. **5130 수식 정확 반영**: JS 파일 분석으로 모든 수식 누락 없이 이관
|
|
3. **품목기준관리 연동**: SAM 품목 데이터 기반으로 견적 산출
|
|
4. **단계별 문서화**: 세션 중단 시에도 이어서 작업 가능하도록 진행 상황 기록
|
|
|
|
---
|
|
|
|
## 📁 문서 구조
|
|
|
|
```
|
|
docs/projects/quotation/
|
|
├── MASTER_PLAN.md # 이 문서
|
|
├── PROGRESS.md # 진행 현황
|
|
├── screenshots/ # MES 프로토타입 화면 캡쳐
|
|
├── 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 | 비즈니스 로직 정리 |
|
|
|
|
**수식 분석 체크리스트:**
|
|
```markdown
|
|
각 수식 분석 시 필수 기록:
|
|
- [ ] 수식 이름/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 분석 결과
|
|
|
|
**UI 참조 (MES 프로토타입 화면 캡쳐):**
|
|
> 📁 경로: `docs/projects/quotation/screenshots/`
|
|
|
|
| 파일명 | 설명 |
|
|
|--------|------|
|
|
| `01-formula-list-main.png` | 견적수식 목록 메인 (기본정보 카테고리, 10개 수식) |
|
|
| `02-product-dropdown.png` | 제품 선택 드롭다운 (공통/스크린/철재/슬랫) |
|
|
| `03-category-management.png` | 분류 관리 (스크린/철재/전기부품/기타부자재) |
|
|
| `04-price-formula-management.png` | 단가 수식 관리 (그룹별 품목, 적용수식 설정) |
|
|
| `05-auto-quotation-input.png` | 자동 견적 산출 입력 (오픈사이즈, 옵션 선택) |
|
|
| `06-category-guiderail.png` | 가이드레일 카테고리 수식 (조회/계산식 타입) |
|
|
| `07-formula-add-modal.png` | 수식 추가 모달 (변수, 타입, 결과출력 설정) |
|
|
|
|
**캡쳐 화면 핵심 기능:**
|
|
- 13개 카테고리 (기본정보~장수산출)
|
|
- 44개 수식 (공통)
|
|
- 수식 타입: 입력값, 계산식, 조회
|
|
- 결과 타입: 변수저장, 품목/수량 출력
|
|
|
|
**산출물:**
|
|
| 파일 | 설명 |
|
|
|------|------|
|
|
| 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](../../guides/PROJECT_DEVELOPMENT_POLICY.md) - **DB 정책, 기술 스택, 코드 컨벤션, Phase 진행 방식**
|
|
|
|
### 견적 관련
|
|
- [docs/projects/mes/v1-analysis/quotation-analysis.md](../mes/v1-analysis/quotation-analysis.md) - MES 견적 분석
|
|
- [PROGRESS.md](./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 | Phase 3에 MES 프로토타입 화면 캡쳐 참조 추가 | Claude |
|
|
| 2025-12-19 | 공통 정책 분리, 견적 특화 내용만 유지 | Claude |
|
|
| 2025-12-19 | 초기 마스터 플랜 작성 | Claude | |