diff --git a/egovframe-template-simple-react-contribution/src/components/leftmenu/EgovLeftNavAdmin.jsx b/egovframe-template-simple-react-contribution/src/components/leftmenu/EgovLeftNavAdmin.jsx index 56ef0b9..0459419 100644 --- a/egovframe-template-simple-react-contribution/src/components/leftmenu/EgovLeftNavAdmin.jsx +++ b/egovframe-template-simple-react-contribution/src/components/leftmenu/EgovLeftNavAdmin.jsx @@ -20,19 +20,19 @@ function EgovLeftNavAdmin(props) { let activeKey; if (activeFolder === "config") { - activeKey = "0"; + activeKey = 0; } else if (activeFolder === "users") { - activeKey = "1"; + activeKey = 1; } else if (activeFolder === "boards") { - activeKey = "2"; + activeKey = 2; } else if (activeFolder === "standards") { - activeKey = "3"; + activeKey = 3; } else if (activeFolder === "contents") { - activeKey = "4"; + activeKey = 4; } else if (activeFolder === "committee") { - activeKey = "5"; + activeKey = 5; } else if (activeFolder === "logs") { - activeKey = "6"; + activeKey = 6; } // else { // activeKey = "7"; diff --git a/egovframe-template-simple-react-contribution/src/pages/admin/committee/ProgressStatus/Edit.jsx b/egovframe-template-simple-react-contribution/src/pages/admin/committee/ProgressStatus/Edit.jsx index 1cc4804..de58317 100644 --- a/egovframe-template-simple-react-contribution/src/pages/admin/committee/ProgressStatus/Edit.jsx +++ b/egovframe-template-simple-react-contribution/src/pages/admin/committee/ProgressStatus/Edit.jsx @@ -224,7 +224,7 @@ function ProgressStatusEdit(props) { const getList = (orgSearchCondition) => { - EgovNet.requestFetch(`/admin/config/committee-code-management?paramCodeGroup=${orgSearchCondition.paramCodeGroup}¶mCodeLevel=${orgSearchCondition.paramCodeLevel}`, + EgovNet.requestFetch(`/admin/config/committee-code-mgt?paramCodeGroup=${orgSearchCondition.paramCodeGroup}¶mCodeLevel=${orgSearchCondition.paramCodeLevel}`, requestOptions, function (resp) { const myIndex = Number(String(orgSearchCondition.paramCodeLevel).replace('LV_','')) - 1; 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 89ce3ba..cd3d062 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 @@ -27,7 +27,7 @@ function StandardCodeMgt(props) { handleClose(); console.groupCollapsed("AdminPartnerSiteList.retrieveList()"); - const retrieveListURL = '/admin/config/partner-site-list'; + const retrieveListURL = '/admin/config/about-site-mgt/list'; const requestOptions = { method: "GET", diff --git a/egovframe-template-simple-react-contribution/src/pages/admin/config/CommitteeCodeMgt.jsx b/egovframe-template-simple-react-contribution/src/pages/admin/config/CommitteeCodeMgt.jsx index c989b44..ef564cf 100644 --- a/egovframe-template-simple-react-contribution/src/pages/admin/config/CommitteeCodeMgt.jsx +++ b/egovframe-template-simple-react-contribution/src/pages/admin/config/CommitteeCodeMgt.jsx @@ -111,7 +111,7 @@ function CommitteeCodeMgt(props) { const getList = (searchCondition) => { - EgovNet.requestFetch(`/admin/config/committee-code-management?paramCodeGroup=${searchCondition.paramCodeGroup}¶mCodeLevel=${searchCondition.paramCodeLevel}`, + EgovNet.requestFetch(`/admin/config/committee-code-mgt?paramCodeGroup=${searchCondition.paramCodeGroup}¶mCodeLevel=${searchCondition.paramCodeLevel}`, requestOptions, function (resp) { if( searchCondition.paramCodeLevel === 'LV_01' ) { @@ -163,7 +163,7 @@ function CommitteeCodeMgt(props) { const requestTask = () => { - EgovNet.requestFetch(`/admin/config/committee-code-management/${deleteItem.orgId}`, + EgovNet.requestFetch(`/admin/config/committee-code-mgt/${deleteItem.orgId}`, requestOptions, function (resp) { let forChangeObject = {...searchCondition, paramCodeGroup, paramCodeLevel}; diff --git a/egovframe-template-simple-react-contribution/src/pages/admin/config/CommitteeCodeMgt/CommitteeCodeRegistrationPopup.jsx b/egovframe-template-simple-react-contribution/src/pages/admin/config/CommitteeCodeMgt/CommitteeCodeRegistrationPopup.jsx index 7422b46..6b15293 100644 --- a/egovframe-template-simple-react-contribution/src/pages/admin/config/CommitteeCodeMgt/CommitteeCodeRegistrationPopup.jsx +++ b/egovframe-template-simple-react-contribution/src/pages/admin/config/CommitteeCodeMgt/CommitteeCodeRegistrationPopup.jsx @@ -95,7 +95,7 @@ function CommitteeCodeRegistrationPopup(props) { if( props.createOrModifyCondition.mode === CODE.MODE_MODIFY ) { appendRequestURL = `/${props.createOrModifyCondition.target.orgId}`; } - const requestURL = "/admin/config/committee-code-management" + appendRequestURL; + const requestURL = "/admin/config/committee-code-mgt" + appendRequestURL; EgovNet.requestFetch(requestURL, requestOptions, function (resp) { 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 7e187de..b8df330 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/partner-site-mgt', + '/admin/config/about-site-mgt', { method: "PUT", body: formData @@ -90,7 +90,7 @@ function AboutSiteModal({props, reloadFunction}) { function deletePartnerSite(partnerSite){ if(window.confirm("삭제하시겠습니까?")) { EgovNet.requestFetch( - '/admin/config/partner-site-mgt', + '/admin/config/about-site-mgt', { method: "DELETE", headers: { diff --git a/egovframe-template-simple-react-contribution/src/pages/admin/config/baseCode/ChildCodeDiv.jsx b/egovframe-template-simple-react-contribution/src/pages/admin/config/baseCode/ChildCodeDiv.jsx index 150d5ec..e86edcb 100644 --- a/egovframe-template-simple-react-contribution/src/pages/admin/config/baseCode/ChildCodeDiv.jsx +++ b/egovframe-template-simple-react-contribution/src/pages/admin/config/baseCode/ChildCodeDiv.jsx @@ -20,7 +20,7 @@ function ChildCodeDiv({}, ref){ setCodeItemRow([]); setGrpCd(parentCd) EgovNet.requestFetch( - '/admin/config/code-item?grpCd='+parentCd, + '/admin/config/base-code-mgt/code-item?grpCd='+parentCd, { method: "GET" }, @@ -54,7 +54,7 @@ function ChildCodeDiv({}, ref){ alert("코드와 코드명을 입력해주세요.") }else{ EgovNet.requestFetch( - '/admin/config/code-item', + '/admin/config/base-code-mgt/code-item', { method: "POST", headers: { @@ -99,7 +99,7 @@ function ChildCodeDiv({}, ref){ useYn: action==="modify"?'Y':'N' } EgovNet.requestFetch( - '/admin/config/code-item', + '/admin/config/base-code-mgt/code-item', { method: "PUT", headers: { diff --git a/egovframe-template-simple-react-contribution/src/pages/admin/config/baseCode/ParentCodeDiv.jsx b/egovframe-template-simple-react-contribution/src/pages/admin/config/baseCode/ParentCodeDiv.jsx index 8d1e5de..47cb746 100644 --- a/egovframe-template-simple-react-contribution/src/pages/admin/config/baseCode/ParentCodeDiv.jsx +++ b/egovframe-template-simple-react-contribution/src/pages/admin/config/baseCode/ParentCodeDiv.jsx @@ -14,7 +14,7 @@ function ParentCodeDiv({getCodeItem}){ const getCodeGrp = useCallback(()=>{ EgovNet.requestFetch( - '/admin/config/code-grp', + '/admin/config/base-code-mgt/code-grp', { method: "GET" }, @@ -62,7 +62,7 @@ function ParentCodeDiv({getCodeItem}){ alert("코드 그룹을 입력해주세요.") }else{ EgovNet.requestFetch( - '/admin/config/code-grp', + '/admin/config/base-code-mgt/code-grp', { method: "POST", headers: { @@ -102,7 +102,7 @@ function ParentCodeDiv({getCodeItem}){ useYn: action==="modify"?'Y':'N' } EgovNet.requestFetch( - '/admin/config/code-grp', + '/admin/config/base-code-mgt/code-grp', { method: "PUT", headers: { diff --git a/kcsc-back-end/src/main/java/com/dbnt/kcscbackend/admin/committee/AdminCommitteeController.java b/kcsc-back-end/src/main/java/com/dbnt/kcscbackend/admin/committee/AdminCommitteeController.java index 5aac4b0..82c0a8c 100644 --- a/kcsc-back-end/src/main/java/com/dbnt/kcscbackend/admin/committee/AdminCommitteeController.java +++ b/kcsc-back-end/src/main/java/com/dbnt/kcscbackend/admin/committee/AdminCommitteeController.java @@ -1,38 +1,23 @@ package com.dbnt.kcscbackend.admin.committee; import com.dbnt.kcscbackend.admin.committee.service.AdminCommitteeProgressStatusService; -import com.dbnt.kcscbackend.admin.config.entity.TcMenu; -import com.dbnt.kcscbackend.admin.config.entity.TnPartnerSite; -import com.dbnt.kcscbackend.admin.config.model.CreateCommitteeCodeManagementVO; -import com.dbnt.kcscbackend.admin.config.model.SetCommitteeCodeManagementVO; -import com.dbnt.kcscbackend.admin.config.service.AdminCommitteeCodeManagementService; -import com.dbnt.kcscbackend.admin.config.service.AdminConfigService; +import com.dbnt.kcscbackend.admin.config.service.ConfigService; import com.dbnt.kcscbackend.auth.entity.LoginVO; -import com.dbnt.kcscbackend.commonCode.entity.TcCodeGrp; -import com.dbnt.kcscbackend.commonCode.entity.TcCodeItem; import com.dbnt.kcscbackend.commonCode.service.CommonCodeService; import com.dbnt.kcscbackend.config.common.BaseController; import com.dbnt.kcscbackend.config.common.ResponseCode; import com.dbnt.kcscbackend.config.common.ResultVO; -import io.swagger.annotations.ApiParam; import io.swagger.v3.oas.annotations.Operation; import io.swagger.v3.oas.annotations.responses.ApiResponse; import io.swagger.v3.oas.annotations.responses.ApiResponses; import io.swagger.v3.oas.annotations.tags.Tag; import lombok.RequiredArgsConstructor; import org.springframework.data.domain.Pageable; -import org.springframework.http.MediaType; import org.springframework.security.core.annotation.AuthenticationPrincipal; -import org.springframework.validation.Errors; -import org.springframework.validation.FieldError; import org.springframework.web.bind.annotation.*; import javax.annotation.Resource; import javax.servlet.http.HttpServletRequest; -import javax.validation.Valid; -import java.time.LocalDateTime; -import java.util.HashMap; -import java.util.Map; @RestController @RequiredArgsConstructor @@ -40,7 +25,7 @@ import java.util.Map; @Tag(name="AdminCommitteeController", description = "사이트관리 위원회관리 메뉴 컨트롤러") public class AdminCommitteeController extends BaseController { - private final AdminConfigService adminConfigService; + private final ConfigService configService; private final CommonCodeService commonCodeService; @Resource(name = "adminCommitteeProgressStatusService") 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 57e4cb2..b610897 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 @@ -7,7 +7,7 @@ import com.dbnt.kcscbackend.admin.config.model.SetCommitteeCodeManagementVO; import com.dbnt.kcscbackend.admin.config.service.AdminCommitteeCodeManagementService; import com.dbnt.kcscbackend.commonCode.entity.TcCodeGrp; import com.dbnt.kcscbackend.commonCode.entity.TcCodeItem; -import com.dbnt.kcscbackend.admin.config.service.AdminConfigService; +import com.dbnt.kcscbackend.admin.config.service.ConfigService; import com.dbnt.kcscbackend.auth.entity.LoginVO; import com.dbnt.kcscbackend.commonCode.service.CommonCodeService; import com.dbnt.kcscbackend.config.common.BaseController; @@ -47,7 +47,7 @@ import java.util.Map; @Tag(name="AdminConfigController", description = "사이트관리 환결설정 메뉴 컨트롤러") public class AdminConfigController extends BaseController { - private final AdminConfigService adminConfigService; + private final ConfigService configService; private final CommonCodeService commonCodeService; private final FileService fileService; @@ -63,11 +63,11 @@ public class AdminConfigController extends BaseController { @ApiResponse(responseCode = "200", description = "조회 성공"), @ApiResponse(responseCode = "403", description = "인가된 사용자가 아님") }) - @RequestMapping(method = RequestMethod.GET, value = "/code-grp") + @RequestMapping(method = RequestMethod.GET, value = "/base-code-mgt/code-grp") public ResultVO getCodeGrp() throws Exception{ ResultVO resultVO = new ResultVO(); Map resultMap = new HashMap<>(); - resultMap.put("codeGrpList", adminConfigService.selectCodeGrpList()); + resultMap.put("codeGrpList", configService.selectCodeGrpList()); resultVO.setResult(resultMap); return resultVO; } @@ -82,7 +82,7 @@ public class AdminConfigController extends BaseController { @ApiResponse(responseCode = "303", description = "만료된 토큰"), @ApiResponse(responseCode = "403", description = "인가된 사용자가 아님") }) - @RequestMapping(method = RequestMethod.POST, value = "/code-grp", consumes = MediaType.APPLICATION_JSON_VALUE) + @RequestMapping(method = RequestMethod.POST, value = "/base-code-mgt/code-grp", consumes = MediaType.APPLICATION_JSON_VALUE) public ResultVO addCodeGrp(@RequestBody TcCodeGrp codeGrp, @AuthenticationPrincipal LoginVO user) throws Exception{ ResultVO resultVO = new ResultVO(); if(user == null){ @@ -98,7 +98,7 @@ public class AdminConfigController extends BaseController { codeGrp.setFrstCrtDt(LocalDateTime.now()); codeGrp.setFrstCrtId(user.getId()); codeGrp.setUseYn("Y"); - String result = adminConfigService.addCodeGrp(codeGrp); + String result = configService.addCodeGrp(codeGrp); if(result.equals("isSaved")){ resultVO.setResultCode(ResponseCode.SAVE_ERROR.getCode()); resultVO.setResultMessage("중복되는 코드그룹이 있습니다."); @@ -120,7 +120,7 @@ public class AdminConfigController extends BaseController { @ApiResponse(responseCode = "303", description = "만료된 토큰"), @ApiResponse(responseCode = "403", description = "인가된 사용자가 아님") }) - @RequestMapping(method = RequestMethod.PUT, value = "/code-grp", consumes = MediaType.APPLICATION_JSON_VALUE) + @RequestMapping(method = RequestMethod.PUT, value = "/base-code-mgt/code-grp", consumes = MediaType.APPLICATION_JSON_VALUE) public ResultVO modifyCodeGrp(@RequestBody TcCodeGrp codeGrp, @AuthenticationPrincipal LoginVO user) throws Exception{ ResultVO resultVO = new ResultVO(); if(user == null){ @@ -135,7 +135,7 @@ public class AdminConfigController extends BaseController { }else{ codeGrp.setLastChgDt(LocalDateTime.now()); codeGrp.setLastChgId(user.getId()); - String result = adminConfigService.modifyCodeGrp(codeGrp); + String result = configService.modifyCodeGrp(codeGrp); if(result.equals("modified")){ resultVO.setResultCode(ResponseCode.SUCCESS.getCode()); }else{ @@ -155,11 +155,11 @@ public class AdminConfigController extends BaseController { @ApiResponse(responseCode = "200", description = "조회 성공"), @ApiResponse(responseCode = "403", description = "인가된 사용자가 아님") }) - @RequestMapping(method = RequestMethod.GET, value = "/code-item") + @RequestMapping(method = RequestMethod.GET, value = "/base-code-mgt/code-item") public ResultVO getCodeItem(String grpCd) throws Exception{ ResultVO resultVO = new ResultVO(); Map resultMap = new HashMap<>(); - resultMap.put("codeItemList", adminConfigService.selectCodeItemList(grpCd)); + resultMap.put("codeItemList", configService.selectCodeItemList(grpCd)); resultVO.setResult(resultMap); return resultVO; } @@ -174,7 +174,7 @@ public class AdminConfigController extends BaseController { @ApiResponse(responseCode = "303", description = "만료된 토큰"), @ApiResponse(responseCode = "403", description = "인가된 사용자가 아님") }) - @RequestMapping(method = RequestMethod.POST, value = "/code-item", consumes = MediaType.APPLICATION_JSON_VALUE) + @RequestMapping(method = RequestMethod.POST, value = "/base-code-mgt/code-item", consumes = MediaType.APPLICATION_JSON_VALUE) public ResultVO addCodeItem(@RequestBody TcCodeItem codeItem, @AuthenticationPrincipal LoginVO user) throws Exception{ ResultVO resultVO = new ResultVO(); if(user == null){ @@ -190,7 +190,7 @@ public class AdminConfigController extends BaseController { codeItem.setFrstCrtDt(LocalDateTime.now()); codeItem.setFrstCrtId(user.getId()); codeItem.setUseYn("Y"); - String result = adminConfigService.addCodeItem(codeItem); + String result = configService.addCodeItem(codeItem); if(result.equals("isSaved")){ resultVO.setResultCode(ResponseCode.SAVE_ERROR.getCode()); resultVO.setResultMessage("중복되는 코드가 있습니다."); @@ -212,7 +212,7 @@ public class AdminConfigController extends BaseController { @ApiResponse(responseCode = "303", description = "만료된 토큰"), @ApiResponse(responseCode = "403", description = "인가된 사용자가 아님") }) - @RequestMapping(method = RequestMethod.PUT, value = "/code-item", consumes = MediaType.APPLICATION_JSON_VALUE) + @RequestMapping(method = RequestMethod.PUT, value = "/base-code-mgt/code-item", consumes = MediaType.APPLICATION_JSON_VALUE) public ResultVO modifyCodeItem(@RequestBody TcCodeItem codeItem, @AuthenticationPrincipal LoginVO user) throws Exception{ ResultVO resultVO = new ResultVO(); if(user == null){ @@ -227,7 +227,7 @@ public class AdminConfigController extends BaseController { }else{ codeItem.setLastChgDt(LocalDateTime.now()); codeItem.setLastChgId(user.getId()); - String result = adminConfigService.modifyCodeItem(codeItem); + String result = configService.modifyCodeItem(codeItem); if(result.equals("modified")){ resultVO.setResultCode(ResponseCode.SUCCESS.getCode()); }else{ @@ -251,7 +251,7 @@ public class AdminConfigController extends BaseController { public ResultVO getMenuMgt(){ ResultVO resultVO = new ResultVO(); Map resultMap = new HashMap<>(); - resultMap.put("menuList", adminConfigService.selectMenuList()); + resultMap.put("menuList", configService.selectMenuList()); resultVO.setResult(resultMap); return resultVO; } @@ -284,7 +284,7 @@ public class AdminConfigController extends BaseController { resultVO.setResultCode(ResponseCode.AUTH_ERROR.getCode()); resultVO.setResultMessage(ResponseCode.AUTH_ERROR.getMessage()); } else { - adminConfigService.saveMenu(menu, user.getId()); + configService.saveMenu(menu, user.getId()); resultVO.setResultCode(ResponseCode.SUCCESS.getCode()); } } @@ -310,7 +310,7 @@ public class AdminConfigController extends BaseController { resultVO.setResultCode(ResponseCode.AUTH_ERROR.getCode()); resultVO.setResultMessage(ResponseCode.AUTH_ERROR.getMessage()); } else { - String result = adminConfigService.deleteMenu(menu.getMenuId(), user.getId()); + String result = configService.deleteMenu(menu.getMenuId(), user.getId()); if(result==null){ resultVO.setResultCode(ResponseCode.SUCCESS.getCode()); }else if(result.equals("notFind")){ @@ -335,7 +335,7 @@ public class AdminConfigController extends BaseController { public ResultVO getMenuAuthMgt(){ ResultVO resultVO = new ResultVO(); Map resultMap = new HashMap<>(); - resultMap.put("menuList", adminConfigService.selectMenuAuthList()); + resultMap.put("menuList", configService.selectMenuAuthList()); resultMap.put("roleList", commonCodeService.selectCodeItemList("ROLE")); resultVO.setResult(resultMap); return resultVO; @@ -360,7 +360,7 @@ public class AdminConfigController extends BaseController { resultVO.setResultCode(ResponseCode.AUTH_ERROR.getCode()); resultVO.setResultMessage(ResponseCode.AUTH_ERROR.getMessage()); } else { - adminConfigService.editMenuAuth(menu); + configService.editMenuAuth(menu); resultVO.setResultCode(ResponseCode.SUCCESS.getCode()); } } @@ -377,7 +377,7 @@ public class AdminConfigController extends BaseController { @ApiResponse(responseCode = "303", description = "만료된 토큰"), @ApiResponse(responseCode = "403", description = "인가된 사용자가 아님") }) - @GetMapping(value = "/committee-code-management") + @GetMapping(value = "/committee-code-mgt") public ResultVO getCommitteeCodeManagement( @AuthenticationPrincipal LoginVO user, HttpServletRequest request, @@ -424,7 +424,7 @@ public class AdminConfigController extends BaseController { @ApiResponse(responseCode = "303", description = "만료된 토큰"), @ApiResponse(responseCode = "403", description = "인가된 사용자가 아님") }) - @PostMapping(value = "/committee-code-management") + @PostMapping(value = "/committee-code-mgt") public ResultVO createCommitteeCodeManagement( @AuthenticationPrincipal LoginVO user, HttpServletRequest request, @@ -464,7 +464,7 @@ public class AdminConfigController extends BaseController { @ApiResponse(responseCode = "200", description = "등록 성공"), @ApiResponse(responseCode = "403", description = "인가된 사용자가 아님") }) - @DeleteMapping(value = "/committee-code-management/{orgId}") + @DeleteMapping(value = "/committee-code-mgt/{orgId}") public ResultVO deleteSchedule ( @AuthenticationPrincipal LoginVO user, @@ -506,11 +506,11 @@ public class AdminConfigController extends BaseController { @ApiResponse(responseCode = "200", description = "조회 성공"), @ApiResponse(responseCode = "403", description = "인가된 사용자가 아님") }) - @RequestMapping(method = RequestMethod.GET, value = "/partner-site-list", consumes = MediaType.APPLICATION_JSON_VALUE) + @RequestMapping(method = RequestMethod.GET, value = "/about-site-mgt/list", consumes = MediaType.APPLICATION_JSON_VALUE) public ResultVO getPartnerSiteList() throws Exception { ResultVO resultVO = new ResultVO(); Map resultMap = new HashMap<>(); - List tnPartnerSite = adminConfigService.selectPartnerSiteList(); + List tnPartnerSite = configService.selectPartnerSiteList(); for (TnPartnerSite partnerSite : tnPartnerSite) { String fileGrpId = partnerSite.getFileGrpId(); String filePath = fileService.findByFileGrpId(fileGrpId).get(0).getFilePath(); @@ -598,7 +598,7 @@ public class AdminConfigController extends BaseController { } else { System.out.println("@@@ bbs.getBbsSeq() : " + tnPartnerSite.getSiteSeq()); System.out.println("@@@ file : " + file); - adminConfigService.savePartnerSite(tnPartnerSite, request, user, file); + configService.savePartnerSite(tnPartnerSite, request, user, file); resultVO.setResultCode(ResponseCode.SUCCESS.getCode()); } } @@ -620,7 +620,7 @@ public class AdminConfigController extends BaseController { if (user == null) { resultVO.setResultCode(ResponseCode.TOKEN_EXPIRED.getCode()); } else { - String result = adminConfigService.deletePartnerSite(tnPartnerSite, user.getId()); + String result = configService.deletePartnerSite(tnPartnerSite, user.getId()); if (result == null) { resultVO.setResultCode(ResponseCode.SUCCESS.getCode()); } else if (result.equals("notFind")) { @@ -640,7 +640,7 @@ public class AdminConfigController extends BaseController { @ApiResponse(responseCode = "200", description = "등록 성공"), @ApiResponse(responseCode = "403", description = "인가된 사용자가 아님"), }) - @PutMapping(value = "/committee-code-management/{orgId}") + @PutMapping(value = "/committee-code-mgt/{orgId}") public ResultVO setCommitteeCodeManagement( HttpServletRequest request, @AuthenticationPrincipal LoginVO loginVO, diff --git a/kcsc-back-end/src/main/java/com/dbnt/kcscbackend/admin/config/service/AdminConfigService.java b/kcsc-back-end/src/main/java/com/dbnt/kcscbackend/admin/config/service/ConfigService.java similarity index 98% rename from kcsc-back-end/src/main/java/com/dbnt/kcscbackend/admin/config/service/AdminConfigService.java rename to kcsc-back-end/src/main/java/com/dbnt/kcscbackend/admin/config/service/ConfigService.java index d212daa..7a04060 100644 --- a/kcsc-back-end/src/main/java/com/dbnt/kcscbackend/admin/config/service/AdminConfigService.java +++ b/kcsc-back-end/src/main/java/com/dbnt/kcscbackend/admin/config/service/ConfigService.java @@ -1,6 +1,5 @@ package com.dbnt.kcscbackend.admin.config.service; -import com.dbnt.kcscbackend.admin.boards.entity.TnBbs; import com.dbnt.kcscbackend.admin.config.entity.TbMenuRole; import com.dbnt.kcscbackend.admin.config.entity.TcMenu; import com.dbnt.kcscbackend.admin.config.entity.TnPartnerSite; @@ -31,7 +30,7 @@ import java.util.Optional; @Service @RequiredArgsConstructor -public class AdminConfigService extends EgovAbstractServiceImpl { +public class ConfigService extends EgovAbstractServiceImpl { private final TcCodeGrpRepository codeGrpRepository; private final TcCodeItemRepository codeItemRepository; diff --git a/kcsc-back-end/src/main/java/com/dbnt/kcscbackend/admin/leftNav/LeftNavController.java b/kcsc-back-end/src/main/java/com/dbnt/kcscbackend/admin/leftNav/LeftNavController.java index 92785fe..ff89e0b 100644 --- a/kcsc-back-end/src/main/java/com/dbnt/kcscbackend/admin/leftNav/LeftNavController.java +++ b/kcsc-back-end/src/main/java/com/dbnt/kcscbackend/admin/leftNav/LeftNavController.java @@ -2,8 +2,8 @@ package com.dbnt.kcscbackend.admin.leftNav; import com.dbnt.kcscbackend.admin.config.entity.TcMenu; -import com.dbnt.kcscbackend.admin.config.service.AdminConfigService; -import com.dbnt.kcscbackend.admin.users.service.AdminUsersService; +import com.dbnt.kcscbackend.admin.config.service.ConfigService; +import com.dbnt.kcscbackend.admin.users.service.UsersService; import com.dbnt.kcscbackend.auth.entity.LoginVO; import com.dbnt.kcscbackend.config.common.ResultVO; import io.swagger.v3.oas.annotations.tags.Tag; @@ -22,8 +22,8 @@ import java.util.*; @Tag(name="LeftNavController", description = "leftNav 컨트롤러") public class LeftNavController { - private final AdminConfigService adminConfigService; - private final AdminUsersService adminUsersService; + private final ConfigService configService; + private final UsersService usersService; @RequestMapping(method = RequestMethod.GET, value = "/menu") public ResultVO getMenu( @@ -31,8 +31,8 @@ public class LeftNavController { @RequestParam(value="menuType", required = true) String menuTypeCd ){ ResultVO resultVO = new ResultVO(); - String userRole = adminUsersService.selectUserInfo(user.getUserSeq()).getUserRole(); - List menuList = adminConfigService.selectMenuListToRole(menuTypeCd, userRole); + String userRole = usersService.selectUserInfo(user.getUserSeq()).getUserRole(); + List menuList = configService.selectMenuListToRole(menuTypeCd, userRole); Map groupMap = new LinkedHashMap<>(); for(TcMenu menu: menuList){ groupMap.put(menu.getMenuGroup(), menu.getGroupTitle()); 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 83f6025..2494522 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 @@ -2,7 +2,7 @@ package com.dbnt.kcscbackend.admin.users; import com.dbnt.kcscbackend.admin.logs.service.AdminLogsService; -import com.dbnt.kcscbackend.admin.users.service.AdminUsersService; +import com.dbnt.kcscbackend.admin.users.service.UsersService; import com.dbnt.kcscbackend.auth.entity.LoginVO; import com.dbnt.kcscbackend.auth.entity.UserInfo; import com.dbnt.kcscbackend.commonCode.service.CommonCodeService; @@ -35,7 +35,7 @@ import java.util.Map; @Tag(name="AdminConfigController", description = "사이트관리 사용자관리 메뉴 컨트롤러") public class AdminUsersController extends BaseController { - private final AdminUsersService adminUsersService; + private final UsersService usersService; private final AdminLogsService adminLogsService; private final CommonCodeService commonCodeService; @@ -55,8 +55,8 @@ public class AdminUsersController extends BaseController { Map resultMap = new HashMap<>(); params.setQueryInfo(); resultMap.put("userSeOption", commonCodeService.selectCodeItemList("ACC_TYPE")); - resultMap.put("userList", adminUsersService.selectUserList(params)); - params.setContentCnt(adminUsersService.selectUserListCnt(params)); + resultMap.put("userList", usersService.selectUserList(params)); + params.setContentCnt(usersService.selectUserListCnt(params)); params.setPaginationInfo(); resultMap.put("paginationInfo", params); resultVO.setResult(resultMap); @@ -107,7 +107,7 @@ public class AdminUsersController extends BaseController { resultVO.setResultCode(ResponseCode.SAVE_ERROR.getCode()); resultVO.setResultMessage("비밀번호 확인이 잘못 입력되었습니다."); }else { - Integer insertResult = adminUsersService.updateUserInfo(info, user.getId()); + Integer insertResult = usersService.updateUserInfo(info, user.getId()); if(insertResult!=null){ if(insertResult==-1){ resultVO.setResultCode(ResponseCode.SAVE_ERROR.getCode()); @@ -140,7 +140,7 @@ public class AdminUsersController extends BaseController { 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(); - adminUsersService.deleteUserInfo(info.getUserSeq()); + usersService.deleteUserInfo(info.getUserSeq()); resultVO.setResultCode(ResponseCode.SUCCESS.getCode()); return resultVO; } diff --git a/kcsc-back-end/src/main/java/com/dbnt/kcscbackend/admin/users/service/AdminUsersService.java b/kcsc-back-end/src/main/java/com/dbnt/kcscbackend/admin/users/service/UsersService.java similarity index 93% rename from kcsc-back-end/src/main/java/com/dbnt/kcscbackend/admin/users/service/AdminUsersService.java rename to kcsc-back-end/src/main/java/com/dbnt/kcscbackend/admin/users/service/UsersService.java index ed940e4..11a5479 100644 --- a/kcsc-back-end/src/main/java/com/dbnt/kcscbackend/admin/users/service/AdminUsersService.java +++ b/kcsc-back-end/src/main/java/com/dbnt/kcscbackend/admin/users/service/UsersService.java @@ -1,6 +1,5 @@ package com.dbnt.kcscbackend.admin.users.service; -import com.dbnt.kcscbackend.admin.logs.repository.PrivacyLogsRepository; import com.dbnt.kcscbackend.admin.users.mapper.AdminUsersMapper; import com.dbnt.kcscbackend.auth.entity.UserInfo; import com.dbnt.kcscbackend.auth.repository.UserInfoRepository; @@ -14,7 +13,7 @@ import java.util.List; @Service @RequiredArgsConstructor -public class AdminUsersService extends EgovAbstractServiceImpl { +public class UsersService extends EgovAbstractServiceImpl { private final UserInfoRepository userInfoRepository; private final AdminUsersMapper usersMapper; diff --git a/kcsc-back-end/src/main/java/com/dbnt/kcscbackend/auth/EgovLoginApiController.java b/kcsc-back-end/src/main/java/com/dbnt/kcscbackend/auth/EgovLoginApiController.java index 3ffe480..7d6cef7 100644 --- a/kcsc-back-end/src/main/java/com/dbnt/kcscbackend/auth/EgovLoginApiController.java +++ b/kcsc-back-end/src/main/java/com/dbnt/kcscbackend/auth/EgovLoginApiController.java @@ -1,5 +1,6 @@ package com.dbnt.kcscbackend.auth; +import com.dbnt.kcscbackend.admin.users.service.UsersService; import com.dbnt.kcscbackend.auth.entity.UserInfo; import com.dbnt.kcscbackend.auth.service.EgovLoginService; import com.dbnt.kcscbackend.config.common.BaseController; @@ -64,6 +65,7 @@ public class EgovLoginApiController extends BaseController { private final EgovJwtTokenUtil egovJwtTokenUtil; private final RefreshTokenRepository refreshTokenRepository; + private final UsersService usersService; @Operation( summary = "회원가입", @@ -179,7 +181,8 @@ public class EgovLoginApiController extends BaseController { if (refreshToken != null){ String serverToken = refreshToken.getRefreshToken(); if(egovJwtTokenUtil.getUserSeFromToken(clientToken).equals(egovJwtTokenUtil.getUserSeFromToken(serverToken))){ - return egovJwtTokenUtil.getUserIdFromToken(clientToken).equals("admin"); + UserInfo user = usersService.selectUserInfo(Integer.parseInt(egovJwtTokenUtil.getUserSeqFromToken(clientToken))); + return user.getUserRole().equals("ROLE_001")||user.getUserRole().equals("ROLE_002")||user.getUserRole().equals("ROLE_003"); } } return false; diff --git a/kcsc-back-end/src/main/java/com/dbnt/kcscbackend/auth/service/impl/EgovLoginServiceImpl.java b/kcsc-back-end/src/main/java/com/dbnt/kcscbackend/auth/service/impl/EgovLoginServiceImpl.java index 1f07ead..832a746 100644 --- a/kcsc-back-end/src/main/java/com/dbnt/kcscbackend/auth/service/impl/EgovLoginServiceImpl.java +++ b/kcsc-back-end/src/main/java/com/dbnt/kcscbackend/auth/service/impl/EgovLoginServiceImpl.java @@ -64,6 +64,7 @@ public class EgovLoginServiceImpl extends EgovAbstractServiceImpl implements Ego info.setEmail(loginVO.getEmail()); info.setPhoneNum(loginVO.getPhoneNum()); info.setUserSe("ACC_TP02"); + info.setUserRole("ROLE_005"); info.setStatus("USE_ST"); info.setFrstCrtDt(LocalDateTime.now()); userInfoRepository.save(info); 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 new file mode 100644 index 0000000..41350bf --- /dev/null +++ b/kcsc-back-end/src/main/java/com/dbnt/kcscbackend/config/common/AuthCheckInterceptor.java @@ -0,0 +1,41 @@ +package com.dbnt.kcscbackend.config.common; + +import com.dbnt.kcscbackend.admin.config.entity.TcMenu; +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.springframework.security.authentication.UsernamePasswordAuthenticationToken; +import org.springframework.stereotype.Component; +import org.springframework.web.servlet.HandlerInterceptor; +import org.springframework.web.servlet.ModelAndView; + +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; +import java.util.List; + +@Component +@RequiredArgsConstructor +public class AuthCheckInterceptor implements HandlerInterceptor { + + private final UsersService usersService; + private final ConfigService configService; + + @Override + public void postHandle(HttpServletRequest request, HttpServletResponse response, Object handler, ModelAndView mav) throws Exception { + /*관리자 메뉴 접근시 권한 체크*/ + String requestUri = request.getRequestURI(); + String userRole = usersService.selectUserInfo(((LoginVO)((UsernamePasswordAuthenticationToken)request.getUserPrincipal()).getPrincipal()).getUserSeq()).getUserRole(); + List menuList = configService.selectMenuListToRole("MNU_0000", userRole); + boolean requestFlag = false; + for(TcMenu menu: menuList){ + if(requestUri.contains(menu.getMenuUrl())){ + requestFlag = true; + break; + } + } + if(!requestFlag){ + response.sendRedirect("/"); + } + } +} diff --git a/kcsc-back-end/src/main/java/com/dbnt/kcscbackend/config/security/WebMvcConfig.java b/kcsc-back-end/src/main/java/com/dbnt/kcscbackend/config/security/WebMvcConfig.java index d45700d..a0491a0 100644 --- a/kcsc-back-end/src/main/java/com/dbnt/kcscbackend/config/security/WebMvcConfig.java +++ b/kcsc-back-end/src/main/java/com/dbnt/kcscbackend/config/security/WebMvcConfig.java @@ -1,7 +1,10 @@ package com.dbnt.kcscbackend.config.security; +import com.dbnt.kcscbackend.config.common.AuthCheckInterceptor; +import lombok.RequiredArgsConstructor; import org.springframework.context.annotation.Configuration; import org.springframework.web.method.support.HandlerMethodArgumentResolver; +import org.springframework.web.servlet.config.annotation.InterceptorRegistry; import org.springframework.web.servlet.config.annotation.WebMvcConfigurer; import java.util.List; @@ -17,7 +20,19 @@ import java.util.List; * 2023/07/13 crlee 최초 생성 */ @Configuration +@RequiredArgsConstructor public class WebMvcConfig implements WebMvcConfigurer { + private final AuthCheckInterceptor authCheckInterceptor; + + @Override + public void addInterceptors(InterceptorRegistry registry){ + /*관리자 메뉴 접근시 권한 체크*/ + registry.addInterceptor(authCheckInterceptor) + .addPathPatterns("/admin/**") + .excludePathPatterns( + "/admin/dashboard/**" + ); + } @Override public void addArgumentResolvers(List argumentResolvers) { argumentResolvers.add(new CustomAuthenticationPrincipalResolver());