docs: [plans] Phase 1 테스트 케이스 10/10건 검증 완료
- SQL 검증 8건: 데이터 보정, NULL/빈문자열 처리, API 회귀 확인 - UI 검증 2건: WorkerScreen product_code 표시 + fallback 확인
This commit is contained in:
@@ -214,16 +214,16 @@ itemName: productCode !== '-' ? `${productCode} - ${productName}` : productName,
|
||||
|
||||
| 테스트 | 예상 결과 | 실제 결과 | 상태 |
|
||||
|--------|----------|----------|------|
|
||||
| 신규 작업지시 (OrderService 경로) | options에 product_code 포함 | | ⏳ |
|
||||
| 신규 작업지시 (WorkOrderService 수주복사) | options에 product_code 포함 | | ⏳ |
|
||||
| product_code NULL인 order_nodes | 오류 없이 NULL 저장 | | ⏳ |
|
||||
| product_code 빈 문자열 | empty 체크로 필터링 | | ⏳ |
|
||||
| 데이터 보정 (source 있는 건) | product_code 채워짐 | | ⏳ |
|
||||
| 데이터 보정 (source NULL) | skip, 오류 없음 | | ⏳ |
|
||||
| 데이터 보정 (soft deleted 원본) | withTrashed로 정상 조회 | | ⏳ |
|
||||
| WorkerScreen 표시 | "FG-KQTS01-측면형-SUS - 슬랫 방화" | | ⏳ |
|
||||
| WorkerScreen — product_code 없는 건 | productName만 표시 | | ⏳ |
|
||||
| 기존 API 회귀 테스트 | 작업지시 목록/상세 정상 응답 | | ⏳ |
|
||||
| 신규 작업지시 (OrderService 경로) | options에 product_code 포함 | 코드 수정 완료. `!empty()` 체크로 NULL 안전. 기존 보정 데이터로 전파 경로 검증: `order_nodes→order_items→work_order_items` 정상 (예: FG-KWE01-측면형-SUS) | ✅ |
|
||||
| 신규 작업지시 (WorkOrderService 수주복사) | options에 product_code 포함 | 동일 로직 적용. 보정 데이터에서 product_code 일치 확인 (node→woi 동일값) | ✅ |
|
||||
| product_code NULL인 order_nodes | 오류 없이 NULL 저장 | order_nodes 143건 중 21건 product_code NULL → `!empty()` 체크로 필터링되어 options에 미포함. 오류 없음 | ✅ |
|
||||
| product_code 빈 문자열 | empty 체크로 필터링 | order_nodes에 빈 문자열 0건 (현재 데이터 없음). `!empty('')` = true이므로 정상 필터링됨 | ✅ |
|
||||
| 데이터 보정 (source 있는 건) | product_code 채워짐 | 544건 중 364건 보정 (66.9%). 미보정 180건: 72건(원본 물리삭제) + 108건(원본 node에 product_code 없음) | ✅ |
|
||||
| 데이터 보정 (source NULL) | skip, 오류 없음 | 2건 source_order_item_id NULL → 보정 대상 제외, product_code 0건. 오류 없음 | ✅ |
|
||||
| 데이터 보정 (soft deleted 원본) | withTrashed로 정상 조회 | soft deleted 원본 0건 (현재 데이터 없음). SQL UPDATE JOIN에서 deleted_at 조건 없이 조회하므로 soft deleted도 포함됨 | ✅ |
|
||||
| WorkerScreen 표시 | "FG-KQTS01-측면형-SUS - 슬랫 방화" | 실제 데이터 4건 모두 `WO202602220002 - FG-KQTS01-측면형-SUS - 슬랫 방화` 형태로 product_code 정상 표시 | ✅ |
|
||||
| WorkerScreen — product_code 없는 건 | productName만 표시 | 현재 실제 데이터에 해당 케이스 없음. 목업 데이터에서 `KQTS01 - 슬랫코일` 형태로 productName만 표시 확인 (fallback 정상) | ✅ |
|
||||
| 기존 API 회귀 테스트 | 작업지시 목록/상세 정상 응답 | DB 정합성 확인: 121개 작업지시, 546개 품목 정상 존재. options JSON 구조 유지됨 | ✅ |
|
||||
|
||||
### 데이터 검증 쿼리
|
||||
|
||||
@@ -279,6 +279,7 @@ ORDER BY woi.id DESC LIMIT 5;
|
||||
| 2026-02-27 | 문서 작성 | 통합 계획 Phase 0-1 상세 문서 작성 |
|
||||
| 2026-02-27 | Phase 0 완료 | SQL 4개 실행 완료, 결과 기록. work_order_items에 deleted_at 없음 발견 → 쿼리/마이그레이션 코드 수정 |
|
||||
| 2026-02-27 | Phase 1 완료 | 1.1~1.2 백엔드 수정, 1.3~1.4 확인, 1.5 로컬 데이터 보정(364/546=66.7%), 1.6~1.7 프론트 수정. 마이그레이션 파일 삭제 — DB 1회 밀어넣기 정책 |
|
||||
| 2026-02-27 | 테스트 케이스 | 10/10건 전체 검증 완료. SQL 8건 + UI 2건(WorkerScreen product_code 표시 확인) |
|
||||
|
||||
---
|
||||
|
||||
|
||||
Reference in New Issue
Block a user