From be5e7b11298b95977e3a3f873851b0efbc342e27 Mon Sep 17 00:00:00 2001 From: thkim Date: Tue, 3 Feb 2026 09:09:56 +0900 Subject: [PATCH] =?UTF-8?q?feat:=20=EC=9C=A0=ED=86=B5=EC=9E=90=EB=A3=8C=20?= =?UTF-8?q?=EC=A7=80=EC=97=AD=20=EA=B2=80=EC=83=89=20=EC=8B=9C=20=ED=99=94?= =?UTF-8?q?=EC=84=B1=ED=8A=B9=EB=A1=80=EC=8B=9C=20=EC=A0=81=EC=9A=A9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../geoinfo/map/left/MapLeftController.java | 55 ++++++++++++------- .../geoinfo/map/main/MapMainController.java | 2 +- .../sqlmap/mapper/map/MapLeft_SQL.xml | 20 ++++--- .../sqlmap/mapper/map/MapMain_SQL.xml | 4 +- src/main/webapp/js/map/main/left/left.js | 6 +- 5 files changed, 56 insertions(+), 31 deletions(-) diff --git a/src/main/java/geoinfo/map/left/MapLeftController.java b/src/main/java/geoinfo/map/left/MapLeftController.java index 733628ef..dbd805bc 100644 --- a/src/main/java/geoinfo/map/left/MapLeftController.java +++ b/src/main/java/geoinfo/map/left/MapLeftController.java @@ -340,16 +340,10 @@ public class MapLeftController { //params.put("masterCompanyProjectCodes", masterCompanyProjectCodes); } - - if (!(sido.equals("all"))) { - sidoSub = sido.substring(0, 4); - } - if (!(gugun.equals("all"))) { - gugunSub = gugun.substring(0, 4); - } - if (!(dong.equals("all"))) { - dongSub = dong.substring(0, 5); - } + sidoSub = getSidoSub(sido); + gugunSub = getGugunSub(gugun); + dongSub = getDongSub(dong); + String big_region = ""; if (sidoSub.equals("1001")) { big_region = "12:"; // 강원도 @@ -815,6 +809,34 @@ public class MapLeftController { } + private String getSidoSub(String sido) { + + if (!(sido.equals("all"))) { + String[] arrSido = sido.split("\\^"); + if( arrSido != null && 0 < arrSido.length ) { + return arrSido[0]; + } + } + return ""; + } + + private String getGugunSub(String gugun) { + + String[] arrGugun = gugun.split("\\^"); + if( arrGugun != null && 0 < arrGugun.length ) { + return arrGugun[0]; + } + return ""; + } + + private String getDongSub(String dong) { + String[] arrDong = dong.split("\\^"); + if( arrDong != null && 0 < arrDong.length ) { + return arrDong[0]; + } + return ""; + } + @RequestMapping(value = "/map/mapSearchArea.do") public String mapSearchArea(ModelMap model, HttpServletRequest request, HttpServletResponse response, @RequestParam Map params) throws Exception { @@ -830,15 +852,10 @@ public class MapLeftController { String userId = (String)request.getSession().getAttribute("USERID"); - if (!(sido.equals("all"))) { - sidoSub = sido.substring(0, 4); - } - if (!(gugun.equals("all"))) { - gugunSub = gugun.substring(0, 4); - } - if (!(dong.equals("all"))) { - dongSub = dong.substring(0, 5); - } + sidoSub = getSidoSub(sido); + gugunSub = getGugunSub(gugun); + dongSub = getDongSub(dong); + // System.out.println("sidoSub========================="+sidoSub); String big_region = ""; if (sidoSub.equals("1001")) { diff --git a/src/main/java/geoinfo/map/main/MapMainController.java b/src/main/java/geoinfo/map/main/MapMainController.java index 72fc1100..215b1a3b 100644 --- a/src/main/java/geoinfo/map/main/MapMainController.java +++ b/src/main/java/geoinfo/map/main/MapMainController.java @@ -102,7 +102,7 @@ public class MapMainController { @RequestMapping(value = "/map/getDong.do") public String getDong(ModelMap model, HttpServletRequest request, HttpServletResponse response, @RequestParam HashMap params) throws Exception { - List dong = mapMainService.selectWebBoundDong(params); // 지역검색(구/군 선택) + List dong = mapMainService.selectWebBoundDong(params); // 지역검색(읍/면/동 선택) model.addAttribute("dong", dong); diff --git a/src/main/resources/egovframework/sqlmap/mapper/map/MapLeft_SQL.xml b/src/main/resources/egovframework/sqlmap/mapper/map/MapLeft_SQL.xml index 7ca5fb37..beba8231 100644 --- a/src/main/resources/egovframework/sqlmap/mapper/map/MapLeft_SQL.xml +++ b/src/main/resources/egovframework/sqlmap/mapper/map/MapLeft_SQL.xml @@ -11,7 +11,9 @@ FROM TBL_PROJECT_INFO A, TBL_HEADER B ]]> - , (SELECT MINX, MAXX, MINY, MAXY FROM WEB_BOUND_DONG WHERE GUNGU_CD = #{gugunSub}) C + @@ -53,11 +55,15 @@ FROM TBL_PROJECT_INFO A, TBL_HEADER B ]]> - , (SELECT MINX, MAXX, MINY, MAXY FROM WEB_BOUND_DONG WHERE GUNGU_CD = #{gugunSub}) C + - ,(SELECT MINX, MAXX, MINY, MAXY FROM WEB_BOUND_DONG WHERE DONG_CD = #{dongSub}) C + @@ -213,12 +219,12 @@ diff --git a/src/main/resources/egovframework/sqlmap/mapper/map/MapMain_SQL.xml b/src/main/resources/egovframework/sqlmap/mapper/map/MapMain_SQL.xml index 80304c51..24de5508 100644 --- a/src/main/resources/egovframework/sqlmap/mapper/map/MapMain_SQL.xml +++ b/src/main/resources/egovframework/sqlmap/mapper/map/MapMain_SQL.xml @@ -9,14 +9,14 @@ diff --git a/src/main/webapp/js/map/main/left/left.js b/src/main/webapp/js/map/main/left/left.js index 9b3f92f5..495cd022 100644 --- a/src/main/webapp/js/map/main/left/left.js +++ b/src/main/webapp/js/map/main/left/left.js @@ -57,10 +57,12 @@ function getGuList2(callback = null, callbackParams = null) { } function getDongList2(callback = null, callbackParams = null) { - var sub_cd = $("#cmb_gungu_all").val().substring(0, 4); + var sub_cd = $("#cmb_gungu_all").val(); + const words = sub_cd.split("^"); + var params = new Object(); - params.gungu_cd = sub_cd; + params.gungu_cd = words[0]; $("#cmb_dong_all").load("/map/getDong.do", params, function(response, status, xhr) { if (status == "error") {