From 34e9421ba2626631bb5c44d219416789607dd26d Mon Sep 17 00:00:00 2001 From: thkim Date: Mon, 20 Oct 2025 17:51:24 +0900 Subject: [PATCH] =?UTF-8?q?fix:=20=EC=97=91=EC=85=80=EC=97=85=EB=A1=9C?= =?UTF-8?q?=EB=93=9C=20=EC=8B=9C=20=EC=8B=9C=EC=B6=94=EA=B3=B5=20=EA=B0=9C?= =?UTF-8?q?=EC=9A=94=EC=97=90=EC=84=9C=20=EC=BD=94=EC=96=B4=20=EC=82=AC?= =?UTF-8?q?=EC=A7=84=20=EC=84=A4=EB=AA=85=EC=9D=B4=20=EC=97=86=EB=8A=94=20?= =?UTF-8?q?=EA=B2=BD=EC=9A=B0=20=EC=BD=94=EC=96=B4=20=EC=82=AC=EC=A7=84=20?= =?UTF-8?q?=EC=84=A4=EB=AA=85=EC=9D=84=20=EC=9E=85=EB=A0=A5=ED=95=98?= =?UTF-8?q?=EB=9D=BC=EB=8A=94=20=EB=A9=94=EC=8B=9C=EC=A7=80=20=EC=B6=94?= =?UTF-8?q?=EA=B0=80?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../service/impl/CompleteServiceImpl.java | 14 ++ .../ManageExcelUploadProc03Controller.java | 12 +- .../sqlmap/mapper/regi/complete_SQL.xml | 172 +++++++++--------- .../WEB-INF/views/web/manage/complete.jsp | 59 +++--- 4 files changed, 144 insertions(+), 113 deletions(-) diff --git a/src/main/java/geoinfo/regi/complete/service/impl/CompleteServiceImpl.java b/src/main/java/geoinfo/regi/complete/service/impl/CompleteServiceImpl.java index 3fb37183..7b070d2b 100644 --- a/src/main/java/geoinfo/regi/complete/service/impl/CompleteServiceImpl.java +++ b/src/main/java/geoinfo/regi/complete/service/impl/CompleteServiceImpl.java @@ -106,6 +106,20 @@ public class CompleteServiceImpl implements CompleteService { params.put("searchCreateName", searchCreateName); /*params.put("LoginUserId", LoginUserId);*/ params.put("cls", nCls); + + // 정렬 파라미터 가공 + if (params.get("sort[0][field]") != null) { + String sortField = (String) params.get("sort[0][field]"); + String sortDir = (String) params.get("sort[0][dir]"); + + // SQL Injection 방지를 위해 허용된 컬럼명인지 확인하는 로직 추가 필요 + // 예: if ("projectName".equals(sortField) || "userName".equals(sortField) ...) + + // MyBatis에서 사용할 단순한 이름으로 파라미터를 추가합니다. + params.put("sortField", sortField); + params.put("sortDir", sortDir); + } + Long pageSize = MyUtil.getLongFromObject( params.get("pageSize") ); if( pageSize == null ) { diff --git a/src/main/java/geoinfo/regi/manageList/ManageExcelUploadProc03Controller.java b/src/main/java/geoinfo/regi/manageList/ManageExcelUploadProc03Controller.java index 01723fb8..81bb46a5 100644 --- a/src/main/java/geoinfo/regi/manageList/ManageExcelUploadProc03Controller.java +++ b/src/main/java/geoinfo/regi/manageList/ManageExcelUploadProc03Controller.java @@ -7128,7 +7128,17 @@ public class ManageExcelUploadProc03Controller { map.put("CORE_NUM",j+1 ); map.put("CORE_LOCAL",extracted[j].getName() ); map.put("CORE_PIC", saveName ); - map.put("CORE_DESC",excel3Wp.get("col1",j+1).trim() ); + String CoreDesc = null; + if( 1 < excel3Wp.getLength() ) { + CoreDesc = excel3Wp.get("col1",j+1); + CoreDesc = CoreDesc.trim(); + } else { + CoreDesc = "-"; + params.put("resultMsg", "코어 사진 설명을 입력하세요. 없는 경우 '- 를 입력하세요."); + return params; + } + + map.put("CORE_DESC", CoreDesc ); map.put("USERID",request.getSession().getAttribute("USERID")); coreList.add(map); //headerService.insertTempHeaderCore(params); diff --git a/src/main/resources/egovframework/sqlmap/mapper/regi/complete_SQL.xml b/src/main/resources/egovframework/sqlmap/mapper/regi/complete_SQL.xml index bda07e26..734a97dc 100644 --- a/src/main/resources/egovframework/sqlmap/mapper/regi/complete_SQL.xml +++ b/src/main/resources/egovframework/sqlmap/mapper/regi/complete_SQL.xml @@ -14,97 +14,87 @@