diff --git a/WebContent/WEB-INF/view/partMng/structurePopupLeft.jsp b/WebContent/WEB-INF/view/partMng/structurePopupLeft.jsp index 07c1745..6e58b9b 100644 --- a/WebContent/WEB-INF/view/partMng/structurePopupLeft.jsp +++ b/WebContent/WEB-INF/view/partMng/structurePopupLeft.jsp @@ -479,7 +479,7 @@ function fn_uploadDrawingFiles(files) { msg += '- PDF: ' + filesByType['PDF'].length + '개'; Swal.fire({ - title: '도면 업로드', + title: '도면 다증 업로드', text: msg, icon: 'question', showCancelButton: true, @@ -596,7 +596,7 @@ function fn_processDrawingUpload(bomObjId, filesByType) { - +
diff --git a/src/com/pms/controller/PartMngController.java b/src/com/pms/controller/PartMngController.java index 22a80e7..fe4e20d 100644 --- a/src/com/pms/controller/PartMngController.java +++ b/src/com/pms/controller/PartMngController.java @@ -2267,23 +2267,25 @@ public class PartMngController { continue; } - // 파일명에서 품번 찾기 (파일명에 품번이 포함되어 있는 경우) + // 파일명에서 확장자 제거하여 품번 추출 + String fileNameWithoutExt = originalFileName; + int lastDotIndex = originalFileName.lastIndexOf('.'); + if(lastDotIndex > 0) { + fileNameWithoutExt = originalFileName.substring(0, lastDotIndex); + } + + // 품번과 정확히 일치하는 경우만 매칭 String matchedPartNo = null; - System.out.println("품번 매칭 시작 - 파일명: " + originalFileName); - for(String partNo : partNoMap.keySet()) { - System.out.println(" 품번 확인: " + partNo + " -> " + (originalFileName.contains(partNo) ? "매칭!" : "미매칭")); - if(originalFileName.contains(partNo)) { - matchedPartNo = partNo; - System.out.println(" ✓ 품번 매칭 성공: " + partNo); - break; - } - } - - if(matchedPartNo == null) { - System.out.println(" ✗ 품번 매칭 실패 - 파일명에서 품번을 찾을 수 없음"); + System.out.println("품번 매칭 시작 - 파일명(확장자 제외): " + fileNameWithoutExt); + + // 정확한 매칭 (품번과 파일명이 정확히 일치) + if(partNoMap.containsKey(fileNameWithoutExt)) { + matchedPartNo = fileNameWithoutExt; + System.out.println(" ✓ 품번 정확 매칭 성공: " + matchedPartNo); } if(matchedPartNo == null) { + System.out.println(" ✗ 품번 매칭 실패 - 파일명과 일치하는 품번이 없음"); notFoundCount++; continue; } diff --git a/src/com/pms/mapper/partMng.xml b/src/com/pms/mapper/partMng.xml index 69adb22..3b98ecf 100644 --- a/src/com/pms/mapper/partMng.xml +++ b/src/com/pms/mapper/partMng.xml @@ -2020,6 +2020,7 @@ SELECT T1.LEV, T1.BOM_REPORT_OBJID, T1.ROOT_PART_NO, T1.PATH, T1.LEAF, T2.* --> AND OBJID IN (SELECT NVL(LAST_PART_OBJID, PART_NO) FROM BOM_PART_QTY Q WHERE BOM_REPORT_OBJID = #{SEARCH_BOM_OBJID} + AND (Q.STATUS IS NULL OR Q.STATUS NOT IN ('deleted', 'deleting'))