From 39c4fb1f4632ce72ffd72221ebe349427b82cabc Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=EC=9C=A0=EC=A7=80=EC=9D=B8?= Date: Thu, 6 Nov 2025 10:27:37 +0900 Subject: [PATCH 1/2] =?UTF-8?q?API=20=ED=82=A4=20=EC=8B=A0=EC=B2=AD(KEY=20?= =?UTF-8?q?=EB=B0=9C=EA=B8=89=20=ED=9A=8C=EC=9B=90=EC=9D=98=20=EA=B2=BD?= =?UTF-8?q?=EC=9A=B0=20KEY=20=EC=A0=95=EB=B3=B4=20=ED=91=9C=EC=8B=9C)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/geoinfo/main/api/ApiController.java | 19 ++++-- .../geoinfo/main/api/service/ApiMapper.java | 17 +++++ .../geoinfo/main/api/service/ApiService.java | 15 +++++ .../main/api/service/impl/ApiServiceImpl.java | 34 ++++++++++ .../sqlmap/mapper/api/geoinfo/Api_SQL.xml | 49 ++++++++++++++ .../webapp/WEB-INF/views/body/api/apiKey.jsp | 64 +++++++++++++++---- src/main/webapp/WEB-INF/views/home/main.jsp | 2 +- 7 files changed, 181 insertions(+), 19 deletions(-) create mode 100644 src/main/java/geoinfo/main/api/service/ApiMapper.java create mode 100644 src/main/java/geoinfo/main/api/service/ApiService.java create mode 100644 src/main/java/geoinfo/main/api/service/impl/ApiServiceImpl.java create mode 100644 src/main/resources/egovframework/sqlmap/mapper/api/geoinfo/Api_SQL.xml diff --git a/src/main/java/geoinfo/main/api/ApiController.java b/src/main/java/geoinfo/main/api/ApiController.java index 722623b8..87bf2c5d 100644 --- a/src/main/java/geoinfo/main/api/ApiController.java +++ b/src/main/java/geoinfo/main/api/ApiController.java @@ -3,6 +3,7 @@ package geoinfo.main.api; import java.util.HashMap; import java.util.Map; +import javax.annotation.Resource; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; @@ -13,22 +14,30 @@ import org.springframework.web.bind.annotation.RequestParam; import org.springframework.web.bind.annotation.ResponseBody; import org.springframework.web.servlet.ModelAndView; +import egovframework.rte.psl.dataaccess.util.EgovMap; +import geoinfo.main.api.service.ApiService; import geoinfo.util.KeyGenerator; import ictway.comm.util.parseData; import ictway.comm.util.strUtil; -@Controller +@Controller public class ApiController { Logger log = Logger.getLogger(this.getClass()); - + + @Resource(name = "apiService") + private ApiService apiService; + /* * 사용자 > API 신청 화면 */ @RequestMapping(value = "apiKey.do") - public ModelAndView goApiKeyPage(ModelAndView model, @RequestParam HashMap params) throws Exception { - - + public ModelAndView goApiKeyPage(HttpServletRequest request, HttpServletResponse response, ModelAndView model, @RequestParam HashMap params) throws Exception { + + String loginUserId = String.valueOf(request.getSession().getAttribute("USERID")); + params.put("userid", loginUserId); + HashMap userLastApiKey = apiService.selectUserLatestKey(params); + model.addObject("userLastApiKey", userLastApiKey); model.setViewName("body/api/apiKey"); return model; diff --git a/src/main/java/geoinfo/main/api/service/ApiMapper.java b/src/main/java/geoinfo/main/api/service/ApiMapper.java new file mode 100644 index 00000000..bacb42d7 --- /dev/null +++ b/src/main/java/geoinfo/main/api/service/ApiMapper.java @@ -0,0 +1,17 @@ +package geoinfo.main.api.service; + +import java.util.HashMap; +import java.util.List; + +import egovframework.rte.psl.dataaccess.mapper.Mapper; +import egovframework.rte.psl.dataaccess.util.EgovMap; + +@Mapper("ApiMapper") +public interface ApiMapper { + + public int selectInfoListCnt(HashMap params) throws Exception; + + public List selectInfoList(HashMap params) throws Exception; + + HashMap selectUserLatestKey(HashMap params) throws Exception; +} diff --git a/src/main/java/geoinfo/main/api/service/ApiService.java b/src/main/java/geoinfo/main/api/service/ApiService.java new file mode 100644 index 00000000..fa3c8508 --- /dev/null +++ b/src/main/java/geoinfo/main/api/service/ApiService.java @@ -0,0 +1,15 @@ +package geoinfo.main.api.service; + +import java.util.HashMap; +import java.util.List; + +import egovframework.rte.psl.dataaccess.util.EgovMap; + +public interface ApiService { + + int selectInfoListCnt(HashMap params) throws Exception; + + List selectInfoList(HashMap params) throws Exception; + + HashMap selectUserLatestKey(HashMap params) throws Exception; +} diff --git a/src/main/java/geoinfo/main/api/service/impl/ApiServiceImpl.java b/src/main/java/geoinfo/main/api/service/impl/ApiServiceImpl.java new file mode 100644 index 00000000..294e54e0 --- /dev/null +++ b/src/main/java/geoinfo/main/api/service/impl/ApiServiceImpl.java @@ -0,0 +1,34 @@ +package geoinfo.main.api.service.impl; + +import java.util.HashMap; +import java.util.List; + +import javax.annotation.Resource; + +import org.springframework.stereotype.Service; + +import egovframework.rte.psl.dataaccess.util.EgovMap; +import geoinfo.main.api.service.ApiMapper; +import geoinfo.main.api.service.ApiService; + +@Service("apiService") +public class ApiServiceImpl implements ApiService{ + + @Resource(name="ApiMapper") + private ApiMapper ApiMapper; + + @Override + public int selectInfoListCnt(HashMap params) throws Exception { + return ApiMapper.selectInfoListCnt(params); + } + + @Override + public List selectInfoList(HashMap params) throws Exception { + return ApiMapper.selectInfoList(params); + } + + @Override + public HashMap selectUserLatestKey(HashMap params) throws Exception { + return ApiMapper.selectUserLatestKey(params); + } +} diff --git a/src/main/resources/egovframework/sqlmap/mapper/api/geoinfo/Api_SQL.xml b/src/main/resources/egovframework/sqlmap/mapper/api/geoinfo/Api_SQL.xml new file mode 100644 index 00000000..86ba23f4 --- /dev/null +++ b/src/main/resources/egovframework/sqlmap/mapper/api/geoinfo/Api_SQL.xml @@ -0,0 +1,49 @@ + + + + + + + + + + + + \ No newline at end of file diff --git a/src/main/webapp/WEB-INF/views/body/api/apiKey.jsp b/src/main/webapp/WEB-INF/views/body/api/apiKey.jsp index 3c74e695..1411d896 100644 --- a/src/main/webapp/WEB-INF/views/body/api/apiKey.jsp +++ b/src/main/webapp/WEB-INF/views/body/api/apiKey.jsp @@ -1,24 +1,62 @@ <%@ page language="java" contentType="text/html; charset=utf-8"%> <%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%> <%@ taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions" %> - +<%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt" %> -
+ + + +<%--

API_SEQ: ${userLastApiKey.API_SEQ}

--%> +<%--

USERID: ${userLastApiKey.USERID}

--%> +<%--

USER_TYPE: ${userLastApiKey.USER_TYPE}

--%> +<%--

API_KEY: ${userLastApiKey.API_KEY}

--%> +<%--

START_DT:

--%> +<%--

END_DT:

--%> +<%--

APPROVE_YN: ${userLastApiKey.APPROVE_YN}

--%> + + +
+ + + + + + + + + + + + + + + + + + +
신청일만료일승인상태${userLastApiKey.APPROVE_YN eq 'Y' ? '승인' : '미승인'}
신청 KEY
${userLastApiKey.API_KEY}
+
+
+ + + + <%-- 사용자 타입(국토교통부/행정안전부/해안수산부/기타공공기관/일반) --%> +
    +
  • +
  • +
  • +
+ + + +
+
- <%-- 사용자 타입(국토교통부/행정안전부/해안수산부/기타공공기관/일반) --%> -
    -
  • -
  • -
  • -
- - - From c919750d3689b20cf7db7475512c1f3a35e0a938 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=EC=9C=A0=EC=A7=80=EC=9D=B8?= Date: Thu, 6 Nov 2025 11:24:11 +0900 Subject: [PATCH 2/2] =?UTF-8?q?order=20by=20=EC=A1=B0=EC=A0=95=20(null=20?= =?UTF-8?q?=EA=B0=92=20=EB=AA=A9=EB=A1=9D=20=EC=A0=9C=EC=9D=BC=20=EC=95=84?= =?UTF-8?q?=EB=9E=98)=20manageList.xml=20->=20=EA=B2=80=EC=88=98=EB=93=B1?= =?UTF-8?q?=EB=A1=9D=EB=8C=80=EA=B8=B0=EB=AA=A9=EB=A1=9D=20complete=5FSQL.?= =?UTF-8?q?xml=20->=20=EA=B2=80=EC=88=98=EB=93=B1=EB=A1=9D=EC=99=84?= =?UTF-8?q?=EB=A3=8C=EB=AA=A9=EB=A1=9D=20listReg.xml=20->=20=EC=9E=85?= =?UTF-8?q?=EB=A0=A5=EC=A4=91=EC=9D=B8=ED=94=84=EB=A1=9C=EC=A0=9D=ED=8A=B8?= =?UTF-8?q?=20=ED=98=84=ED=99=A9=20holeCoord.xml=20->=20=EC=A2=8C=ED=91=9C?= =?UTF-8?q?=EC=88=98=EC=A0=95,=20=ED=94=84=EB=A1=9C=EC=A0=9D=ED=8A=B8?= =?UTF-8?q?=EB=AA=85=20=EC=88=98=EC=A0=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../sqlmap/mapper/regi/complete_SQL.xml | 4 +++- .../egovframework/sqlmap/mapper/regi/holeCoord.xml | 12 ++++++++---- .../egovframework/sqlmap/mapper/regi/listReg.xml | 8 ++++---- .../egovframework/sqlmap/mapper/regi/manageList.xml | 10 +++++----- 4 files changed, 20 insertions(+), 14 deletions(-) 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 d5a9cfdb..8d61b24a 100644 --- a/src/main/resources/egovframework/sqlmap/mapper/regi/complete_SQL.xml +++ b/src/main/resources/egovframework/sqlmap/mapper/regi/complete_SQL.xml @@ -42,7 +42,9 @@ ORDER BY T.PROJECT_NAME ${sortDir} - T.USER_NAME ${sortDir} + + T.USER_NAME ${sortDir} NULLS LAST + T.DATETIME ${sortDir} NULLS LAST diff --git a/src/main/resources/egovframework/sqlmap/mapper/regi/holeCoord.xml b/src/main/resources/egovframework/sqlmap/mapper/regi/holeCoord.xml index f2b03d4d..c68b9826 100644 --- a/src/main/resources/egovframework/sqlmap/mapper/regi/holeCoord.xml +++ b/src/main/resources/egovframework/sqlmap/mapper/regi/holeCoord.xml @@ -101,32 +101,36 @@ SELECT ROW_NUMBER() OVER (ORDER BY ]]> + T.PROJECT_NAME ASC - T.PROJECT_NAME DESC + T.PROJECT_NAME DESC NULLS LAST + T.USER_NAME ASC - T.USER_NAME DESC + T.USER_NAME DESC NULLS LAST + T.CREATE_NAME ASC - T.CREATE_NAME DESC + T.CREATE_NAME DESC NULLS LAST + T.DATETIME ASC - T.DATETIME DESC + T.DATETIME DESC NULLS LAST - F.PROJECT_NAME DESC + F.PROJECT_NAME DESC NULLS LAST @@ -59,7 +59,7 @@ - F.USER_NAME DESC + F.USER_NAME DESC NULLS LAST @@ -68,7 +68,7 @@ - F.HOLE_CNT DESC + F.HOLE_CNT DESC NULLS LAST @@ -77,7 +77,7 @@ - F.DATETIME DESC + F.DATETIME DESC NULLS LAST - T.USER_NAME DESC + T.USER_NAME DESC NULLS LAST @@ -212,7 +212,7 @@ - T.DATETIME DESC, OB.MODIFY_CALL_DATE ASC + T.DATETIME DESC NULLS LAST, OB.MODIFY_CALL_DATE ASC @@ -221,7 +221,7 @@ - OC.DATETIME DESC + OC.DATETIME DESC NULLS LAST @@ -230,7 +230,7 @@ - OB.HIST_SEQ DESC, OC.DATETIME DESC + OB.HIST_SEQ DESC NULLS LAST, OC.DATETIME DESC NULLS LAST @@ -239,7 +239,7 @@ - OB.MODIFY_CALL_DATE DESC + OB.MODIFY_CALL_DATE DESC NULLS LAST