From 23c95c2380913079081f1718eda29d94a08d12da Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=EC=9C=A0=EC=A7=80=EC=9D=B8?= Date: Mon, 10 Nov 2025 17:28:14 +0900 Subject: [PATCH] =?UTF-8?q?API=20=EA=B4=80=EB=A6=AC=20>=20API=20=EC=8B=A0?= =?UTF-8?q?=EC=B2=AD=20=EA=B4=80=EB=A6=AC=20-=20API=20=EC=8B=A0=EC=B2=AD?= =?UTF-8?q?=20=EB=AA=A9=EB=A1=9D=20=ED=91=9C=EC=8B=9C,=20=EC=8A=B9?= =?UTF-8?q?=EC=9D=B8=20=EC=B2=98=EB=A6=AC?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../ApiManagementController.java | 74 ++++++++ .../service/ApiManagementMapper.java | 3 + .../service/ApiManagementService.java | 3 + .../impl/ApiManagementServiceImpl.java | 10 + .../mappers/admins/mgmt/Mgmt_Api_SQL.xml | 34 ++++ .../WEB-INF/views/admins/mgmtApi/left.jsp | 9 +- .../views/admins/mgmtApi/mgmt-api-key.jsp | 174 ++++++++++++++++++ 7 files changed, 306 insertions(+), 1 deletion(-) create mode 100644 src/main/webapp/WEB-INF/views/admins/mgmtApi/mgmt-api-key.jsp diff --git a/src/main/java/geoinfo/admins/apiManagement/ApiManagementController.java b/src/main/java/geoinfo/admins/apiManagement/ApiManagementController.java index 79ee1d2..4c4d6e8 100644 --- a/src/main/java/geoinfo/admins/apiManagement/ApiManagementController.java +++ b/src/main/java/geoinfo/admins/apiManagement/ApiManagementController.java @@ -100,4 +100,78 @@ public class ApiManagementController { return result; } + + /** + * API 관리 > API 신청 관리 화면 + * @param params + * @param model + * @param response + * @param request + * @return + * @throws Exception + */ + @RequestMapping(value = "admins/mgmtApi/mgmt-api-key.do") + public String goMgmtApiKey(@RequestParam HashMap params, ModelMap model, HttpServletResponse response, HttpServletRequest request) throws Exception { + + if (!UserInfo.isValidSession(request, response, "admin")) { + return ""; + } + + + model.addAttribute("params", params); + return "admins/mgmtApi/mgmt-api-key"; + } + + /** + * API 관리 > 관리 API 신청 목록 + * @param params + * @param model + * @param response + * @param request + * @return + * @throws Exception + */ + @ResponseBody + @RequestMapping(value = "/admins/mgmtApiKey/list.do", method = RequestMethod.POST) + public HashMap getMgmtApiKeyList(@RequestParam HashMap params, ModelMap model, HttpServletResponse response, HttpServletRequest request) throws Exception { + HashMap result = new HashMap(); + + List listData = apiManagementService.selectWebApiKeyList(params); + + result.put("code", "SUCCESS"); + result.put("msg", "API 신청 목록 조회를 성공했습니다."); + result.put("data", listData); + + return result; + } + + + /** + * API 관리 > API 호출 활성상태 변경 + * @param params + * @param model + * @param response + * @param request + * @return + * @throws Exception + */ + @ResponseBody + @RequestMapping(value = "/admins/mgmtApiKey/approve.do", method = RequestMethod.POST) + public HashMap modMgmtApiKeyApprove(@RequestParam(value="apiSeq") int apiSeq, ModelMap model, HttpServletResponse response, HttpServletRequest request) throws Exception { + HashMap result = new HashMap(); + + HashMap params = new HashMap<>(); + params.put("apiSeq", apiSeq); + params.put("approveYn", "Y"); + + apiManagementService.updateWebApiKeyApprove(params); + + List listData = apiManagementService.selectWebApiKeyList(params); + + result.put("code", "SUCCESS"); + result.put("msg", " API 신청 목록 조회를 성공했습니다."); + result.put("data", listData); + + return result; + } } diff --git a/src/main/java/geoinfo/admins/apiManagement/service/ApiManagementMapper.java b/src/main/java/geoinfo/admins/apiManagement/service/ApiManagementMapper.java index 4256e86..d5b60a3 100644 --- a/src/main/java/geoinfo/admins/apiManagement/service/ApiManagementMapper.java +++ b/src/main/java/geoinfo/admins/apiManagement/service/ApiManagementMapper.java @@ -21,4 +21,7 @@ public interface ApiManagementMapper { public void updateInfoStatus(HashMap params) throws Exception; + public List selectWebApiKeyList(HashMap params) throws Exception; + + public void updateWebApiKeyApprove(HashMap params) throws Exception; } diff --git a/src/main/java/geoinfo/admins/apiManagement/service/ApiManagementService.java b/src/main/java/geoinfo/admins/apiManagement/service/ApiManagementService.java index b9f547a..af4e7b1 100644 --- a/src/main/java/geoinfo/admins/apiManagement/service/ApiManagementService.java +++ b/src/main/java/geoinfo/admins/apiManagement/service/ApiManagementService.java @@ -21,4 +21,7 @@ public interface ApiManagementService { public void updateInfoStatus(HashMap params) throws Exception; + public List selectWebApiKeyList(HashMap params) throws Exception; + + public void updateWebApiKeyApprove(HashMap params) throws Exception; } diff --git a/src/main/java/geoinfo/admins/apiManagement/service/impl/ApiManagementServiceImpl.java b/src/main/java/geoinfo/admins/apiManagement/service/impl/ApiManagementServiceImpl.java index 90bfbce..538e216 100644 --- a/src/main/java/geoinfo/admins/apiManagement/service/impl/ApiManagementServiceImpl.java +++ b/src/main/java/geoinfo/admins/apiManagement/service/impl/ApiManagementServiceImpl.java @@ -46,4 +46,14 @@ public class ApiManagementServiceImpl implements ApiManagementService { masterMapper.updateInfoStatus(params); } + @Override + public List selectWebApiKeyList(HashMap params) throws Exception { + return masterMapper.selectWebApiKeyList(params); + } + + @Override + public void updateWebApiKeyApprove(HashMap params) throws Exception { + masterMapper.updateWebApiKeyApprove(params); + } + } diff --git a/src/main/resources/geoinfo/sqlmap/mappers/admins/mgmt/Mgmt_Api_SQL.xml b/src/main/resources/geoinfo/sqlmap/mappers/admins/mgmt/Mgmt_Api_SQL.xml index 01a213d..94e6796 100644 --- a/src/main/resources/geoinfo/sqlmap/mappers/admins/mgmt/Mgmt_Api_SQL.xml +++ b/src/main/resources/geoinfo/sqlmap/mappers/admins/mgmt/Mgmt_Api_SQL.xml @@ -63,4 +63,38 @@ ) + + + + + + + UPDATE WEB_API_KEY + SET + + APPROVE_YN = #{approveYn} + + WHERE API_SEQ IN (#{apiSeq}) + \ No newline at end of file diff --git a/src/main/webapp/WEB-INF/views/admins/mgmtApi/left.jsp b/src/main/webapp/WEB-INF/views/admins/mgmtApi/left.jsp index ab45b18..3d7525b 100644 --- a/src/main/webapp/WEB-INF/views/admins/mgmtApi/left.jsp +++ b/src/main/webapp/WEB-INF/views/admins/mgmtApi/left.jsp @@ -75,7 +75,14 @@ img { border:0; } + + + + + diff --git a/src/main/webapp/WEB-INF/views/admins/mgmtApi/mgmt-api-key.jsp b/src/main/webapp/WEB-INF/views/admins/mgmtApi/mgmt-api-key.jsp new file mode 100644 index 0000000..e4b6b5f --- /dev/null +++ b/src/main/webapp/WEB-INF/views/admins/mgmtApi/mgmt-api-key.jsp @@ -0,0 +1,174 @@ +<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> +<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %> +<%@ taglib prefix="form" uri="http://www.springframework.org/tags/form" %> +<%@ taglib prefix="ui" uri="http://egovframework.gov/ctl/ui"%> +<%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt" %> + + + + + + + + + + + + + +
+

API 신청 내역

+ + + + + + + + + + + + + + + + + + + + + + + +
No.사용자 ID사용자 구분API KEY신청일만료일승인상태
+ + + +
+ + + + +