feat: swagger doc 분리

main
Jonguk. Lim 12 months ago
parent 3651d681c3
commit 6af9bb5d01

@ -7,6 +7,7 @@ import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.IOException;
import java.net.URLEncoder;
import java.nio.charset.*;
import java.util.Base64;
import java.util.Map;
@ -167,6 +168,7 @@ public class EgovFileDownloadController {
String param_atchFileId = (String) commandMap.get("atchFileId");
param_atchFileId = param_atchFileId.replaceAll(" ", "+");
byte[] decodedBytes = Base64.getDecoder().decode(param_atchFileId);
String decodedFileId = new String(cryptoService.decrypt(decodedBytes,ALGORITM_KEY));
String fileSn = (String) commandMap.get("fileSn");

@ -36,6 +36,7 @@ import io.swagger.v3.oas.annotations.tags.Tag;
*/
@RestController
@Tag(name="EgovFileMngApiController",description = "파일 관리")
@RequestMapping("/api")
public class EgovFileMngApiController {
@Resource(name = "EgovFileMngService")
@ -61,7 +62,7 @@ public class EgovFileMngApiController {
@ApiResponses(value = {
@ApiResponse(responseCode = "200", description = "성공")
})
@PostMapping(value ="/api/file")
@PostMapping(value ="/file")
public ResultVO deleteFileInf(@RequestBody FileVO fileVO) throws Exception {
ResultVO resultVO = new ResultVO();

@ -1,10 +1,6 @@
package egovframework.com.cmm.web;
import java.io.BufferedInputStream;
import java.io.ByteArrayOutputStream;
import java.io.File;
import java.io.FileInputStream;
import java.io.IOException;
import java.io.*;
import java.util.Base64;
import java.util.Map;
@ -112,6 +108,10 @@ public class EgovImageProcessController extends HttpServlet {
FileVO fvo = fileService.selectFileInf(vo);
if (fvo == null) {
throw new FileNotFoundException("요청한 이미지 파일을 찾을 수 없습니다.");
}
//String fileLoaction = fvo.getFileStreCours() + fvo.getStreFileNm();
String fileStreCours = EgovWebUtil.filePathBlackList(fvo.getFileStreCours());
String streFileNm = EgovWebUtil.filePathBlackList(fvo.getStreFileNm());

@ -41,24 +41,24 @@ public class SecurityConfig {
//Http Methpd : Get 인증예외 List
private String[] AUTH_GET_WHITELIST = {
"/mainPage", //메인 화면 리스트 조회
"/board", // 게시판 목록조회
"/board/{bbsId}/{nttId}", // 게시물 상세조회
"/boardFileAtch/{bbsId}", //게시판 파일 첨부가능 여부 조회
"/schedule/daily", //일별 일정 조회
"/schedule/week", //주간 일정 조회
"/schedule/{schdulId}", //일정 상세조회
"/api/mainPage", //메인 화면 리스트 조회
"/api/board", // 게시판 목록조회
"/api/board/{bbsId}/{nttId}", // 게시물 상세조회
"/api/boardFileAtch/{bbsId}", //게시판 파일 첨부가능 여부 조회
"/api/schedule/daily", //일별 일정 조회
"/api/schedule/week", //주간 일정 조회
"/api/schedule/{schdulId}", //일정 상세조회
"/image" //갤러리 이미지보기
};
// 인증 예외 List
private String[] AUTH_WHITELIST = {
"/",
"/login/**",
"/auth/login-jwt",//JWT 로그인
"/auth/login",//일반 로그인
"/file", //파일 다운로드
"/etc/**",//사용자단의 회원약관,회원가입,사용자아이디 중복여부체크 URL허용
"/api/login/**",
"/api/auth/login-jwt",//JWT 로그인
"/api/auth/login",//일반 로그인
"/api/file", //파일 다운로드
"/api/etc/**",//사용자단의 회원약관,회원가입,사용자아이디 중복여부체크 URL허용
"/uat/uia/**",
"/uat/umt/**",
"/index.do",

@ -12,8 +12,7 @@ import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RestController;
import org.springframework.web.bind.annotation.*;
import com.fasterxml.jackson.databind.ObjectMapper;
import com.xit.core.config.support.*;
@ -52,6 +51,7 @@ import lombok.extern.slf4j.Slf4j;
@Slf4j
@RestController
@Tag(name="SnsLoginApiController",description = "Sns 로그인 관련")
@RequestMapping("/api")
public class SnsLoginApiController {
/** EgovLoginService */

@ -12,14 +12,7 @@ import org.egovframe.rte.ptl.mvc.tags.ui.pagination.PaginationInfo;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.security.core.annotation.AuthenticationPrincipal;
import org.springframework.validation.BindingResult;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PatchMapping;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.PutMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;
import org.springframework.web.bind.annotation.*;
import org.springmodules.validation.commons.DefaultBeanValidator;
import egovframework.com.cmm.ComDefaultCodeVO;
@ -61,6 +54,7 @@ import io.swagger.v3.oas.annotations.tags.Tag;
*/
@RestController
@Tag(name="EgovBBSAttributeManageApiController",description = "게시판 속성관리")
@RequestMapping("/api")
public class EgovBBSAttributeManageApiController {

@ -14,13 +14,7 @@ import org.egovframe.rte.ptl.mvc.tags.ui.pagination.PaginationInfo;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.security.core.annotation.AuthenticationPrincipal;
import org.springframework.validation.BindingResult;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PatchMapping;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.PutMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;
import org.springframework.web.bind.annotation.*;
import org.springframework.web.multipart.MultipartFile;
import org.springframework.web.multipart.MultipartHttpServletRequest;
import org.springmodules.validation.commons.DefaultBeanValidator;
@ -73,6 +67,7 @@ import io.swagger.v3.oas.annotations.tags.Tag;
*/
@RestController
@Tag(name="EgovBBSManageApiController",description = "게시물 관리")
@RequestMapping("/api")
public class EgovBBSManageApiController {
@Resource(name="egovJwtTokenUtil")

@ -11,13 +11,7 @@ import org.egovframe.rte.ptl.mvc.tags.ui.pagination.PaginationInfo;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.security.core.annotation.AuthenticationPrincipal;
import org.springframework.validation.BindingResult;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.PutMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;
import org.springframework.web.bind.annotation.*;
import org.springmodules.validation.commons.DefaultBeanValidator;
import egovframework.com.cmm.EgovMessageSource;
@ -58,6 +52,7 @@ import io.swagger.v3.oas.annotations.tags.Tag;
*/
@RestController
@Tag(name="EgovBBSUseInfoManageApiController",description = "게시판 이용정보 관리")
@RequestMapping("/api")
public class EgovBBSUseInfoManageApiController {

@ -16,13 +16,7 @@ import org.egovframe.rte.fdl.property.EgovPropertyService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.security.core.annotation.AuthenticationPrincipal;
import org.springframework.validation.BindingResult;
import org.springframework.web.bind.annotation.DeleteMapping;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.PutMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;
import org.springframework.web.bind.annotation.*;
import org.springframework.web.multipart.MultipartFile;
import org.springframework.web.multipart.MultipartHttpServletRequest;
import org.springmodules.validation.commons.DefaultBeanValidator;
@ -67,6 +61,7 @@ import io.swagger.v3.oas.annotations.tags.Tag;
*/
@RestController
@Tag(name="EgovIndvdlSchdulManageApiController",description = "일정관리")
@RequestMapping("/api")
public class EgovIndvdlSchdulManageApiController {
@Autowired

@ -6,9 +6,7 @@ import java.util.Map;
import javax.annotation.Resource;
import org.egovframe.rte.ptl.mvc.tags.ui.pagination.PaginationInfo;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RestController;
import org.springframework.web.bind.annotation.SessionAttributes;
import org.springframework.web.bind.annotation.*;
import egovframework.com.cmm.ComDefaultVO;
import egovframework.com.cmm.ResponseCode;
@ -39,6 +37,7 @@ import io.swagger.v3.oas.annotations.tags.Tag;
@RestController
@SessionAttributes(types = ComDefaultVO.class)
@Tag(name="EgovMainApiController",description = "메인 페이지")
@RequestMapping("/api")
public class EgovMainApiController {
/**

@ -7,10 +7,7 @@ import javax.annotation.Resource;
import javax.servlet.http.HttpServletRequest;
import org.springframework.security.core.annotation.AuthenticationPrincipal;
import org.springframework.web.bind.annotation.PatchMapping;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RestController;
import org.springframework.web.bind.annotation.*;
import egovframework.com.cmm.LoginVO;
import egovframework.com.cmm.ResponseCode;
@ -48,6 +45,7 @@ import lombok.extern.slf4j.Slf4j;
@Slf4j
@RestController
@Tag(name="EgovSiteManagerApiController",description = "사용자 관리")
@RequestMapping("/api")
public class EgovSiteManagerApiController {
/** EgovSiteManagerService */
@Resource(name = "siteManagerService")

@ -55,7 +55,8 @@ import lombok.extern.slf4j.Slf4j;
*/
@Slf4j
@RestController
@Tag(name="EgovLoginApiController",description = "로그인 관련")
@Tag(name="EgovLoginApiController",description = "로그인 API 관련")
@RequestMapping("/api")
public class EgovLoginApiController {
@Value("${app.auth.save.type:header}")

@ -8,6 +8,7 @@ import javax.servlet.http.*;
import org.egovframe.rte.psl.dataaccess.util.*;
import org.slf4j.*;
import org.springframework.beans.factory.annotation.*;
import org.springframework.http.*;
import org.springframework.security.authentication.*;
import org.springframework.security.core.authority.*;
import org.springframework.security.core.context.*;
@ -29,6 +30,9 @@ import egovframework.com.cmm.util.*;
import egovframework.let.uat.uia.service.*;
import egovframework.let.utl.fcc.service.*;
import egovframework.let.utl.sim.service.*;
import io.swagger.v3.oas.annotations.*;
import io.swagger.v3.oas.annotations.responses.*;
import io.swagger.v3.oas.annotations.tags.*;
import lombok.extern.slf4j.*;
/*
@ -68,6 +72,7 @@ import com.gpki.servlet.GPKIHttpServletResponse;
*/
@Slf4j
@Controller
@Tag(name="EgovLoginController",description = "로그인 MVC 관련")
public class EgovLoginController {
@Value("${Globals.MainPage}")
@ -93,15 +98,20 @@ public class EgovLoginController {
/** log */
private static final Logger LOGGER = LoggerFactory.getLogger(EgovLoginController.class);
/**
*
* @param vo - URL LoginVO
* @return
* @exception Exception
*/
@Operation(
summary = "로그인 페이지",
description = "로그인 페이지 return",
tags = {"EgovLoginController"}
)
@IncludedInfo(name = "로그인", listUrl = "/uat/uia/egovLoginUsr.do", order = 10, gid = 10)
@RequestMapping(value = "/uat/uia/egovLoginUsr.do")
@RequestMapping(value = "/uat/uia/egovLoginUsr.do", method = { RequestMethod.GET, RequestMethod.POST})
public String loginUsrView(@ModelAttribute("loginVO") LoginVO loginVO, HttpServletRequest request, HttpServletResponse response, ModelMap model) throws Exception {
if (EgovComponentChecker.hasComponent("mberManageService")) {
model.addAttribute("useMemberManage", "true");
@ -146,7 +156,12 @@ public class EgovLoginController {
* @return result - ()
* @exception Exception
*/
@RequestMapping(value = "/uat/uia/actionLogin.do")
@Operation(
summary = "로그인",
description = "로그인 처리",
tags = {"EgovLoginController"}
)
@RequestMapping(value = "/uat/uia/actionLogin.do", consumes = MediaType.APPLICATION_FORM_URLENCODED_VALUE)
public String actionLogin(@ModelAttribute("loginVO") LoginVO loginVO, HttpServletRequest request, ModelMap model) throws Exception {
// 1. 로그인인증제한 활성화시
@ -194,9 +209,6 @@ public class EgovLoginController {
SecurityContextHolder.getContext().setAuthentication(authentication);
}
// 3-1. 로그인 정보를 세션에 저장
request.getSession().setAttribute("loginVO", resultVO);
// 2019.10.01 로그인 인증세션 추가
@ -297,6 +309,11 @@ public class EgovLoginController {
* @return
* @exception Exception
*/
@Operation(
summary = "메인 페이지",
description = "메인 페잊 처리",
tags = {"EgovLoginController"}
)
@RequestMapping(value = "/uat/uia/actionMain.do")
public String actionMain(HttpServletRequest request,ModelMap model) throws Exception {
@ -360,7 +377,12 @@ public class EgovLoginController {
* @return String
* @exception Exception
*/
@RequestMapping(value = "/uat/uia/actionLogout.do")
@Operation(
summary = "로그 아웃",
description = "로그 아웃 처리",
tags = {"EgovLoginController"}
)
@RequestMapping(value = "/uat/uia/actionLogout.do", method = { RequestMethod.GET, RequestMethod.POST})
public String actionLogout(HttpServletRequest request, HttpServletResponse response, ModelMap model) throws Exception {
/*String userIp = EgovClntInfo.getClntIP(request);
@ -597,6 +619,11 @@ public class EgovLoginController {
* @return result - String
* @exception Exception
*/
@Operation(
summary = "세션 타임 아웃 시간 연장",
description = "세션 타임 아웃 시간 연장",
tags = {"EgovLoginController"}
)
@RequestMapping(value="/uat/uia/refreshSessionTimeout.do")
public ModelAndView refreshSessionTimeout(@RequestParam Map<String, Object> commandMap) throws Exception {
ModelAndView modelAndView = new ModelAndView();
@ -613,6 +640,11 @@ public class EgovLoginController {
* @return result - String
* @exception Exception
*/
@Operation(
summary = "비밀번호 유효기간 팝업",
description = "비밀번호 유효기간 팝업",
tags = {"EgovLoginController"}
)
@RequestMapping(value="/uat/uia/noticeExpirePwd.do")
public String noticeExpirePwd(@RequestParam Map<String, Object> commandMap, ModelMap model) throws Exception {

@ -14,14 +14,7 @@ import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.security.core.annotation.AuthenticationPrincipal;
import org.springframework.security.web.authentication.logout.SecurityContextLogoutHandler;
import org.springframework.validation.BindingResult;
import org.springframework.web.bind.annotation.DeleteMapping;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.PutMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;
import org.springframework.web.bind.annotation.*;
import org.springmodules.validation.commons.DefaultBeanValidator;
import com.xit.*;
@ -67,6 +60,7 @@ import io.swagger.v3.oas.annotations.tags.Tag;
*/
@RestController
@Tag(name="EgovMberManageApiController",description = "회원 관리")
@RequestMapping("/api")
public class EgovMberManageApiController {
@Resource(name = "egovJwtTokenUtil")

@ -59,7 +59,7 @@ Globals:
Password: ""
# 권한 인증방식 (dummy, session, security)
Auth: security
Auth: session
# 로그인 인증 제한
login:

@ -43,24 +43,25 @@
// 쿠키값을 가져온다
String cValue = c.getValue() ;
if ("egovLatestServerTime".equals(cName)) {
System.out.println("===>>> egovLatestServerTime = "+cName+":"+cValue);
out.println("===>>> egovLatestServerTime = "+cName+":"+cValue);
egovLatestServerTime = cValue;
}
if ("egovExpireSessionTime".equals(cName)) {
System.out.println("===>>> egovExpireSessionTime = "+cName+":"+cValue);
out.println("===>>> egovExpireSessionTime = "+cName+":"+cValue);
egovExpireSessionTime = cValue;
}
out.println("===>>> cookie = "+cName+":"+cValue);
}
}
%>
<script type="text/javaScript" language="javascript" defer="defer">
function getCookie(cname) {
var name = cname + "=";
var decodedCookie = decodeURIComponent(document.cookie);
var ca = decodedCookie.split(';');
for(var i = 0; i <ca.length; i++) {
var c = ca[i];
let name = cname + "=";
let decodedCookie = decodeURIComponent(document.cookie);
let ca = decodedCookie.split(';');
for(let i = 0; i <ca.length; i++) {
let c = ca[i];
while (c.charAt(0) == ' ') {
c = c.substring(1);
}

Loading…
Cancel
Save