From a4362f37833d80d2a313c4c23eaeb3e03fb8bd50 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=EA=B0=95=EC=84=9D=20=EC=B5=9C?= Date: Wed, 24 Apr 2024 17:56:46 +0900 Subject: [PATCH] =?UTF-8?q?=EB=B6=88=ED=95=84=EC=9A=94=20=ED=8C=8C?= =?UTF-8?q?=EC=9D=BC=20=EC=82=AD=EC=A0=9C.=20=EA=B4=80=EB=A6=AC=EC=9E=90?= =?UTF-8?q?=20=ED=8E=98=EC=9D=B4=EC=A7=80=20=EC=A0=91=EA=B7=BC=20=EA=B6=8C?= =?UTF-8?q?=ED=95=9C=20=ED=99=95=EC=9D=B8=EC=9C=BC=EB=A1=9C=20=EC=9D=B8?= =?UTF-8?q?=ED=95=9C=20URL=20=EC=88=98=EC=A0=95.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/constants/url.js | 7 +- .../pages/admin/board/AdminPostMgtEdit.jsx | 6 +- .../pages/admin/board/AdminPostMgtList.jsx | 2 +- .../pages/admin/board/EgovAdminBoardEdit.jsx | 6 +- .../src/pages/admin/boards/Keywords.jsx | 185 ------------------ .../src/pages/admin/boards/List.jsx | 2 +- .../src/pages/admin/config/AboutSiteMgt.jsx | 5 +- .../config/aboutSiteMgt/AboutSiteModal.jsx | 4 +- .../src/pages/admin/standards/ApiKeys.jsx | 6 +- .../src/pages/admin/users/List.jsx | 4 +- .../src/pages/admin/users/UserInfoModal.jsx | 4 +- .../src/routes/index.jsx | 5 +- .../admin/boards/AdminBoardsController.java | 16 +- .../admin/config/AdminConfigController.java | 6 +- .../standards/AdminStandardsController.java | 6 +- .../admin/users/AdminUsersController.java | 8 +- .../config/common/AuthCheckInterceptor.java | 10 +- .../resources/mybatisMapper/TcMenuMapper.xml | 4 +- 18 files changed, 50 insertions(+), 236 deletions(-) delete mode 100644 egovframe-template-simple-react-contribution/src/pages/admin/boards/Keywords.jsx diff --git a/egovframe-template-simple-react-contribution/src/constants/url.js b/egovframe-template-simple-react-contribution/src/constants/url.js index 22f6ce3..ddae056 100644 --- a/egovframe-template-simple-react-contribution/src/constants/url.js +++ b/egovframe-template-simple-react-contribution/src/constants/url.js @@ -84,16 +84,15 @@ const URL = { ADMIN_ABOUT_SITE : "/admin/config/about-site-mgt", // 사이트관리/환경설정/관련사이트 관리 // 관리자 - 사용자 현황 - ADMIN__USERS__LIST : "/admin/users/list", // 사용자 현황 + ADMIN__USERS__LIST : "/admin/users/mgt", // 사용자 현황 // 관리자 - 게시판 현황 - ADMIN__BOARDS__LIST : "/admin/boards/list", // 게시판 현황/게시판 관리 + ADMIN__BOARDS__LIST : "/admin/boards/mgt", // 게시판 현황/게시판 관리 ADMIN__BOARDS__POSTS : "/admin/boards/posts", // 게시판 현황/게시물 관리 - ADMIN__BOARDS__KEYWORDS : "/admin/boards/keywords", // 게시판 현황/키워드 관리 // 관리자 - 건설기준 관리 ADMIN__STANDARDS__REFERENCE_CODES : "/admin/standards/reference-codes", // 건설기준 관리/참조코드 조회 - ADMIN__STANDARDS__API_KYES : "/admin/standards/api-kyes", // 건설기준 관리/API KEY 관리 + ADMIN__STANDARDS__API_KYES : "/admin/standards/api-keys", // 건설기준 관리/API KEY 관리 ADMIN__STANDARDS__SIMILARITY_CHECK : "/admin/standards/standards/similarity-check", // 건설기준 관리/유사성 검사 ADMIN__STANDARDS__INFO_DISCLOSURE : "/admin/standards/info-disclosure", // 건설기준 관리/정보공개 관리 diff --git a/egovframe-template-simple-react-contribution/src/pages/admin/board/AdminPostMgtEdit.jsx b/egovframe-template-simple-react-contribution/src/pages/admin/board/AdminPostMgtEdit.jsx index 985c38c..818025d 100644 --- a/egovframe-template-simple-react-contribution/src/pages/admin/board/AdminPostMgtEdit.jsx +++ b/egovframe-template-simple-react-contribution/src/pages/admin/board/AdminPostMgtEdit.jsx @@ -35,7 +35,7 @@ function AdminPostMgtEdit({props, reloadFunction}) { const [categoryList, setCategoryList] = useState([]); const retrieveList = useCallback(() => { - const retrieveListURL = '/admin/boards/get-category-and-file-list'; + const retrieveListURL = '/admin/boards/posts/get-category-and-file-list'; const requestOptions = { method: "POST", @@ -100,7 +100,7 @@ function AdminPostMgtEdit({props, reloadFunction}) { formData.append('bbsContSeq', props.bbsContSeq); } EgovNet.requestFetch( - '/admin/boards/post-mgt', + '/admin/boards/posts/post-mgt', { method: "PUT", body: formData @@ -121,7 +121,7 @@ function AdminPostMgtEdit({props, reloadFunction}) { function deletePost(post) { if (window.confirm("삭제하시겠습니까?")) { EgovNet.requestFetch( - '/admin/boards/post-mgt', + '/admin/boards/posts/post-mgt', { method: "DELETE", headers: { diff --git a/egovframe-template-simple-react-contribution/src/pages/admin/board/AdminPostMgtList.jsx b/egovframe-template-simple-react-contribution/src/pages/admin/board/AdminPostMgtList.jsx index 1c0fbaf..d253fdc 100644 --- a/egovframe-template-simple-react-contribution/src/pages/admin/board/AdminPostMgtList.jsx +++ b/egovframe-template-simple-react-contribution/src/pages/admin/board/AdminPostMgtList.jsx @@ -44,7 +44,7 @@ function AdminPostMgtList(props) { const params = EgovNet.convParams(searchCondition); console.groupCollapsed("EgovAdminPostList.retrieveList()"); - const retrieveListURL = '/admin/boards/post-list' + params; + const retrieveListURL = '/admin/boards/posts/post-list' + params; const requestOptions = { method: "GET", diff --git a/egovframe-template-simple-react-contribution/src/pages/admin/board/EgovAdminBoardEdit.jsx b/egovframe-template-simple-react-contribution/src/pages/admin/board/EgovAdminBoardEdit.jsx index 8bf595d..1d4bf1b 100644 --- a/egovframe-template-simple-react-contribution/src/pages/admin/board/EgovAdminBoardEdit.jsx +++ b/egovframe-template-simple-react-contribution/src/pages/admin/board/EgovAdminBoardEdit.jsx @@ -34,7 +34,7 @@ function EgovAdminBoardEdit({props, reloadFunction}) { const [roleList, setRoleList] = useState([]); const retrieveList = useCallback(() => { - const retrieveListURL = '/admin/boards/get-option-list'; + const retrieveListURL = '/admin/boards/mgt/get-option-list'; const requestOptions = { method: "GET", @@ -88,7 +88,7 @@ function EgovAdminBoardEdit({props, reloadFunction}) { info.bbsSeq = props.bbsSeq; } EgovNet.requestFetch( - '/admin/boards/board-mgt', + '/admin/boards/mgt/board-mgt', { method: "PUT", headers: { @@ -112,7 +112,7 @@ function EgovAdminBoardEdit({props, reloadFunction}) { function deleteBoard(bbs){ if(window.confirm("삭제하시겠습니까?")) { EgovNet.requestFetch( - '/admin/boards/board-mgt', + '/admin/boards/mgt/board-mgt', { method: "DELETE", headers: { diff --git a/egovframe-template-simple-react-contribution/src/pages/admin/boards/Keywords.jsx b/egovframe-template-simple-react-contribution/src/pages/admin/boards/Keywords.jsx deleted file mode 100644 index c485536..0000000 --- a/egovframe-template-simple-react-contribution/src/pages/admin/boards/Keywords.jsx +++ /dev/null @@ -1,185 +0,0 @@ -import React, {useState, useEffect, useCallback} from 'react'; -import {Link, useLocation} from 'react-router-dom'; - -import * as EgovNet from 'api/egovFetch'; -import URL from 'constants/url'; - -import {default as EgovLeftNav} from 'components/leftmenu/EgovLeftNavAdmin'; -import Modal from "react-bootstrap/Modal"; -import CODE from "../../../constants/code"; -import EgovAdminBoardEdit from "../board/EgovAdminBoardEdit"; -import {format} from "date-fns"; - -function StandardCodeMgt(props) { - - const location = useLocation(); - - const [searchCondition, setSearchCondition] = useState(location.state?.searchCondition || { pageIndex: 1, searchCnd: '0', searchWrd: '' });// 기존 조회에서 접근 했을 시 || 신규로 접근 했을 시 - const [paginationInfo, setPaginationInfo] = useState({}); - const [listTag, setListTag] = useState([]); - - const [show, setShow] = useState(false); - const [modalBody, setModalBody] = useState(); - const handleClose = () => setShow(false); - const handleShow = () => setShow(true); - - const retrieveList = useCallback(() => { - handleClose(); - console.groupCollapsed("AdminBoardList.retrieveList()"); - - const retrieveListURL = '/admin/boards/board-list'; - - const requestOptions = { - method: "GET", - headers: { - 'Content-type': 'application/json', - - }, - body: JSON.stringify() - } - - EgovNet.requestFetch(retrieveListURL, - requestOptions, - (resp) => { - - let mutListTag = []; - listTag.push(

검색된 결과가 없습니다.

); // 게시판 목록 초기값 - - // 리스트 항목 구성 - resp.result.boardList.forEach(function (item, index) { - if (index === 0) mutListTag = []; // 목록 초기화 - - mutListTag.push( -
-
{item.bbsSeq}
-
{item.bbsId}
-
{item.bbsTitle}
-
{item.frstCrtId}
-
{item.frstCrtDt ? format(item.frstCrtDt, "yyyy-MM-dd HH:mm") : ""}
-
{item.lastChgDt ? format(item.lastChgDt, "yyyy-MM-dd HH:mm") : ""}
-
-
- ); - }); - - setListTag(mutListTag); - console.log("@@@ resp : "); - }, - function (resp) { - console.log("err response : ", resp); - } - ); - console.groupEnd("EgovAdminBoardList.retrieveList()"); - },[]); - - useEffect(() => { - retrieveList(searchCondition); - // eslint-disable-next-line react-hooks/exhaustive-deps - }, []); - - function editBoard(item){ - handleShow(); - if(item != undefined) { - item.mode = CODE.MODE_MODIFY; - } - setModalBody() - } - - return ( -
-
- {/* */} -
-
    -
  • Home
  • -
  • 사이트관리
  • -
  • 게시판현황
  • -
  • 키워드 관리
  • -
-
- {/* */} - -
- {/* */} - - {/* */} - -
-
-

사이트관리

-
-

키워드 관리

- {/* */} - {/*
-
    -
  • - 검색유형선택 - -
  • -
  • - 검색어 - - { - wrdRef.current.value = e.target.value; - }} - /> - - -
  • -
  • - 등록 -
  • -
-
*/} - {/* */} - - {/* */} -
-
- 번호 - 아이디 - 제목 - 작성자 - 작성일 - 수정일 - -
-
- {listTag} -
-
- {/* */} - -
- {/* */} - {/* { - retrieveList({ ...searchCondition, pageIndex: passedPage, searchCnd: cndRef.current.value, searchWrd: wrdRef.current.value }) - }} />*/} - {/* */} -
- - {/* */} -
-
-
- - {modalBody} - -
- ); -} - -export default StandardCodeMgt; \ No newline at end of file diff --git a/egovframe-template-simple-react-contribution/src/pages/admin/boards/List.jsx b/egovframe-template-simple-react-contribution/src/pages/admin/boards/List.jsx index f025c4e..b9258da 100644 --- a/egovframe-template-simple-react-contribution/src/pages/admin/boards/List.jsx +++ b/egovframe-template-simple-react-contribution/src/pages/admin/boards/List.jsx @@ -32,7 +32,7 @@ function EgovAdminBoardList(props) { handleClose(); console.groupCollapsed("AdminBoardList.retrieveList()"); - const retrieveListURL = '/admin/boards/board-list'; + const retrieveListURL = '/admin/boards/mgt/board-list'; const requestOptions = { method: "GET", diff --git a/egovframe-template-simple-react-contribution/src/pages/admin/config/AboutSiteMgt.jsx b/egovframe-template-simple-react-contribution/src/pages/admin/config/AboutSiteMgt.jsx index cd3d062..725e5d9 100644 --- a/egovframe-template-simple-react-contribution/src/pages/admin/config/AboutSiteMgt.jsx +++ b/egovframe-template-simple-react-contribution/src/pages/admin/config/AboutSiteMgt.jsx @@ -5,10 +5,11 @@ import * as EgovNet from 'api/egovFetch'; import URL from 'constants/url'; import { default as EgovLeftNav } from 'components/leftmenu/EgovLeftNavAdmin'; -import CODE from "../../../constants/code"; +import CODE from "constants/code"; import Modal from "react-bootstrap/Modal"; import AboutSiteModal from "./aboutSiteMgt/AboutSiteModal"; import {Image} from "react-bootstrap"; +import {SERVER_URL} from "config"; function StandardCodeMgt(props) { @@ -53,7 +54,7 @@ function StandardCodeMgt(props) {
{item.siteTitle}
{item.siteUrl}
-
이미지 window.open(e.target.src)} width={"150"}/>
+
이미지 window.open(e.target.src)} width={"150"}/>
{item.siteOrder}
{item.useYn}
diff --git a/egovframe-template-simple-react-contribution/src/pages/admin/config/aboutSiteMgt/AboutSiteModal.jsx b/egovframe-template-simple-react-contribution/src/pages/admin/config/aboutSiteMgt/AboutSiteModal.jsx index b8df330..e6d54be 100644 --- a/egovframe-template-simple-react-contribution/src/pages/admin/config/aboutSiteMgt/AboutSiteModal.jsx +++ b/egovframe-template-simple-react-contribution/src/pages/admin/config/aboutSiteMgt/AboutSiteModal.jsx @@ -69,7 +69,7 @@ function AboutSiteModal({props, reloadFunction}) { formData.append('fileGrpId', props.fileGrpId); } EgovNet.requestFetch( - '/admin/config/about-site-mgt', + '/admin/config/about-site-mgt/partner-site-mgt', { method: "PUT", body: formData @@ -90,7 +90,7 @@ function AboutSiteModal({props, reloadFunction}) { function deletePartnerSite(partnerSite){ if(window.confirm("삭제하시겠습니까?")) { EgovNet.requestFetch( - '/admin/config/about-site-mgt', + '/admin/config/about-site-mgt/partner-site-mgt', { method: "DELETE", headers: { diff --git a/egovframe-template-simple-react-contribution/src/pages/admin/standards/ApiKeys.jsx b/egovframe-template-simple-react-contribution/src/pages/admin/standards/ApiKeys.jsx index 3475d31..a75f909 100644 --- a/egovframe-template-simple-react-contribution/src/pages/admin/standards/ApiKeys.jsx +++ b/egovframe-template-simple-react-contribution/src/pages/admin/standards/ApiKeys.jsx @@ -32,7 +32,7 @@ function ApiKeys(props) { const retrieveList = useCallback((srchCnd) => { // console.groupCollapsed("EgovAdminUsageList.retrieveList()"); - const retrieveListURL = '/admin/standards/apikey'; + const retrieveListURL = '/admin/standards/api-keys'; const requestOptions = { method: "POST", @@ -95,7 +95,7 @@ function ApiKeys(props) { const handleSwitchToggle = async (item) => { try { - const updateApiEndpoint = '/admin/standards/apiupdate'; + const updateApiEndpoint = '/admin/standards/api-keys/api-update'; const requestOptions = { method: 'POST', headers: { @@ -122,7 +122,7 @@ function ApiKeys(props) { const handleApiKeyChart = (item) => { try { - const updateApiEndpoint = '/admin/standards/apiDailyChart'; + const updateApiEndpoint = '/admin/standards/api-keys/api-daily-chart'; const requestOptions = { method: 'POST', headers: { diff --git a/egovframe-template-simple-react-contribution/src/pages/admin/users/List.jsx b/egovframe-template-simple-react-contribution/src/pages/admin/users/List.jsx index 39e9d00..e5402d4 100644 --- a/egovframe-template-simple-react-contribution/src/pages/admin/users/List.jsx +++ b/egovframe-template-simple-react-contribution/src/pages/admin/users/List.jsx @@ -32,7 +32,7 @@ function List({}) { const retrieveList = useCallback((searchCondition) => { const params = EgovNet.convParams(searchCondition); EgovNet.requestFetch( - '/admin/users/list'+params, + '/admin/users/mgt/list'+params, { method: "GET" }, @@ -80,7 +80,7 @@ function List({}) { const removeUserInfo = useCallback((seq)=>{ if(window.confirm("삭제하시겠습니까?\n복구할 수 없습니다.")){ EgovNet.requestFetch( - '/admin/users/info', + '/admin/users/mgt/info', { method: "DELETE", headers: { diff --git a/egovframe-template-simple-react-contribution/src/pages/admin/users/UserInfoModal.jsx b/egovframe-template-simple-react-contribution/src/pages/admin/users/UserInfoModal.jsx index 2623395..5071d8e 100644 --- a/egovframe-template-simple-react-contribution/src/pages/admin/users/UserInfoModal.jsx +++ b/egovframe-template-simple-react-contribution/src/pages/admin/users/UserInfoModal.jsx @@ -36,7 +36,7 @@ function UserInfoModal({savedInfo, reloadFunction}){ info.userRole = userRole.slice(0, -1) } EgovNet.requestFetch( - '/admin/users/info', + '/admin/users/mgt/info', { method: "PUT", headers: { @@ -59,7 +59,7 @@ function UserInfoModal({savedInfo, reloadFunction}){ function modalOpen(){ EgovNet.requestFetch( - '/admin/users/info?userId='+savedInfo?.userId, + '/admin/users/mgt/info?userId='+savedInfo?.userId, { method: "GET", headers: { diff --git a/egovframe-template-simple-react-contribution/src/routes/index.jsx b/egovframe-template-simple-react-contribution/src/routes/index.jsx index 10e53ce..c67ec6f 100644 --- a/egovframe-template-simple-react-contribution/src/routes/index.jsx +++ b/egovframe-template-simple-react-contribution/src/routes/index.jsx @@ -79,8 +79,7 @@ import AdminUsersList from 'pages/admin/users/List'; // 관리자 - 게시판 현황 import AdminBoardsList from 'pages/admin/boards/List'; // 관리자 - 게시판 현황/게시판 관리 -import AdminBoardsPosts from 'pages/admin/boards/Posts'; // 관리자 - 게시판 현황/게시물 관리 -import AdminBoardsKeywords from 'pages/admin/boards/Keywords'; // 관리자 - 게시판 현황/키워드 관리 +import AdminPostMgtList from "../pages/admin/board/AdminPostMgtList"; // 관리자 - 게시판 현황/게시물 관리 // 관리자 - 건설기준 관리 import AdminStandardsReferenceCodes from 'pages/admin/standards/ReferenceCodes'; // 관리자 - 건설기준 관리/참조코드 조회 @@ -121,7 +120,6 @@ import StandardCodeInfo from "../pages/standardCode/info/StandardCodeInfo"; import * as EgovNet from 'api/egovFetch'; // jwt토큰 위조 검사 때문에 추가 import initPage from 'js/ui'; -import AdminPostMgtList from "../pages/admin/board/AdminPostMgtList"; const RootRoutes = () => { //useLocation객체를 이용하여 정규표현식을 사용한 /admin/~ 으로 시작하는 경로와 비교에 사용(아래 1줄) */} @@ -297,7 +295,6 @@ const SecondRoutes = () => { {/* 관리자 - 게시판 현황 */} } /> } /> - } /> {/* 관리자 - 건설기준 관리 */} } /> diff --git a/kcsc-back-end/src/main/java/com/dbnt/kcscbackend/admin/boards/AdminBoardsController.java b/kcsc-back-end/src/main/java/com/dbnt/kcscbackend/admin/boards/AdminBoardsController.java index 66389f3..2ae995b 100644 --- a/kcsc-back-end/src/main/java/com/dbnt/kcscbackend/admin/boards/AdminBoardsController.java +++ b/kcsc-back-end/src/main/java/com/dbnt/kcscbackend/admin/boards/AdminBoardsController.java @@ -53,7 +53,7 @@ public class AdminBoardsController extends BaseController { @ApiResponse(responseCode = "200", description = "조회 성공"), @ApiResponse(responseCode = "403", description = "인가된 사용자가 아님") }) - @RequestMapping(method = RequestMethod.GET, value = "/board-list", consumes = MediaType.APPLICATION_JSON_VALUE) + @RequestMapping(method = RequestMethod.GET, value = "/mgt/board-list", consumes = MediaType.APPLICATION_JSON_VALUE) public ResultVO getBoardList() throws Exception { ResultVO resultVO = new ResultVO(); Map resultMap = new HashMap<>(); @@ -72,7 +72,7 @@ public class AdminBoardsController extends BaseController { @ApiResponse(responseCode = "200", description = "조회 성공"), @ApiResponse(responseCode = "403", description = "인가된 사용자가 아님") }) - @RequestMapping(method = RequestMethod.GET, value = "/get-option-list", consumes = MediaType.APPLICATION_JSON_VALUE) + @RequestMapping(method = RequestMethod.GET, value = "/mgt/get-option-list", consumes = MediaType.APPLICATION_JSON_VALUE) public ResultVO getOptionList() throws Exception { ResultVO resultVO = new ResultVO(); Map resultMap = new HashMap<>(); @@ -92,7 +92,7 @@ public class AdminBoardsController extends BaseController { @ApiResponse(responseCode = "200", description = "저장 성공"), @ApiResponse(responseCode = "403", description = "인가된 사용자가 아님") }) - @RequestMapping(method = RequestMethod.PUT, value = "/board-mgt") + @RequestMapping(method = RequestMethod.PUT, value = "/mgt/board-mgt") public ResultVO saveBoardMgt(@RequestBody @Valid TnBbs bbs, Errors errors, @AuthenticationPrincipal LoginVO user) { ResultVO resultVO = new ResultVO(); if (user == null) { @@ -124,7 +124,7 @@ public class AdminBoardsController extends BaseController { @ApiResponse(responseCode = "200", description = "삭제 성공"), @ApiResponse(responseCode = "403", description = "인가된 사용자가 아님") }) - @RequestMapping(method = RequestMethod.DELETE, value = "/board-mgt") + @RequestMapping(method = RequestMethod.DELETE, value = "/mgt/board-mgt") public ResultVO deleteBoardMgt(@RequestBody TnBbs bbs, @AuthenticationPrincipal LoginVO user) { ResultVO resultVO = new ResultVO(); if (user == null) { @@ -151,7 +151,7 @@ public class AdminBoardsController extends BaseController { @ApiResponse(responseCode = "200", description = "조회 성공"), @ApiResponse(responseCode = "403", description = "인가된 사용자가 아님") }) - @RequestMapping(method = RequestMethod.GET, value = "/post-list", consumes = MediaType.APPLICATION_JSON_VALUE) + @RequestMapping(method = RequestMethod.GET, value = "/posts/post-list", consumes = MediaType.APPLICATION_JSON_VALUE) public ResultVO getPostList(TnBbsContents params) throws Exception { ResultVO resultVO = new ResultVO(); params.setQueryInfo(); @@ -174,7 +174,7 @@ public class AdminBoardsController extends BaseController { @ApiResponse(responseCode = "200", description = "조회 성공"), @ApiResponse(responseCode = "403", description = "인가된 사용자가 아님") }) - @RequestMapping(method = RequestMethod.POST, value = "/get-category-and-file-list", consumes = MediaType.APPLICATION_JSON_VALUE) + @RequestMapping(method = RequestMethod.POST, value = "/posts/get-category-and-file-list", consumes = MediaType.APPLICATION_JSON_VALUE) public ResultVO getCategoryList(@RequestBody TnBbsContents tnBbsContents) throws Exception { ResultVO resultVO = new ResultVO(); Map resultMap = new HashMap<>(); @@ -210,7 +210,7 @@ public class AdminBoardsController extends BaseController { @ApiResponse(responseCode = "200", description = "저장 성공"), @ApiResponse(responseCode = "403", description = "인가된 사용자가 아님") }) - @RequestMapping(method = RequestMethod.PUT, value = "/post-mgt") + @RequestMapping(method = RequestMethod.PUT, value = "/posts/post-mgt") public ResultVO savePostMgt( @Valid TnBbsContents contents, HttpServletRequest request, @@ -249,7 +249,7 @@ public class AdminBoardsController extends BaseController { @ApiResponse(responseCode = "200", description = "삭제 성공"), @ApiResponse(responseCode = "403", description = "인가된 사용자가 아님") }) - @RequestMapping(method = RequestMethod.DELETE, value = "/post-mgt") + @RequestMapping(method = RequestMethod.DELETE, value = "/posts/post-mgt") public ResultVO deletePostMgt(@RequestBody TnBbsContents contents, HttpServletRequest request, @AuthenticationPrincipal LoginVO user) { ResultVO resultVO = new ResultVO(); if (user == null) { diff --git a/kcsc-back-end/src/main/java/com/dbnt/kcscbackend/admin/config/AdminConfigController.java b/kcsc-back-end/src/main/java/com/dbnt/kcscbackend/admin/config/AdminConfigController.java index b610897..e0f2970 100644 --- a/kcsc-back-end/src/main/java/com/dbnt/kcscbackend/admin/config/AdminConfigController.java +++ b/kcsc-back-end/src/main/java/com/dbnt/kcscbackend/admin/config/AdminConfigController.java @@ -530,7 +530,7 @@ public class AdminConfigController extends BaseController { @ApiResponse(responseCode = "200", description = "저장 성공"), @ApiResponse(responseCode = "403", description = "인가된 사용자가 아님") }) - @RequestMapping(method = RequestMethod.GET, value = "/get-site-image") + @RequestMapping(method = RequestMethod.GET, value = "/about-site-mgt/get-site-image") public void getSiteImage(HttpServletResponse response, @RequestParam String fileGrpId) throws Exception { List dbImgList = fileService.findByFileGrpId(fileGrpId); String realFile = dbImgList.get(0).getFilePath(); @@ -576,7 +576,7 @@ public class AdminConfigController extends BaseController { @ApiResponse(responseCode = "200", description = "저장 성공"), @ApiResponse(responseCode = "403", description = "인가된 사용자가 아님") }) - @RequestMapping(method = RequestMethod.PUT, value = "/partner-site-mgt") + @RequestMapping(method = RequestMethod.PUT, value = "/about-site-mgt/partner-site-mgt") public ResultVO savePartnerSite( @Valid TnPartnerSite tnPartnerSite, HttpServletRequest request, @@ -614,7 +614,7 @@ public class AdminConfigController extends BaseController { @ApiResponse(responseCode = "200", description = "삭제 성공"), @ApiResponse(responseCode = "403", description = "인가된 사용자가 아님") }) - @RequestMapping(method = RequestMethod.DELETE, value = "/partner-site-mgt") + @RequestMapping(method = RequestMethod.DELETE, value = "/about-site-mgt/partner-site-mgt") public ResultVO removePartnerSite(@RequestBody TnPartnerSite tnPartnerSite, @AuthenticationPrincipal LoginVO user) { ResultVO resultVO = new ResultVO(); if (user == null) { diff --git a/kcsc-back-end/src/main/java/com/dbnt/kcscbackend/admin/standards/AdminStandardsController.java b/kcsc-back-end/src/main/java/com/dbnt/kcscbackend/admin/standards/AdminStandardsController.java index d0dc80c..17402fa 100644 --- a/kcsc-back-end/src/main/java/com/dbnt/kcscbackend/admin/standards/AdminStandardsController.java +++ b/kcsc-back-end/src/main/java/com/dbnt/kcscbackend/admin/standards/AdminStandardsController.java @@ -38,7 +38,7 @@ public class AdminStandardsController extends BaseController { @ApiResponse(responseCode = "200", description = "조회 성공"), @ApiResponse(responseCode = "403", description = "인가된 사용자가 아님") }) - @RequestMapping(method = RequestMethod.POST, value = "/apikey", consumes = MediaType.APPLICATION_JSON_VALUE) + @RequestMapping(method = RequestMethod.POST, value = "/api-keys", consumes = MediaType.APPLICATION_JSON_VALUE) public ResultVO selectApiList(@RequestBody TnApiKey tnApiKey, @AuthenticationPrincipal LoginVO user) throws Exception { @@ -66,7 +66,7 @@ public class AdminStandardsController extends BaseController { @ApiResponse(responseCode = "303", description = "만료된 토큰"), @ApiResponse(responseCode = "403", description = "인가된 사용자가 아님") }) - @RequestMapping(method = RequestMethod.POST, value = "/apiupdate", consumes = MediaType.APPLICATION_JSON_VALUE) + @RequestMapping(method = RequestMethod.POST, value = "/api-keys/api-update", consumes = MediaType.APPLICATION_JSON_VALUE) public ResultVO modifyApi(@RequestBody TnApiKey tnApiKey, @AuthenticationPrincipal LoginVO user) throws Exception{ ResultVO resultVO = new ResultVO(); @@ -92,7 +92,7 @@ public class AdminStandardsController extends BaseController { @ApiResponse(responseCode = "303", description = "만료된 토큰"), @ApiResponse(responseCode = "403", description = "인가된 사용자가 아님") }) - @RequestMapping(method = RequestMethod.POST, value = "/apiDailyChart", consumes = MediaType.APPLICATION_JSON_VALUE) + @RequestMapping(method = RequestMethod.POST, value = "/api-keys/api-daily-chart", consumes = MediaType.APPLICATION_JSON_VALUE) public ResultVO ApiChart(@RequestBody Map dateRange, @AuthenticationPrincipal LoginVO user) throws Exception{ ResultVO resultVO = new ResultVO(); Map resultMap = new HashMap<>(); diff --git a/kcsc-back-end/src/main/java/com/dbnt/kcscbackend/admin/users/AdminUsersController.java b/kcsc-back-end/src/main/java/com/dbnt/kcscbackend/admin/users/AdminUsersController.java index 2494522..51903ad 100644 --- a/kcsc-back-end/src/main/java/com/dbnt/kcscbackend/admin/users/AdminUsersController.java +++ b/kcsc-back-end/src/main/java/com/dbnt/kcscbackend/admin/users/AdminUsersController.java @@ -48,7 +48,7 @@ public class AdminUsersController extends BaseController { @ApiResponse(responseCode = "200", description = "조회 성공"), @ApiResponse(responseCode = "403", description = "인가된 사용자가 아님") }) - @RequestMapping(method = RequestMethod.GET, value = "/list") + @RequestMapping(method = RequestMethod.GET, value = "/mgt/list") public ResultVO getUserList(UserInfo params, HttpServletRequest request, @AuthenticationPrincipal LoginVO user) throws Exception{ adminLogsService.insertPrivacyLog(user.getId(), ClientUtils.getRemoteIP(request), "PRV_LIST", null); ResultVO resultVO = new ResultVO(); @@ -72,7 +72,7 @@ public class AdminUsersController extends BaseController { @ApiResponse(responseCode = "200", description = "조회 성공"), @ApiResponse(responseCode = "403", description = "인가된 사용자가 아님") }) - @RequestMapping(method = RequestMethod.GET, value = "/info") + @RequestMapping(method = RequestMethod.GET, value = "/mgt/info") public ResultVO getUserInfo(UserInfo params, HttpServletRequest request, @AuthenticationPrincipal LoginVO user) throws Exception{ adminLogsService.insertPrivacyLog(user.getId(), ClientUtils.getRemoteIP(request), "PRV_VIEW", params.getUserId()); ResultVO resultVO = new ResultVO(); @@ -91,7 +91,7 @@ public class AdminUsersController extends BaseController { @ApiResponse(responseCode = "200", description = "수정 성공"), @ApiResponse(responseCode = "403", description = "인가된 사용자가 아님") }) - @RequestMapping(method = RequestMethod.PUT, value = "/info") + @RequestMapping(method = RequestMethod.PUT, value = "/mgt/info") public ResultVO modifyUserInfo(@RequestBody @Valid UserInfo info, Errors errors, HttpServletRequest request, @AuthenticationPrincipal LoginVO user) throws Exception{ adminLogsService.insertPrivacyLog(user.getId(), ClientUtils.getRemoteIP(request), "PRV_UPDT", info.getUserId()); ResultVO resultVO = new ResultVO(); @@ -136,7 +136,7 @@ public class AdminUsersController extends BaseController { @ApiResponse(responseCode = "200", description = "삭제 성공"), @ApiResponse(responseCode = "403", description = "인가된 사용자가 아님") }) - @RequestMapping(method = RequestMethod.DELETE, value = "/info", consumes = MediaType.APPLICATION_JSON_VALUE) + @RequestMapping(method = RequestMethod.DELETE, value = "/mgt/info", consumes = MediaType.APPLICATION_JSON_VALUE) public ResultVO deleteUserInfo(@RequestBody UserInfo info, HttpServletRequest request, @AuthenticationPrincipal LoginVO user) throws Exception{ adminLogsService.insertPrivacyLog(user.getId(), ClientUtils.getRemoteIP(request), "PRV_DLT", info.getUserId()); ResultVO resultVO = new ResultVO(); diff --git a/kcsc-back-end/src/main/java/com/dbnt/kcscbackend/config/common/AuthCheckInterceptor.java b/kcsc-back-end/src/main/java/com/dbnt/kcscbackend/config/common/AuthCheckInterceptor.java index 41350bf..502f833 100644 --- a/kcsc-back-end/src/main/java/com/dbnt/kcscbackend/config/common/AuthCheckInterceptor.java +++ b/kcsc-back-end/src/main/java/com/dbnt/kcscbackend/config/common/AuthCheckInterceptor.java @@ -5,6 +5,8 @@ import com.dbnt.kcscbackend.admin.config.service.ConfigService; import com.dbnt.kcscbackend.admin.users.service.UsersService; import com.dbnt.kcscbackend.auth.entity.LoginVO; import lombok.RequiredArgsConstructor; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; import org.springframework.security.authentication.UsernamePasswordAuthenticationToken; import org.springframework.stereotype.Component; import org.springframework.web.servlet.HandlerInterceptor; @@ -20,9 +22,10 @@ public class AuthCheckInterceptor implements HandlerInterceptor { private final UsersService usersService; private final ConfigService configService; + private final Logger log = LoggerFactory.getLogger(this.getClass().getSimpleName()); @Override - public void postHandle(HttpServletRequest request, HttpServletResponse response, Object handler, ModelAndView mav) throws Exception { + public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler) throws Exception { /*관리자 메뉴 접근시 권한 체크*/ String requestUri = request.getRequestURI(); String userRole = usersService.selectUserInfo(((LoginVO)((UsernamePasswordAuthenticationToken)request.getUserPrincipal()).getPrincipal()).getUserSeq()).getUserRole(); @@ -34,8 +37,7 @@ public class AuthCheckInterceptor implements HandlerInterceptor { break; } } - if(!requestFlag){ - response.sendRedirect("/"); - } + log.info("requestFlag: "+requestFlag); + return requestFlag; } } diff --git a/kcsc-back-end/src/main/resources/mybatisMapper/TcMenuMapper.xml b/kcsc-back-end/src/main/resources/mybatisMapper/TcMenuMapper.xml index 351a07d..4639d22 100644 --- a/kcsc-back-end/src/main/resources/mybatisMapper/TcMenuMapper.xml +++ b/kcsc-back-end/src/main/resources/mybatisMapper/TcMenuMapper.xml @@ -37,7 +37,7 @@ group by menu_id ) b on a.menu_id = b.menu_id where a.use_yn = 'Y' - order by a.menu_id asc + order by a.menu_type_cd desc, a.menu_id asc \ No newline at end of file