4.1 KiB
4.1 KiB
COMPANY_11 테스트 데이터 정리 가이드
📋 개요
메뉴 복사 기능을 재테스트하기 위해 COMPANY_11의 복사된 데이터를 삭제하는 스크립트입니다.
⚠️ 중요 사항
- 보존되는 데이터: 권한 그룹(
authority_master,authority_sub_user), 사용자 정보(user_info) - 삭제되는 데이터: 메뉴, 화면, 레이아웃, 플로우, 코드
- 안전 모드:
cleanup_company_11_for_test.sql은 ROLLBACK으로 테스트만 가능 - 실행 모드:
cleanup_company_11_execute.sql은 즉시 COMMIT
🚀 실행 방법
방법 1: Docker 컨테이너에서 직접 실행 (권장)
# 1. 테스트 실행 (롤백 - 실제 삭제 안 됨)
cd /Users/kimjuseok/ERP-node
docker exec -i erp-node-db-1 psql -U postgres -d ilshin < db/scripts/cleanup_company_11_for_test.sql
# 2. 실제 삭제 실행
docker exec -i erp-node-db-1 psql -U postgres -d ilshin < db/scripts/cleanup_company_11_execute.sql
방법 2: DBeaver 또는 pgAdmin에서 실행
db/scripts/cleanup_company_11_for_test.sql파일 열기- 전체 스크립트 실행 (롤백되어 안전)
- 결과 확인 후
cleanup_company_11_execute.sql실행
방법 3: psql 직접 접속
# 1. 컨테이너 접속
docker exec -it erp-node-db-1 psql -U postgres -d ilshin
# 2. SQL 복사 붙여넣기
# (cleanup_company_11_execute.sql 내용 복사)
📊 삭제 대상
| 항목 | 테이블명 | 삭제 여부 |
|---|---|---|
| 메뉴 | menu_info |
✅ 삭제 |
| 메뉴 권한 | rel_menu_auth |
✅ 삭제 |
| 화면 정의 | screen_definitions |
✅ 삭제 |
| 화면 레이아웃 | screen_layouts |
✅ 삭제 |
| 화면-메뉴 할당 | screen_menu_assignments |
✅ 삭제 |
| 플로우 정의 | flow_definition |
✅ 삭제 |
| 플로우 스텝 | flow_step |
✅ 삭제 |
| 플로우 연결 | flow_step_connection |
✅ 삭제 |
| 코드 카테고리 | code_category |
✅ 삭제 |
| 코드 정보 | code_info |
✅ 삭제 |
| 권한 그룹 | authority_master |
❌ 보존 |
| 권한 멤버 | authority_sub_user |
❌ 보존 |
| 사용자 | user_info |
❌ 보존 |
🔍 삭제 순서 (외래키 제약 고려)
1. screen_layouts (화면 레이아웃)
2. screen_menu_assignments (화면-메뉴 할당)
3. screen_definitions (화면 정의)
4. rel_menu_auth (메뉴 권한)
5. menu_info (메뉴)
6. flow_step (플로우 스텝)
7. flow_step_connection (플로우 연결)
8. flow_definition (플로우 정의)
9. code_info (코드 정보)
10. code_category (코드 카테고리)
✅ 실행 후 확인
스크립트 실행 후 다음과 같이 표시됩니다:
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
✅ 삭제 완료!
남은 데이터:
- 메뉴: 0 개
- 화면: 0 개
- 권한 그룹: 1 개 (보존됨)
- 사용자: 1 개 (보존됨)
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
✨ 정리 완료! 메뉴 복사 테스트 준비됨
🧪 테스트 시나리오
-
데이터 정리
docker exec -i erp-node-db-1 psql -U postgres -d ilshin < db/scripts/cleanup_company_11_execute.sql -
메뉴 복사 실행
- 프론트엔드에서 원본 메뉴 선택
- "복사" 버튼 클릭
- 대상 회사: COMPANY_11 선택
- 복사 실행
-
복사 결과 확인
- COMPANY_11 사용자(copy)로 로그인
- 사용자 메뉴에 복사된 메뉴 표시 확인
- 버튼 클릭 시 모달 화면 정상 열림 확인
- 플로우 기능 정상 작동 확인
🔄 재테스트
재테스트가 필요하면 다시 정리 스크립트를 실행하세요:
# 빠른 재테스트
docker exec -i erp-node-db-1 psql -U postgres -d ilshin < db/scripts/cleanup_company_11_execute.sql
📝 참고
- 백업: 중요한 데이터가 있다면 먼저 백업하세요
- 권한: 사용자
copy와 권한 그룹복사권한은 보존됩니다 - 로그: 백엔드 로그에서 복사 진행 상황을 실시간으로 확인할 수 있습니다