2.0 KiB
2.0 KiB
공정관리 공정 복제(복사) 기능 추가
날짜: 2026-03-21 작업자: Claude Code
변경 개요
공정 상세 페이지에서 기존 공정을 그대로 복제하는 기능을 추가한다. 하단 액션 바의 수정 버튼 왼쪽에 복사 버튼을 배치하며, 클릭 시 기본정보·분류규칙·품목연결·공정단계를 모두 복제한 새 공정을 생성한다.
수정된 파일
| 파일 | 변경 내용 |
|---|---|
api/app/Services/ProcessService.php |
duplicate() 메서드 추가 (공정+규칙+품목+단계 복제) |
api/app/Http/Controllers/V1/ProcessController.php |
duplicate() 액션 추가 |
api/routes/api/v1/production.php |
POST /processes/{id}/duplicate 라우트 등록 |
react/src/components/process-management/actions.ts |
duplicateProcess() 서버 액션 추가 |
react/src/components/process-management/ProcessDetail.tsx |
복사 버튼 UI 추가 (수정 버튼 왼쪽) |
상세 변경 사항
1. API 엔드포인트
POST /api/v1/processes/{id}/duplicate
| 항목 | 내용 |
|---|---|
| 인증 | Bearer Token 필수 |
| 파라미터 | id (복제 대상 공정 ID) |
| 응답 | 새로 생성된 공정 데이터 (관계 포함) |
2. 복제 대상
| 항목 | 복제 여부 | 비고 |
|---|---|---|
| 기본정보 | O | 공정명에 "(복사)" 접미사 추가 |
| 공정코드 | 신규 | generateProcessCode()로 새 코드 자동 생성 |
| 분류규칙 (pattern) | O | process_classification_rules 전체 복제 |
| 품목연결 (individual) | O | process_items 전체 복제 |
| 공정단계 | O | process_steps 전체 복제 (순서·옵션 포함) |
3. UI 변경
하단 sticky 액션 바 버튼 순서:
[목록으로] [삭제] [복사] [수정]
Copy아이콘 사용 (lucide-react)- 복사 중 로딩 상태 표시 (
isDuplicating) - 복사 완료 시 새 공정 상세 페이지로 이동
관련 문서
- 공정관리 라우트:
api/routes/api/v1/production.php