# Phase 4: 연동 작업 + 오류 수정

> **상태**: ⏳ 대기
> **선행 조건**: Phase 3 완료

---

## 목표

React 화면과 API 실제 연동 및 오류 해결

## ⚠️ 중요: "완료" 기준

**소스 코드가 존재한다고 "완료"가 아닙니다!**

### 완료 조건
1. ✅ API 실제 호출하여 정상 응답 확인
2. ✅ React 화면에서 데이터 정상 표시
3. ✅ CRUD 전체 동작 검증
4. ✅ 오류 없음 확인

### API 검증 방법
```bash
# 방법 1: Swagger UI
https://api.sam.kr/api-docs/index.html

# 방법 2: curl 직접 호출
curl -X GET "https://api.sam.kr/api/v1/clients" \
  -H "X-API-KEY: {api_key}" \
  -H "Authorization: Bearer {token}"

# 방법 3: React 화면에서 직접 확인
- 브라우저 개발자 도구 → Network 탭
- 콘솔 오류 확인
```

### 검증 체크리스트 (각 API별)
- [ ] GET (목록) - 200 응답, 데이터 정상
- [ ] GET (상세) - 200 응답, 상세 데이터 정상
- [ ] POST (생성) - 201 응답, 생성 성공
- [ ] PUT (수정) - 200 응답, 수정 반영
- [ ] DELETE (삭제) - 200 응답, 삭제 성공

---

## 체크리스트

> 각 항목은 **실제 API 호출 후 정상 응답 확인** 시에만 체크

### 인증/메뉴
- [ ] POST /v1/login - 로그인 API 호출 검증
- [ ] GET /v1/menus - 메뉴 목록 API 호출 검증
- [ ] GET /v1/permissions - 권한 API 호출 검증
- [ ] POST /v1/refresh - 토큰 갱신 API 호출 검증

### 품목 관리 (Items)
- [ ] GET /v1/items - 목록 조회 API 검증
- [ ] GET /v1/items/{id} - 상세 조회 API 검증
- [ ] POST /v1/items - 생성 API 검증
- [ ] PUT /v1/items/{id} - 수정 API 검증
- [ ] DELETE /v1/items/{id} - 삭제 API 검증
- [ ] GET /v1/items/{id}/bom - BOM 조회 API 검증
- [ ] POST /v1/items/{id}/files - 파일 업로드 API 검증

### 거래처/판매
- [ ] GET /v1/clients - 거래처 목록 API 검증
- [ ] POST /v1/clients - 거래처 생성 API 검증
- [ ] PUT /v1/clients/{id} - 거래처 수정 API 검증
- [ ] DELETE /v1/clients/{id} - 거래처 삭제 API 검증
- [ ] GET /v1/quotes - 견적 목록 API 검증
- [ ] POST /v1/quotes - 견적 생성 API 검증
- [ ] PUT /v1/quotes/{id} - 견적 수정 API 검증
- [ ] DELETE /v1/quotes/{id} - 견적 삭제 API 검증
- [ ] GET /v1/pricing - 단가 목록 API 검증
- [ ] POST /v1/pricing - 단가 생성 API 검증
- [ ] PUT /v1/pricing/{id} - 단가 수정 API 검증
- [ ] GET /v1/orders - 주문 목록 API 검증 (미구현 시 구현 필요)
- [ ] POST /v1/orders - 주문 생성 API 검증

### 인사/재무
- [ ] GET /v1/employees - 사원 목록 API 검증
- [ ] POST /v1/employees - 사원 생성 API 검증
- [ ] GET /v1/attendance - 근태 조회 API 검증
- [ ] POST /v1/attendance - 근태 등록 API 검증
- [ ] GET /v1/payroll - 급여 조회 API 검증
- [ ] GET /v1/deposits - 입금 조회 API 검증
- [ ] GET /v1/withdrawals - 출금 조회 API 검증

### 기타 기능
- [ ] GET /v1/boards - 게시판 목록 API 검증
- [ ] GET /v1/posts - 게시글 목록 API 검증
- [ ] GET /v1/dashboard - 대시보드 API 검증
- [ ] GET /v1/settings - 설정 API 검증
- [ ] GET /v1/reports - 보고서 API 검증

## 작업 프로세스

```
1. 페이지 접속
2. 콘솔/네트워크 오류 확인
3. API 응답 확인
4. 불일치 해결
5. 테스트
6. 로그 기록
```

## 이슈 관리

### 이슈 파일 생성
```
phase-4-integration/issues/
├── ISSUE-001.md
├── ISSUE-002.md
└── ...
```

### 이슈 템플릿
```markdown
# ISSUE-XXX: [제목]

## 상태: 🔴 Open

## 페이지
[경로]

## 증상
[설명]

## 원인
[분석]

## 해결
[방법]

## 변경 파일
- [ ] file1
- [ ] file2
```

## 산출물

- [ ] `integration-log.md` - 작업 로그
- [ ] `api-changes.md` - API 변경 내역
- [ ] `issues/ISSUE-*.md` - 이슈 문서

## 연동 로그 템플릿

```markdown
## [날짜] 연동 작업

### 완료
- 페이지: /items
- API: GET /items
- 결과: ✅ 정상

### 수정
- 페이지: /items/[id]
- API: GET /items/{id}
- 변경: category 필드 추가
- 파일: ItemResource.php

### 이슈
- ISSUE-001: 파일 업로드 실패
```

---

## 주의사항

1. **React 기준**: API가 React 요구사항에 맞춤
2. **시스템 구조 예외**: items 통합 등은 정책 기반
3. **문서화 필수**: 모든 변경사항 기록

---

*Phase 4 작업 시작 시 이 체크리스트를 업데이트하세요.*