Skip to main content

제품회수 관리

개요​

이 화면은 무엇인가요? 제품회수를 체계적으로 등록하고 관리하는 목록 화면입니다. 이 기록은 ISO 22716 제14장(불만 및 회수), 제16장(내부감사) 요구사항을 충족합니다.

누가 사용하나요?​

  • 📞 QA 담당자: 불만·감사 데이터를 등록하고 관리합니다
  • 👨‍💼 QA 매니저: 종결을 승인합니다
  • 👔 경영진: 회수 판단 및 규제보고를 승인합니다

언제 사용하나요?​

  • 소비자 불만 접수 시
  • 제품 회수(리콜) 결정 시
  • GMP 자체점검 수행 시

주요 기능​

1. 제품회수 등록 및 관리​

무엇을 하나요?: 제품회수 정보를 등록하고 상태를 관리합니다.

어떻게 사용하나요?:

  1. 화면에서 새로 만들기 버튼을 선택합니다
  2. 필수 항목을 입력합니다
  3. 관련 정보를 추가 입력합니다
  4. 저장 버튼을 클릭합니다

💡 팁: 필수 항목(✅ 표시)을 모두 입력해야 저장이 가능합니다.


업무 흐름에서의 위치​


입력 항목 가이드​

항목의미타입필수왜 필요한가
회수코드recall_codeVARCHAR✅-
일탈기록deviation_idUUIDdeviation_records 테이블 참조 (deviation_code 표시)
불만기록complaint_idUUIDcomplaint_records 테이블 참조 (complaint_code 표시)
회수등급recall_classClass_I / Class_II / Class_III✅-
회수사유recall_reasonTEXT✅-
제품명product_nameVARCHAR✅-
배치번호목록batch_numbersJSONB✅회수 대상 배치 목록
영향수량affected_quantityDECIMAL✅-
유통범위distribution_scopeTEXT✅-
유통채널distribution_channelsJSONB[{channel, region, quantity}]
회수개시일recall_initiated_dateDATE✅-
회수기한recall_deadlineDATE✅-
회수수량recovered_quantityDECIMAL-
회수율(%)recovery_rateDECIMAL자동 계산: recovered_quantity / affected_quantity * 100
처리방법disposal_method반품 / 폐기 / 재작업-
처리일disposal_dateDATE-
규제기관통보일regulatory_notification_dateDATE-
규제보고번호regulatory_report_numberVARCHAR-
근본원인root_causeTEXT-
예방조치preventive_actionTEXT-
담당자manager_idUUID✅시스템 users 테이블 참조
첨부파일attachmentFILE-
상태status개시 / 진행중 / 완료 / 종결✅-
확장데이터metadataJSONB-

자주 묻는 질문 (FAQ)​

Q. 이 화면의 데이터는 어떤 인증 심사에서 활용되나요?

ISO 22716 (화장품 GMP) 인증 심사, KGMP 자체점검, 거래처 감사 시 이 화면의 데이터가 증적 자료로 활용됩니다. 감사 추적(Audit Trail) 기능이 활성화되어 있으므로 데이터 변경 이력도 함께 제출할 수 있습니다.

Q. 데이터를 수정하면 이력이 남나요?

네, 이 화면은 감사 추적(Audit Trail) 기능이 활성화되어 있어 모든 변경 이력이 자동으로 기록됩니다. 수정 전/후 값, 수정자, 수정일시가 기록되어 규정 준수를 위한 증적으로 활용됩니다.


실무 시나리오​

시나리오: 제품회수 관리 신규 등록​

제품회수 관리 업무를 수행하기 위해 새 데이터를 등록합니다.

  1. 제품회수 관리 화면에서 새로 만들기를 선택합니다
  2. 필수 항목을 입력합니다
  3. 관련 참조 데이터를 선택합니다
  4. 입력 내용을 확인하고 저장합니다
  5. 필요 시 상태를 변경하고 후속 프로세스를 진행합니다

📋 기술 참고 정보 (개발자/관리자용)

테이블 정보​

product_recalls 테이블은 이 화면의 데이터를 저장합니다.

테이블 특성:

  • 사용자 연결 (created_by, updated_by 자동 생성)
  • 감사 추적 활성화
  • 인쇄 기능 지원

입력 항목 상세​

항목의미타입필수왜 필요한가
회수코드recall_codeVARCHAR✅-
일탈기록deviation_idUUIDdeviation_records 테이블 참조 (deviation_code 표시)
불만기록complaint_idUUIDcomplaint_records 테이블 참조 (complaint_code 표시)
회수등급recall_classClass_I / Class_II / Class_III✅-
회수사유recall_reasonTEXT✅-
제품명product_nameVARCHAR✅-
배치번호목록batch_numbersJSONB✅회수 대상 배치 목록
영향수량affected_quantityDECIMAL✅-
유통범위distribution_scopeTEXT✅-
유통채널distribution_channelsJSONB[{channel, region, quantity}]
회수개시일recall_initiated_dateDATE✅-
회수기한recall_deadlineDATE✅-
회수수량recovered_quantityDECIMAL-
회수율(%)recovery_rateDECIMAL자동 계산: recovered_quantity / affected_quantity * 100
처리방법disposal_method반품 / 폐기 / 재작업-
처리일disposal_dateDATE-
규제기관통보일regulatory_notification_dateDATE-
규제보고번호regulatory_report_numberVARCHAR-
근본원인root_causeTEXT-
예방조치preventive_actionTEXT-
담당자manager_idUUID✅시스템 users 테이블 참조
첨부파일attachmentFILE-
상태status개시 / 진행중 / 완료 / 종결✅-
확장데이터metadataJSONB-

데이터 관계​

참조받는 테이블​

  • 일탈기록 (1:N) 일탈→제품회수
  • 불만처리 (1:N) 불만→제품회수
  • 직원 (1:N) 직원→제품회수

화면 설정​

목록 컬럼​

컬럼렌더링고정정렬
회수코드link-✅
영향수량기본-✅
회수등급badge-✅
제품명기본-✅
회수사유기본-✅
상태badge-✅

필터 설정​

필드필터유형
회수코드search
회수등급select
상태select