Files
sam-docs/changes/20260321_process_duplicate_feature.md

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