From 0734fe370fbcf856464571bb628f898fcdcf27b4 Mon Sep 17 00:00:00 2001 From: ijunho Date: Tue, 21 Oct 2025 14:36:24 +0900 Subject: [PATCH 1/3] Merge branch 'master_tolag3' --- .../kcc/com/cmm/web/EgovComUtlController.java | 59 +++++ .../kcc/let/main/web/EgovMainController.java | 14 ++ .../let/uat/uia/web/EgovLoginController.java | 12 +- .../java/kcc/let/uat/uia/web/SSOValid.java | 216 ------------------ .../prcsInfo/service/VEPrcsDetailVO.java | 10 +- .../mnu/mpm/EgovMenuManage_SQL_Postgresql.xml | 2 +- .../webapp/WEB-INF/jsp/main/EgovMainList.jsp | 56 ++++- 7 files changed, 137 insertions(+), 232 deletions(-) delete mode 100644 src/main/java/kcc/let/uat/uia/web/SSOValid.java diff --git a/src/main/java/kcc/com/cmm/web/EgovComUtlController.java b/src/main/java/kcc/com/cmm/web/EgovComUtlController.java index 2b7cdc5f..e5961a52 100644 --- a/src/main/java/kcc/com/cmm/web/EgovComUtlController.java +++ b/src/main/java/kcc/com/cmm/web/EgovComUtlController.java @@ -12,7 +12,12 @@ import org.springframework.web.bind.annotation.RequestParam; import org.springframework.web.servlet.mvc.support.RedirectAttributes; import egovframework.rte.fdl.property.EgovPropertyService; +import kcc.com.cmm.ComDefaultVO; import kcc.com.cmm.util.RedirectUrlMaker; +import kcc.let.sym.mnu.mpm.service.EgovMenuManageService; +import kcc.let.sym.mnu.mpm.service.MenuManageVO; +import kcc.let.sym.prm.service.EgovProgrmManageService; +import kcc.let.sym.prm.service.ProgrmManageVO; /** * 공통유틸리티성 작업을 위한 Controller 클래스 @@ -37,6 +42,14 @@ public class EgovComUtlController { /** EgovPropertyService */ @Resource(name = "propertiesService") protected EgovPropertyService propertiesService; + + /** EgovProgrmManageService */ + @Resource(name = "progrmManageService") + private EgovProgrmManageService progrmManageService; + + /** EgovMenuManageService */ + @Resource(name = "meunManageService") + private EgovMenuManageService menuManageService; /** * JSP 호출작업만 처리하는 공통 함수 @@ -61,6 +74,52 @@ public class EgovComUtlController { }else if(null != request.getAttribute("baseMenuNo")){ session.setAttribute("baseMenuNo", (String)request.getAttribute("baseMenuNo")); } + else { + try { + ComDefaultVO searchVO = new ComDefaultVO(); + String tempUrl = request.getRequestURI().replace(request.getContextPath(), ""); + + if( + tempUrl.contains("cndtnEduPrcsAplctPrdMngList.do") + || tempUrl.contains("cndtnEduPrcsAplctCfnMngList.do") + ) { + tempUrl = tempUrl.replace("cndtnEduPrcsAplctPrdMngList", "cndtnEduPrcsMngList"); + tempUrl = tempUrl.replace("cndtnEduPrcsAplctCfnMngList", "cndtnEduPrcsMngList"); + } + + searchVO.setSearchKeyword(tempUrl); + ProgrmManageVO progrmManageVO = progrmManageService.selectProgrmUrl(searchVO); + + if(progrmManageVO != null) { + + MenuManageVO tempMenuManageVO = new MenuManageVO(); + tempMenuManageVO.setSearchKeyword(progrmManageVO.getProgrmFileNm()); + MenuManageVO resultVO = menuManageService.selectMenuManage(tempMenuManageVO) ; + + session.setAttribute("baseMenuNo", String.valueOf(resultVO.getMenuNo())); + } + } catch (Exception e) { + System.out.println("%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%"); + System.out.println("%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%"); + System.out.println("%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%"); + System.out.println("%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%"); + System.out.println("%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%"); + System.out.println("%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%"); + System.out.println("%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%"); + System.out.println("%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%"); + System.out.println("%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%"); + System.out.println("%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%"); + System.out.println("%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%"); + System.out.println("%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%"); + System.out.println("%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%"); + System.out.println("%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%"); + System.out.println("%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%"); + System.out.println("%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%"); + System.out.println("%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%"); + System.out.println("%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%"); + System.out.println("%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%"); + } + } // 선택된 메뉴정보를 상단 이름을 세션으로 등록한다. if (baseMenuNm != null && !baseMenuNm.equals("") && !baseMenuNm.equals("null")) { session.setAttribute("baseMenuNm", baseMenuNm); diff --git a/src/main/java/kcc/let/main/web/EgovMainController.java b/src/main/java/kcc/let/main/web/EgovMainController.java index b9e2dd8e..dc515cce 100644 --- a/src/main/java/kcc/let/main/web/EgovMainController.java +++ b/src/main/java/kcc/let/main/web/EgovMainController.java @@ -249,6 +249,14 @@ public class EgovMainController { , HttpSession session) throws Exception{ LoginVO loginVO = checkLoginUtil.getAuthLoginVO(); //권한에 따른 로그인 정보 가져오기 + + if ("ROLE_ADR_JRSDC".equals(loginVO.getAuthority())) { //기소유예 + return "redirect:/kccadr/oprtn/cndtnSspnIdtmt/trgtList.do"; + } else if ("ROLE_ADR_KIPO".equals(loginVO.getAuthority())) { //시정명령 + return "redirect:/kccadr/oprtn/cmdTrgt/trgtList.do"; + } else if ("ROLE_ADR_PREV".equals(loginVO.getAuthority())) { //예방교육 + return "redirect:/kccadr/oprtn/prevent/cndtnEduPrcsMngList.do"; + } /* * notify..? @@ -1167,12 +1175,15 @@ public class EgovMainController { if (today.before(startDate)) { // 접수전 t.setDdlnCd(VeConstants.DDLN_CD_APP_BEFORE); + t.setDdlnCdNm("접수전"); } else if (!today.before(startDate) && !today.after(endDate)) { // 접수중 t.setDdlnCd(VeConstants.DDLN_CD_APP_ING); + t.setDdlnCdNm("접수중"); } else if (today.after(endDate)) { // 접수종료 t.setDdlnCd(VeConstants.DDLN_CD_APP_END); + t.setDdlnCdNm("접수종료"); } } catch (Exception e) { e.printStackTrace(); @@ -1211,12 +1222,15 @@ public class EgovMainController { if (today.before(startDate)) { // 접수전 t.setDdlnCd(VeConstants.DDLN_CD_APP_BEFORE); + t.setDdlnCdNm("접수전"); } else if (!today.before(startDate) && !today.after(endDate)) { // 접수중 t.setDdlnCd(VeConstants.DDLN_CD_APP_ING); + t.setDdlnCdNm("접수중"); } else if (today.after(endDate)) { // 접수종료 t.setDdlnCd(VeConstants.DDLN_CD_APP_END); + t.setDdlnCdNm("접수종료"); } } catch (Exception e) { e.printStackTrace(); diff --git a/src/main/java/kcc/let/uat/uia/web/EgovLoginController.java b/src/main/java/kcc/let/uat/uia/web/EgovLoginController.java index 946ba1e9..aa4b56e6 100644 --- a/src/main/java/kcc/let/uat/uia/web/EgovLoginController.java +++ b/src/main/java/kcc/let/uat/uia/web/EgovLoginController.java @@ -1855,18 +1855,16 @@ public class EgovLoginController { if ("ROLE_ADMIN".equals(loginService.getUserAuth(user).getAuthority())) { // 수퍼관리자 경우 return "redirect:/cmm/main/mainPage.do"; -// return "redirect:/kccadr/oprtn/tngrVisitEdu/areaLctrMngList.do"; } else if ("ROLE_USER_MANAGER".equals(user.getAuthority())) { return "redirect:/web/main/mainPage.do"; } else if ("ROLE_VISIT".equals(user.getAuthority())) { return "redirect:/cmm/main/mainPage.do"; - } else if ("ROLE_ADR_JRSDC".equals(user.getAuthority())) { - return "redirect:/kccadr/oprtn/cndtnSspnIdtmt/trgtList.do"; - //return "redirect:/cmm/main/mainPage.do"; - //return "redirect:/cop/bbs/selectBoardList.do?bbsId=BBSMSTR_000000000040"; + } else if ("ROLE_ADR_JRSDC".equals(user.getAuthority())) { //기소유예 + return "redirect:/kccadr/oprtn/cndtnSspnIdtmt/trgtList.do"; } else if ("ROLE_ADR_KIPO".equals(user.getAuthority())) { //시정명령 - return "redirect:/kccadr/oprtn/cmdTrgt/trgtList.do"; - + return "redirect:/kccadr/oprtn/cmdTrgt/trgtList.do"; + } else if ("ROLE_ADR_PREV".equals(user.getAuthority())) { //예방교육 + return "redirect:/kccadr/oprtn/prevent/cndtnEduPrcsMngList.do"; } else if ("ROLE_USER_MEMBER".equals(user.getAuthority())) { System.out.println("비정상적인 사용자 redirect 임"); return "redirect:/web/main/mainPage.do"; diff --git a/src/main/java/kcc/let/uat/uia/web/SSOValid.java b/src/main/java/kcc/let/uat/uia/web/SSOValid.java deleted file mode 100644 index 1198b376..00000000 --- a/src/main/java/kcc/let/uat/uia/web/SSOValid.java +++ /dev/null @@ -1,216 +0,0 @@ -package kcc.let.uat.uia.web; - -import java.io.IOException; -import java.util.HashMap; - -import javax.servlet.Filter; -import javax.servlet.FilterChain; -import javax.servlet.FilterConfig; -import javax.servlet.ServletException; -import javax.servlet.ServletRequest; -import javax.servlet.ServletResponse; -import javax.servlet.http.HttpServletRequest; -import javax.servlet.http.HttpServletResponse; -import javax.servlet.http.HttpSession; - -import org.springframework.beans.factory.annotation.Value; -import org.springframework.security.core.Authentication; -import org.springframework.security.core.context.SecurityContextHolder; -import org.springframework.security.web.authentication.logout.SecurityContextLogoutHandler; -import org.springframework.stereotype.Component; - -import com.bandi.oauth.BandiSSOAgent; - -import egovframework.rte.fdl.security.userdetails.util.EgovUserDetailsHelper; -import kcc.com.cmm.LoginVO; -import kcc.let.uat.uia.service.SsoLoginVO; - - - - -/*public class SSOValid { - - // agent 관련 설정 - private static String ssoUri = "https://devsso.copyright.or.kr/oauth2/token.do"; // 개발서버 URL - private static String clientId = "해당 시스템의 클라이언트 아이디"; - private static String clientId = "30354835c3684ff79e7fb1bfd3a768f6"; - private static String clientSecret = "해당 시스템의 클라이언트 시크릿"; - private static String clientSecret = "1ueil5ee05wr0t1gjy1ppt212"; - private static String scope = "http://sso.copyright.or.kr"; // 고정 - - public static void main(String[] args) throws Exception { - // SSO 로그인 연계 "BandiSSOAgent 생성" 참조 - BandiSSOAgent agent = new BandiSSOAgent(ssoUri, clientId, clientSecret, scope); - - // 사용자 접속 ip - String client_ip = "127.0.0.1"; - - // 세션에서 취득한 제어 토큰 - String access_token = "95i90zzd57dqvefxx37732fjifkwm00k7piajty0iwq7a...."; - //================================== - // SSO 유효성 검증 (Intercepter에서 매번 실행) - //================================== - // SSO 로그인 연계 "tokenValid 함수 요청" 및 "tokenValid 함수 결과" 참조 - sso 연동 tokenValid 예제 - - System.out.println("------------------------인터셉터 test입니다---------------------------"); - - HashMap tokenValid = agent.tokenValid(access_token, client_ip); - 찾교 intercepter에 포함될 내용 -// ssoLoginVO = (SsoLoginVO)session.getAttribute("SsoLoginVO"); -// HashMap tokenValid = agent.tokenValid(ssoLoginVO.getAccess_token, client_ip); - - if(tokenValid.get("error").equals("0000") == false) { - // 토큰이 유효하지 않는 경우 - // 세션 로그아웃 처리 - - - - } - - //================================== - // SSO 로그 아웃 - //================================== - // SSO 로그인 연계 "logout 함수요청" 참조 - agent.logout(access_token, client_ip); - // 세션 로그아웃 - } -}*/ - -@Component -public class SSOValid implements Filter { - - //SSO agent 관련 설정 - - private static String ssoUri; - - private static String clientId; - - private static String clientSecret; - - private static String scope; - - @Value("#{globalSettings['Globals.sso.ssoUri']}") - public void setSsoUri(String ssoUri) { - SSOValid.ssoUri = ssoUri; - } - @Value("#{globalSettings['Globals.sso.clientId']}") - public void setClientId(String clientId) { - SSOValid.clientId = clientId; - } - @Value("#{globalSettings['Globals.sso.clientSecret']}") - public void setClientSecret(String clientSecret) { - SSOValid.clientSecret = clientSecret; - } - @Value("#{globalSettings['Globals.sso.scope']}") - public void setScope(String scope) { - SSOValid.scope = scope; - } - - /*//실서버 적용시 변경 - // agent 관련 설정 - private static String ssoUri = "https://devsso.copyright.or.kr/oauth2/token.do"; // 개발서버 URL - private static String clientId = "해당 시스템의 클라이언트 아이디"; - private static String clientId = "30354835c3684ff79e7fb1bfd3a768f6"; - private static String clientSecret = "해당 시스템의 클라이언트 시크릿"; - private static String clientSecret = "1ueil5ee05wr0t1gjy1ppt212"; - private static String scope = "http://sso.copyright.or.kr"; // 고정 -*/ - // 초기화 함수 - @Override - public void init(FilterConfig filterConfig) throws ServletException { - } - - // 필터 함수, 브라우저에서 요청이 오면 필터 매핑에 의해 호출된다. - @Override - public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) - throws IOException, ServletException { - - //SSO 로그인 연계 BandiSSOAgent 생성 - BandiSSOAgent agent = new BandiSSOAgent(ssoUri, clientId, clientSecret, scope); - - // 사용자 접속 ip - // agent.getLocalServerIp(request); - String client_ip = "127.0.0.1"; - - //filter에서 세션을 받아오기위해 ServletRequest -> HttpServletRequest 형변환 - HttpServletRequest req = (HttpServletRequest) request; - HttpServletResponse resp = (HttpServletResponse) response; - - //현재 세션 정보 받아오기 - HttpSession session = req.getSession(); - - //SsoLoginVO 세션 정보 취득 - SsoLoginVO ssoLoginVO = new SsoLoginVO(); - ssoLoginVO = (SsoLoginVO)session.getAttribute("SSOLoginVO"); - - //LoginVO 세션 정보 취득 - LoginVO loginVO = new LoginVO(); - loginVO = (LoginVO)session.getAttribute("LoginVO"); - - try { - if(ssoLoginVO != null) { - if("N".equals(ssoLoginVO.getOtherUser())){ - HashMap tokenValid = agent.tokenValid(ssoLoginVO.getAccess_token(), client_ip); - if(tokenValid.get("error").equals("0000")) { - if(loginVO == null) { -// HttpServletResponse httpServletResponse = (HttpServletResponse) response; -// httpServletResponse.sendRedirect("/web/user/login/actionSecurityLogin.do"); - } - }else { - //SSO 로그아웃 요청 - agent.logout(ssoLoginVO.getAccess_token(), client_ip); - if(session.getAttribute("SSOLoginVO") != null) { - session.removeAttribute("SSOLoginVO"); - } - - /*Spring Security 로그아웃*/ - Authentication auth = SecurityContextHolder.getContext().getAuthentication(); - if (auth != null) { - new SecurityContextLogoutHandler().logout(req, resp, auth); - } - //LoginVO 세션 remove - if(session.getAttribute("LoginVO") != null) { - session.removeAttribute("LoginVO"); - } - - session.setAttribute("SsoLogout", "Y"); - - } - } - }else { - if(loginVO != null) { - - LoginVO user = (LoginVO)EgovUserDetailsHelper.getAuthenticatedUser(); - if(! ("ROLE_ADMIN".equals(user.getAuthority()) - || "ROLE_ADR_ADMIN".equals(user.getAuthority()) - || "ROLE_VISIT".equals(user.getAuthority()) - ) - ){ - /*Spring Security 로그아웃*/ - Authentication auth = SecurityContextHolder.getContext().getAuthentication(); - if (auth != null) { - new SecurityContextLogoutHandler().logout(req, resp, auth); - } - //LoginVO 세션 remove - if(session.getAttribute("LoginVO") != null) { - session.removeAttribute("LoginVO"); - } - - session.setAttribute("SsoLogout", "Y"); - } - } - } - }catch(Exception e) { - System.out.println("Exception Occured!!!"); - } - chain.doFilter(request, response); - } - - @Override - public void destroy() { - - } -} - - diff --git a/src/main/java/kcc/ve/instr/tngrVisitEdu/prcsInfo/service/VEPrcsDetailVO.java b/src/main/java/kcc/ve/instr/tngrVisitEdu/prcsInfo/service/VEPrcsDetailVO.java index 3bad16fd..1b67c846 100644 --- a/src/main/java/kcc/ve/instr/tngrVisitEdu/prcsInfo/service/VEPrcsDetailVO.java +++ b/src/main/java/kcc/ve/instr/tngrVisitEdu/prcsInfo/service/VEPrcsDetailVO.java @@ -119,6 +119,7 @@ public class VEPrcsDetailVO extends ComDefaultVO implements Serializable { private String nos; private String ddlnCd; + private String ddlnCdNm; private String nosCnt1; //신청인 private String eduPlace; //교육장소 @@ -1112,5 +1113,12 @@ public class VEPrcsDetailVO extends ComDefaultVO implements Serializable { } public void setCmdTrgtInfoOrd(String cmdTrgtInfoOrd) { this.cmdTrgtInfoOrd = cmdTrgtInfoOrd; - } + } + public String getDdlnCdNm() { + return ddlnCdNm; + } + public void setDdlnCdNm(String ddlnCdNm) { + this.ddlnCdNm = ddlnCdNm; + } + } diff --git a/src/main/resources/egovframework/sqlmap/let/sym/mnu/mpm/EgovMenuManage_SQL_Postgresql.xml b/src/main/resources/egovframework/sqlmap/let/sym/mnu/mpm/EgovMenuManage_SQL_Postgresql.xml index e8532732..87572e5e 100644 --- a/src/main/resources/egovframework/sqlmap/let/sym/mnu/mpm/EgovMenuManage_SQL_Postgresql.xml +++ b/src/main/resources/egovframework/sqlmap/let/sym/mnu/mpm/EgovMenuManage_SQL_Postgresql.xml @@ -102,7 +102,7 @@ AND B.AUTHOR_CODE IN ('ROLE_ANONYMOUS', 'ROLE_USER_MEMBER', 'ROLE_USER_MANAGER') - AND B.AUTHOR_CODE IN ('ROLE_ADMIN', 'ROLE_ADR_ADMIN', 'ROLE_VISIT') + AND B.AUTHOR_CODE IN ('ROLE_ADMIN', 'ROLE_ADR_ADMIN', 'ROLE_VISIT', 'ROLE_ADR_JRSDC', 'ROLE_ADR_KIPO', 'ROLE_ADR_PREV') LIMIT 1 diff --git a/src/main/webapp/WEB-INF/jsp/main/EgovMainList.jsp b/src/main/webapp/WEB-INF/jsp/main/EgovMainList.jsp index e1674639..251838a6 100644 --- a/src/main/webapp/WEB-INF/jsp/main/EgovMainList.jsp +++ b/src/main/webapp/WEB-INF/jsp/main/EgovMainList.jsp @@ -96,7 +96,14 @@ function fncGoDetail(prcsAplctPrdOrd, url){

${list.nosCnt1} / ${list.nos}

-

+

+ + + + + + +

@@ -105,7 +112,7 @@ function fncGoDetail(prcsAplctPrdOrd, url){

확정과정현황

- +
    @@ -122,7 +129,14 @@ function fncGoDetail(prcsAplctPrdOrd, url){

    ${list.nosCnt1} / ${list.nos}

    -

    +

    + + + + + + +

@@ -177,7 +191,14 @@ function fncGoDetail(prcsAplctPrdOrd, url){

${list.nosCnt1} / ${list.nos}

-

+

+ + + + + + +

@@ -203,7 +224,14 @@ function fncGoDetail(prcsAplctPrdOrd, url){

${list.nosCnt1} / ${list.nos}

-

+

+ + + + + + +

@@ -235,7 +263,14 @@ function fncGoDetail(prcsAplctPrdOrd, url){

${list.nosCnt1} / ${list.nos}

-

+

+ + + + + + +

@@ -261,7 +296,14 @@ function fncGoDetail(prcsAplctPrdOrd, url){

${list.nosCnt1} / ${list.nos}

-

+

+ + + + + + +

From b134430a8db028ca1019b339aa950450b7fe21ab Mon Sep 17 00:00:00 2001 From: JIWOO Date: Tue, 21 Oct 2025 15:44:35 +0900 Subject: [PATCH 2/3] =?UTF-8?q?=EC=9D=B4=EC=A7=80=EC=9A=B0=20-=20=EA=B4=80?= =?UTF-8?q?=EB=A6=AC=EC=9E=90=20>=20=EA=B3=BC=EC=A0=95=EA=B4=80=EB=A6=AC?= =?UTF-8?q?=20>=20=EC=82=AC=EC=9A=A9/=EB=AF=B8=EC=82=AC=EC=9A=A9=20?= =?UTF-8?q?=EC=97=85=EB=8D=B0=EC=9D=B4=ED=8A=B8=20=EA=B4=80=EB=A0=A8=20?= =?UTF-8?q?=EC=88=98=EC=A0=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../egovframework/sqlmap/ve/prcs/VEPrcs_SQL_Postgresql.xml | 4 +--- .../jsp/oprtn/cmdTrgt/cndtnEduPrcsAplctPrdMngDetail.jsp | 6 +++--- .../jsp/oprtn/cmdTrgt/cndtnEduPrcsAplctPrdMngMdfy.jsp | 4 ++-- .../jsp/oprtn/cmdTrgt/cndtnEduPrcsAplctPrdMngReg.jsp | 2 +- .../oprtn/cndtnSspnIdtmt/cndtnEduPrcsAplctPrdMngDetail.jsp | 6 +++--- .../oprtn/cndtnSspnIdtmt/cndtnEduPrcsAplctPrdMngMdfy.jsp | 4 ++-- .../jsp/oprtn/cndtnSspnIdtmt/cndtnEduPrcsAplctPrdMngReg.jsp | 4 ++-- .../jsp/oprtn/prevent/cndtnEduPrcsAplctPrdMngDetail.jsp | 6 +++--- .../jsp/oprtn/prevent/cndtnEduPrcsAplctPrdMngMdfy.jsp | 4 ++-- .../jsp/oprtn/prevent/cndtnEduPrcsAplctPrdMngReg.jsp | 2 +- 10 files changed, 20 insertions(+), 22 deletions(-) diff --git a/src/main/resources/egovframework/sqlmap/ve/prcs/VEPrcs_SQL_Postgresql.xml b/src/main/resources/egovframework/sqlmap/ve/prcs/VEPrcs_SQL_Postgresql.xml index 44cbb671..a45dedf9 100644 --- a/src/main/resources/egovframework/sqlmap/ve/prcs/VEPrcs_SQL_Postgresql.xml +++ b/src/main/resources/egovframework/sqlmap/ve/prcs/VEPrcs_SQL_Postgresql.xml @@ -225,9 +225,7 @@ AND a.lctr_div_cd=#lctrDivCd# - - AND COALESCE(A.USE_YN,'Y')='Y' - + AND COALESCE(A.USE_YN,'Y')!='D' /*등록일시*/ diff --git a/src/main/webapp/WEB-INF/jsp/oprtn/cmdTrgt/cndtnEduPrcsAplctPrdMngDetail.jsp b/src/main/webapp/WEB-INF/jsp/oprtn/cmdTrgt/cndtnEduPrcsAplctPrdMngDetail.jsp index 693256e6..a583462f 100644 --- a/src/main/webapp/WEB-INF/jsp/oprtn/cmdTrgt/cndtnEduPrcsAplctPrdMngDetail.jsp +++ b/src/main/webapp/WEB-INF/jsp/oprtn/cmdTrgt/cndtnEduPrcsAplctPrdMngDetail.jsp @@ -509,7 +509,7 @@ 교육장소 - + 관련URL @@ -547,7 +547,7 @@ - + <%--

공개여부(사용여부)

@@ -556,7 +556,7 @@ ${info.useYn eq 'N' ? '비공개' : ''} - + --%>

첨부파일

diff --git a/src/main/webapp/WEB-INF/jsp/oprtn/cmdTrgt/cndtnEduPrcsAplctPrdMngMdfy.jsp b/src/main/webapp/WEB-INF/jsp/oprtn/cmdTrgt/cndtnEduPrcsAplctPrdMngMdfy.jsp index e3848085..d7d17547 100644 --- a/src/main/webapp/WEB-INF/jsp/oprtn/cmdTrgt/cndtnEduPrcsAplctPrdMngMdfy.jsp +++ b/src/main/webapp/WEB-INF/jsp/oprtn/cmdTrgt/cndtnEduPrcsAplctPrdMngMdfy.jsp @@ -368,7 +368,7 @@ - + <%--

공개여부(사용여부)

@@ -379,7 +379,7 @@ - + --%> diff --git a/src/main/webapp/WEB-INF/jsp/oprtn/cmdTrgt/cndtnEduPrcsAplctPrdMngReg.jsp b/src/main/webapp/WEB-INF/jsp/oprtn/cmdTrgt/cndtnEduPrcsAplctPrdMngReg.jsp index 84c2bfaa..ac7d9989 100644 --- a/src/main/webapp/WEB-INF/jsp/oprtn/cmdTrgt/cndtnEduPrcsAplctPrdMngReg.jsp +++ b/src/main/webapp/WEB-INF/jsp/oprtn/cmdTrgt/cndtnEduPrcsAplctPrdMngReg.jsp @@ -226,7 +226,7 @@ - 대면구분 + 교육구분 diff --git a/src/main/webapp/WEB-INF/jsp/oprtn/cndtnSspnIdtmt/cndtnEduPrcsAplctPrdMngDetail.jsp b/src/main/webapp/WEB-INF/jsp/oprtn/cndtnSspnIdtmt/cndtnEduPrcsAplctPrdMngDetail.jsp index ce0b247f..ddb96a00 100644 --- a/src/main/webapp/WEB-INF/jsp/oprtn/cndtnSspnIdtmt/cndtnEduPrcsAplctPrdMngDetail.jsp +++ b/src/main/webapp/WEB-INF/jsp/oprtn/cndtnSspnIdtmt/cndtnEduPrcsAplctPrdMngDetail.jsp @@ -498,7 +498,7 @@ 교육장소 - + 관련URL @@ -536,7 +536,7 @@ - + <%--

공개여부(사용여부)

@@ -545,7 +545,7 @@ ${info.useYn eq 'N' ? '비공개' : ''} - + --%>

첨부파일

diff --git a/src/main/webapp/WEB-INF/jsp/oprtn/cndtnSspnIdtmt/cndtnEduPrcsAplctPrdMngMdfy.jsp b/src/main/webapp/WEB-INF/jsp/oprtn/cndtnSspnIdtmt/cndtnEduPrcsAplctPrdMngMdfy.jsp index a3165d3b..70427031 100644 --- a/src/main/webapp/WEB-INF/jsp/oprtn/cndtnSspnIdtmt/cndtnEduPrcsAplctPrdMngMdfy.jsp +++ b/src/main/webapp/WEB-INF/jsp/oprtn/cndtnSspnIdtmt/cndtnEduPrcsAplctPrdMngMdfy.jsp @@ -366,7 +366,7 @@ - + <%--

공개여부(사용여부)

@@ -377,7 +377,7 @@ - + --%> diff --git a/src/main/webapp/WEB-INF/jsp/oprtn/cndtnSspnIdtmt/cndtnEduPrcsAplctPrdMngReg.jsp b/src/main/webapp/WEB-INF/jsp/oprtn/cndtnSspnIdtmt/cndtnEduPrcsAplctPrdMngReg.jsp index ce40677f..eb8aabc3 100644 --- a/src/main/webapp/WEB-INF/jsp/oprtn/cndtnSspnIdtmt/cndtnEduPrcsAplctPrdMngReg.jsp +++ b/src/main/webapp/WEB-INF/jsp/oprtn/cndtnSspnIdtmt/cndtnEduPrcsAplctPrdMngReg.jsp @@ -226,7 +226,7 @@ - 대면구분 + 교육구분 @@ -315,7 +315,7 @@

상태

- + diff --git a/src/main/webapp/WEB-INF/jsp/oprtn/prevent/cndtnEduPrcsAplctPrdMngDetail.jsp b/src/main/webapp/WEB-INF/jsp/oprtn/prevent/cndtnEduPrcsAplctPrdMngDetail.jsp index 644a65d1..d5e4faf3 100644 --- a/src/main/webapp/WEB-INF/jsp/oprtn/prevent/cndtnEduPrcsAplctPrdMngDetail.jsp +++ b/src/main/webapp/WEB-INF/jsp/oprtn/prevent/cndtnEduPrcsAplctPrdMngDetail.jsp @@ -497,7 +497,7 @@ 교육장소 - + 관련URL @@ -535,7 +535,7 @@ - + <%--

공개여부(사용여부)

@@ -544,7 +544,7 @@ ${info.useYn eq 'N' ? '비공개' : ''} - + --%>

첨부파일

diff --git a/src/main/webapp/WEB-INF/jsp/oprtn/prevent/cndtnEduPrcsAplctPrdMngMdfy.jsp b/src/main/webapp/WEB-INF/jsp/oprtn/prevent/cndtnEduPrcsAplctPrdMngMdfy.jsp index c8074cfd..33130624 100644 --- a/src/main/webapp/WEB-INF/jsp/oprtn/prevent/cndtnEduPrcsAplctPrdMngMdfy.jsp +++ b/src/main/webapp/WEB-INF/jsp/oprtn/prevent/cndtnEduPrcsAplctPrdMngMdfy.jsp @@ -368,7 +368,7 @@ - + <%--

공개여부(사용여부)

@@ -379,7 +379,7 @@ - + --%> diff --git a/src/main/webapp/WEB-INF/jsp/oprtn/prevent/cndtnEduPrcsAplctPrdMngReg.jsp b/src/main/webapp/WEB-INF/jsp/oprtn/prevent/cndtnEduPrcsAplctPrdMngReg.jsp index 0fd64ad1..952ea7cc 100644 --- a/src/main/webapp/WEB-INF/jsp/oprtn/prevent/cndtnEduPrcsAplctPrdMngReg.jsp +++ b/src/main/webapp/WEB-INF/jsp/oprtn/prevent/cndtnEduPrcsAplctPrdMngReg.jsp @@ -226,7 +226,7 @@ - 대면구분 + 교육구분 From 6522b20eb13f000b815ddfc23934f4103846d635 Mon Sep 17 00:00:00 2001 From: subsub Date: Tue, 21 Oct 2025 15:57:35 +0900 Subject: [PATCH 3/3] =?UTF-8?q?(=EC=82=AC=EC=9A=A9=EC=9E=90)=EB=A9=94?= =?UTF-8?q?=EC=9D=B8=20=EC=8A=AC=EB=9D=BC=EC=9D=B4=EB=93=9C=20=EB=B2=88?= =?UTF-8?q?=ED=98=B8=20=EC=88=98=EC=A0=95,=20=EA=B5=90=EC=9C=A1=EB=AC=B8?= =?UTF-8?q?=EC=9D=98=20=ED=83=80=EC=9D=B4=ED=8B=80=20=EC=B6=94=EA=B0=80?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../jsp/web/ve/aplct/cmdTrgt/eduFAQList.jsp | 4 + .../jsp/web/ve/aplct/prevent/eduFAQList.jsp | 6 +- .../jsp/web/ve/aplct/sspnIdtmt/eduFAQList.jsp | 4 + .../visitEdu/usr/publish/css/common.css | 4 +- .../visitEdu/usr/publish/css/content.css | 125 +++++++++++++++--- .../webapp/visitEdu/usr/publish/css/main.css | 8 +- .../visitEdu/usr/publish/script/main.js | 3 + 7 files changed, 133 insertions(+), 21 deletions(-) diff --git a/src/main/webapp/WEB-INF/jsp/web/ve/aplct/cmdTrgt/eduFAQList.jsp b/src/main/webapp/WEB-INF/jsp/web/ve/aplct/cmdTrgt/eduFAQList.jsp index e7a0e78c..364d81bc 100644 --- a/src/main/webapp/WEB-INF/jsp/web/ve/aplct/cmdTrgt/eduFAQList.jsp +++ b/src/main/webapp/WEB-INF/jsp/web/ve/aplct/cmdTrgt/eduFAQList.jsp @@ -157,6 +157,10 @@ " /> " /> + +
+

교육문의

+
diff --git a/src/main/webapp/WEB-INF/jsp/web/ve/aplct/prevent/eduFAQList.jsp b/src/main/webapp/WEB-INF/jsp/web/ve/aplct/prevent/eduFAQList.jsp index d3d5f648..33bb4b2a 100644 --- a/src/main/webapp/WEB-INF/jsp/web/ve/aplct/prevent/eduFAQList.jsp +++ b/src/main/webapp/WEB-INF/jsp/web/ve/aplct/prevent/eduFAQList.jsp @@ -156,7 +156,11 @@ " /> " /> - + + +
+

교육문의

+
diff --git a/src/main/webapp/WEB-INF/jsp/web/ve/aplct/sspnIdtmt/eduFAQList.jsp b/src/main/webapp/WEB-INF/jsp/web/ve/aplct/sspnIdtmt/eduFAQList.jsp index 29c1e80e..a4c15f85 100644 --- a/src/main/webapp/WEB-INF/jsp/web/ve/aplct/sspnIdtmt/eduFAQList.jsp +++ b/src/main/webapp/WEB-INF/jsp/web/ve/aplct/sspnIdtmt/eduFAQList.jsp @@ -157,6 +157,10 @@ " /> " /> + +
+

교육문의

+
diff --git a/src/main/webapp/visitEdu/usr/publish/css/common.css b/src/main/webapp/visitEdu/usr/publish/css/common.css index 2c409e73..b008df98 100644 --- a/src/main/webapp/visitEdu/usr/publish/css/common.css +++ b/src/main/webapp/visitEdu/usr/publish/css/common.css @@ -93,7 +93,7 @@ nav .btn_sitemap i{display:inline-block;width:100%;height:100%;background:url(/i nav .btn_identify i{display:inline-block;width:100%;height:100%;background:url(/ipedu/visitEdu/usr/publish/images/common/icon_identify_mobile.png) no-repeat center center;} .all_menu_wrap{position:fixed;width:100%;padding:45px 0 200px 0;background:#fff;left:0;top:-100%;opacity:0;transition:top .5s;z-index:15;} -.all_menu_wrap.on{top:0;opacity:1;} +.all_menu_wrap.on{top:0;opacity:1;box-shadow:0 3px 10px rgba(0,0,0,0.1);} .all_menu_wrap .top_area{position:relative;} .all_menu_wrap .btn_close{position:absolute;width:40px;height:40px;right:0;bottom:0;} .all_menu_wrap .btn_close i{display:inline-block;width:100%;height:100%;background:url(/ipedu/visitEdu/usr/publish/images/common/icon_close.png) no-repeat center center;} @@ -118,7 +118,7 @@ footer .area_top ul:not(.sns) a::after{position:absolute;content:"";width:2px;he footer .area_top ul:not(.sns) li:last-child a::after{display:none;} footer .area_top ul:not(.sns) li:first-child a{color:#118be5;font-weight:700;padding:0 20px 0 0;} footer .area_top .sns{gap:46px;} -footer .area_bottom .inner{display:flex;padding:60px 0 100px 0;gap:170px;align-items:center;} +footer .area_bottom .inner{display:flex;padding:60px 25px 100px 25px;gap:170px;align-items:center;} footer address{color:#8a8a8a;} footer address p{font-size:2.3rem;line-height:1.5;margin:0 0 8px 0;} footer address span{font-size:2.3rem;font-weight:600;color:#c4c4c4;} diff --git a/src/main/webapp/visitEdu/usr/publish/css/content.css b/src/main/webapp/visitEdu/usr/publish/css/content.css index 2d149cb2..6b2bde0e 100644 --- a/src/main/webapp/visitEdu/usr/publish/css/content.css +++ b/src/main/webapp/visitEdu/usr/publish/css/content.css @@ -283,6 +283,7 @@ duet-date-picker *:focus{outline: auto !important;} .board_view_content{padding:30px 20px;font-size:1.7rem;color:#555;line-height:1.4;border-bottom:1px solid #d8d8d8;box-sizing:border-box;} .board_view .file_wrap{display:flex;padding:20px;margin:-1px 0 0 0;gap:8px;border-left:0;border-right:0;border-radius:0;box-sizing:border-box;} .board_view .file{display:flex;font-size:1.7rem;color:#555;align-items:center;gap:8px;} +.board_view .fileView a{padding:0 0 2px 23px;background-position:left 2px;} /* faq */ .info_box{display:flex;padding:20px 30px;margin:0 0 30px 0;background:#f8f9fa;border-radius:10px;align-items:center;gap:30px;} @@ -553,8 +554,7 @@ duet-date-picker *:focus{outline: auto !important;} /* .tb_type01.tb_view table tbody tr td .put_photo {height: 179px;} */ .tb_type01 table tbody tr td .put_photo .put_photo_in {background-color: #f5f5f5; width: 128px; height: 165px; border: 1px solid #d5d5d5; border-radius: 5px; margin: 7px; box-sizing: border-box; position: relative; overflow: hidden;} .tb_type01 table tbody tr td .put_photo .put_photo_in img {padding-top: 22px;} -.tb_type01 table tbody tr td .put_photo .put_photo_in img.id_pic {padding-top: initial;position: absolute;top: 50%;left: 50%;transform: translate(-50%, -50%); -} +.tb_type01 table tbody tr td .put_photo .put_photo_in img.id_pic {padding-top: initial;position: absolute;top: 50%;left: 50%;transform: translate(-50%, -50%);} .tb_type01 table tbody tr td .put_photo button {width: 90px; height: 35px; font-size: 16px; border-radius: 5px; position: absolute; bottom: 15px; left: 50%; transform: translateX(-50%);} #instrPhoto {padding-top: initial; width: 100%;} /* 파일 다운로드 */ @@ -914,6 +914,7 @@ duet-date-picker *:focus{outline: auto !important;} /*알림마당 > 교육자료실 > 첨부파일 수정*/ .fileView a{display:flex;padding:0 0 0 23px;font-size:1.6rem;font-weight:400;color:#555;white-space:normal; background-image: url(../images/content/icon_file.png); background-repeat: no-repeat; background-position: left 4px;gap:10px;} + #egov_file_view_table ul{display:flex;gap:8px;flex-direction:column;} /*알림마당 > FAQ > 답변 색 수정*/ .full_faq .faq li button{background-color: #f5f5f5;} @@ -975,7 +976,7 @@ duet-date-picker *:focus{outline: auto !important;} /* sub layout */ .container{margin:110px 0 0 0;} - .container .inner .cont_wrap {width: 100%;} + .container .inner .cont_wrap {width: 100%;} .sub_visual{height:180px;;} .sub_visual p,.lnb{display:none;} @@ -997,11 +998,14 @@ duet-date-picker *:focus{outline: auto !important;} .tab.fill{height:120px;margin:0 0 80px 0;} .tab.fill .tab_button{font-size:3.8rem;} + + .tab.line .tab_button{font-size:3.8rem;} /* 기본 input texarea */ select.selType1{min-width:160px;height:80px;font-size:2.8rem;background:url(/ipedu/visitEdu/usr/publish/images/content/icon_select_mobile.png) no-repeat calc(100% - 24px) center;} input[type="text"], .duet-date__input{height:80px;} + .btn_wrap button{height:90px;font-size:3.8rem;} .btn{font-size:3.4rem;padding:0 60px;} .btn.text{padding:0;} @@ -1079,6 +1083,7 @@ duet-date-picker *:focus{outline: auto !important;} .board_util li::before{width:10px;height:10px;top:10px;} .board_view_content{font-size:3.4rem;} + .board_view .fileView a{padding:0 0 2px 46px;background-position:left 1px;} .board_view .file{font-size:3.4rem;gap:16px;} @@ -1153,7 +1158,47 @@ duet-date-picker *:focus{outline: auto !important;} .tb_list01 tbody td button{width:100%;} .tb_list01 tbody td button.btn.regular{width:100%;height:80px;font-size:3.4rem;} .tb_list01 tbody td p+button{vertical-align:top;} - + .tb_list01 tbody td.t_left{padding:0;} + + /* list */ + .tb_tit02 .tb_tit02_left .t_best{height:52px;font-size:4rem;} + .tb_tit02 .btn_wrap1 button.con_more{height:60px;padding:0 30px 0 0;font-size:3rem;background-image:url(../images/content/icon_arrow_mobile.png);background-position:right 20px;} + .tb_list02{border-top:2px solid #858686;border-bottom:1px solid #535353;} + .tb_list02 table,.tb_list02 tbody{display:block;} + .tb_list02 thead{display:none;} + .tb_list02 tr{display:flex;padding:20px 16px;flex-direction:column;justify-content:flex-start;border-bottom:1px solid #e5e5e5;gap:16px;} + .tb_list02 tbody th, .tb_list02 tbody td{border:0;text-align:left;padding:0;font-size:4.8rem;line-height:1.3;} + .tb_list02 a{font-size:5.6rem;} + .tb_list02 tbody th p, .tb_list02 tbody td span{display:inline-block;width:auto;font-size:inherit;font-weight:300;vertical-align:sub;} + .tb_list02 tbody th p{font-size:inherit;font-weight:500;} + .tb_list02 tbody td span{position:relative;margin:0 32px 0 0;padding:0 32px 0 0;font-weight:400;} + .tb_list02 tbody td span::after{position:absolute;content:"";width:4px;height:50px;background:var(--gray-color-light-hover);top:9.5px;right:0} + .tb_list02 tbody td button{width:100%;} + .tb_list02 tbody td button.btn.regular{width:100%;height:80px;font-size:3.4rem;} + .tb_list02 tbody td p+button{vertical-align:top;} + + .q_wrap .q_text{font-size:3.6rem;} + + /* 교육소개 */ + .edu_wrap .tb_type01 table tbody .edu_sus_num li{padding:8px 20px 8px 0;border-radius:100px;} + .edu_wrap .tb_type01 table tbody .edu_sus_num li .num{width:56px;height:56px;font-size:3rem;border-radius:100%;margin:20px 0 20px 20px;} + .edu_wrap .tb_type01 table tbody .edu_sus_num li p{width:calc(100% - 80px);font-size:3.2rem;margin:0 0 0 12px;} + .edu_wrap .tb_type01 table tbody .edu_sus_num li p b{padding:0 30px 0 0;margin:0 30px 0 0;} + .edu_wrap .tb_type01 table tbody .edu_sus_num li p b::after{height:30px;top:10px;} + .edu_wrap .tb_type01 table tbody .edu_sus_num .sus_te p b span{font-size:3rem;} + + /* 나의 강의실 */ + .edu_process li{height:auto;flex-direction:column;padding:60px 0;gap:36px;} + .edu_process i{width:124px;height:124px;} + .edu_process .edu_apply i{background:#e5e5e5 url(/ipedu/visitEdu/usr/publish/images/content/icon_progress01_mobile.png) no-repeat center center;} + .edu_process .edu_register i{background:#e5e5e5 url(/ipedu/visitEdu/usr/publish/images/content/icon_progress02_mobile.png) no-repeat center center;} + .edu_process .edu_close i{background:#e5e5e5 url(/ipedu/visitEdu/usr/publish/images/content/icon_progress03_mobile.png) no-repeat center center;} + .edu_process .text_area{font-size:3.8rem;align-items:center;gap:32px;} + .edu_process .text_area p{font-size:3.4rem;} + .edu_process .text_area p span{font-size:6.6rem;} + + #egov_file_view_table ul{gap:16px;} + .fileView a{padding:0 0 0 46px;font-size:3.2rem;background-image:url(../images/content/icon_file_mobile.png);background-position:left 8px;} } @media all and (max-width: 860px){ @@ -1185,12 +1230,14 @@ duet-date-picker *:focus{outline: auto !important;} .tab.fill{height:60px;margin:0 0 40px 0;} .tab.fill .tab_button{font-size:1.9rem;} + + .tab.line .tab_button{font-size:1.9rem;} /* icon */ .icon.arrow{width:7px;height:12px;background:url(/ipedu/visitEdu/usr/publish/images/content/icon_arrow.png) no-repeat center center;} input[type="text"]{height:56px;} - select.selType1{height:56px;font-size:2.8rem;} + select.selType1{height:56px;font-size:1.8rem;background-size:auto 20%;} .btn{font-size:1.7rem;padding:0 30px;} @@ -1249,10 +1296,11 @@ duet-date-picker *:focus{outline: auto !important;} .board_util li::before{width:5px;height:5px;top:5px;} .board_view_content{font-size:1.7rem;padding:30px 10px;} + .board_view .fileView a{padding:0 0 2px 23px;background-position:left 2px;} .board_view .file{font-size:1.7rem;gap:8px;} /* faq */ - .info_box{padding:15px 30px;} + .info_box{padding:25px 30px;} .info_box i{width:60px;height:60px;} .info_box i::before{width:53px;height:53px;} .info_box i::after{background:url(/ipedu/visitEdu/usr/publish/images/content/icon_faq_mobile.png) no-repeat left top;background-size:100% auto;} @@ -1292,7 +1340,7 @@ duet-date-picker *:focus{outline: auto !important;} /* sub latout */ .container {margin-top:60px;} .container .inner {padding: 0 20px;} - .cont_wrap .cont_tit {padding-bottom: 10px; margin-bottom: 30px;} + .cont_wrap .cont_tit {padding-bottom: 10px; margin-bottom: 20px;} .cont_wrap h2 {font-size: 26px; padding-top: 10px;} .cont_wrap .tit_box {display: block; text-align: center; padding: 15px 20px;} .cont_wrap .tit_box i {display: block; margin: 0 auto;} @@ -1306,6 +1354,7 @@ duet-date-picker *:focus{outline: auto !important;} .btn_wrap {position: relative;} /*.btn_wrap button {display: none; height: 40px; padding: 0 20px; font-size: 16px;} 1123*/ + .btn_wrap.btn_layout01>div{width:auto;} .btn_wrap.btn_layout01 button {height: 40px; padding: 0 20px; font-size: 16px;} .btn_wrap button.m_btn_block {display: inline-block;} .btn_wrap.btn_layout01>.btn_right button.m_btn_block:nth-child(2) {margin-top: 5px;} @@ -1447,15 +1496,15 @@ duet-date-picker *:focus{outline: auto !important;} /*교육신청자대시보드*/ .edu_process {flex-wrap:wrap;} - .edu_process>li {display: flex; border:1px solid #d5d5d5; border-radius: 20px 0; width:100%; font-size:1.8rem;} + .edu_process>li {display:flex;width:100%;border:1px solid #d5d5d5;border-radius:20px 0;font-size:1.8rem;padding:30px 0;gap:18px;flex-direction:row;} .edu_process>li i{width:90px;height:90px;} .edu_process .edu_apply i{background:#e5e5e5 url(/ipedu/visitEdu/usr/publish/images/content/icon_progress01_mobile.png) no-repeat center center;background-size:90% auto;} .edu_process .edu_register i{background:#e5e5e5 url(/ipedu/visitEdu/usr/publish/images/content/icon_progress02_mobile.png) no-repeat center center;background-size:90% auto;} .edu_process .edu_close i{background:#e5e5e5 url(/ipedu/visitEdu/usr/publish/images/content/icon_progress03_mobile.png) no-repeat center center;background-size:90% auto;} - .edu_process .text_area {font-size:20px; font-weight:500; } - .edu_process .text_area p {font-size:16px; font-weight:500; } - .edu_process .text_area p span {font-size:30px; font-weight: bold; } + .edu_process .text_area {font-size:20px;font-weight:500;gap:16px;align-items:flex-start;} + .edu_process .text_area p {font-size:16px;font-weight:500;} + .edu_process .text_area p span {font-size:30px;font-weight:bold;} /*마이페이지 추가*/ @@ -1490,6 +1539,30 @@ duet-date-picker *:focus{outline: auto !important;} .tb_list01 tbody td span{margin:0 16px 0 0;padding:0 16px 0 0;} .tb_list01 tbody td span::after{position:absolute;content:"";width:2px;height:25px;background:var(--gray-color-light-hover);top:4.25px;right:0} .tb_list01 tbody td button.btn.regular{width:100%;height:40px;font-size:1.7rem;} + + /* list */ + .tb_tit02 .tb_tit02_left .t_best{height:26px;font-size:2rem;} + .tb_tit02 .btn_wrap1 button.con_more{height:30px;padding:0 15px 0 0;font-size:1.5rem;background-image:url(../images/content/icon_arrow.png);background-position:right 10px;} + .tb_list02 table{border-top:0;} + .tb_list02 tr{padding:10px 8px;gap:8px;} + .tb_list02 tbody th, .tb_list02 tbody td{font-size:2.4rem;} + .tb_list02 a{font-size:2.8rem;} + .tb_list02 tbody td span{margin:0 16px 0 0;padding:0 16px 0 0;} + .tb_list02 tbody td span::after{width:2px;height:25px;background:var(--gray-color-light-hover);top:5px;right:0} + .tb_list02 tbody td button.btn.regular{height:40px;font-size:1.7rem;} + + .q_wrap .q_text{font-size:1.8rem;padding:12px 17px;} + + /* 교육소개 */ + .edu_wrap .tb_type01 table tbody .edu_sus_num li{padding:0 10px 0 0;} + .edu_wrap .tb_type01 table tbody .edu_sus_num li .num{width:28px;height:28px;font-size:1.5rem;margin:10px 0 10px 10px;} + .edu_wrap .tb_type01 table tbody .edu_sus_num li p{width:calc(100% - 40px);font-size:1.6rem;margin:0 0 0 6px;} + .edu_wrap .tb_type01 table tbody .edu_sus_num li p b{padding:0 15px 0 0;margin:0 15px 0 0;} + .edu_wrap .tb_type01 table tbody .edu_sus_num li p b::after{height:15px;top:5px;} + .edu_wrap .tb_type01 table tbody .edu_sus_num .sus_te p b span{font-size:1.5rem;} + + #egov_file_view_table ul{gap:8px;} + .fileView a{padding:0 0 0 23px;font-size:1.6rem;background-image:url(../images/content/icon_file.png);background-position:left 5px;} } @media (max-width: 479px){ @@ -1498,7 +1571,6 @@ duet-date-picker *:focus{outline: auto !important;} .container .cont_tit .path .home i{width:20px;height:18px;margin:2px 0 0 0;} .container .cont_tit .path li:not(.home)::before{width:7px;top:1.8px;} - select.selType1{font-size:1.8rem;background-size:auto 20%;} .duet-date__toggle{width:56px !important;background-size:auto 25px;} .tab_02 li{width:calc(100%/2);} @@ -1523,7 +1595,16 @@ duet-date-picker *:focus{outline: auto !important;} .edu_process .edu_register i{background:#e5e5e5 url(/ipedu/visitEdu/usr/publish/images/content/icon_progress02_mobile.png) no-repeat center center;background-size:90% auto;} .edu_process .edu_close i{background:#e5e5e5 url(/ipedu/visitEdu/usr/publish/images/content/icon_progress03_mobile.png) no-repeat center center;background-size:90% auto;} - .tb_list01 tbody th, .tb_list01 tbody td{font-size:2rem;} + .tb_list01 tbody th, .tb_list01 tbody td,.tb_list02 tbody th, .tb_list02 tbody td{font-size:1.8rem;} + + + + /* 캘린더형 */ + #sub .fc .fc-toolbar{flex-direction:column-reverse;align-items:end;} + #sub .fc .fc-toolbar .fc-toolbar-chunk:first-child{margin:30px 0 0 0;} + #sub .fc .fc-toolbar .fc-toolbar-chunk:nth-child(2){display:flex;width:100%;justify-content:space-between;align-items:center;} + #sub .fc .fc-today-button{margin:0;} + #sub .fc-toolbar-title{padding:0;font-size:2.4rem !important;} } @@ -1550,7 +1631,7 @@ duet-date-picker *:focus{outline: auto !important;} .edu_wrap .tb_type01 table tbody .edu_sus_num li p b::after{display: none;} .edu_wrap .tb_type01 table tbody .edu_sus_num li .num{margin: 10px 0 10px 5px;} .edu_wrap .edu_img img{width: 100%;} - .btn_wrap.btn_layout01 button {padding:0 7px;}/*1123*/ + .btn_wrap.btn_layout01 button {padding:0 15px;}/*1123*/ } @media all and (max-width: 520px) { @@ -1579,7 +1660,7 @@ duet-date-picker *:focus{outline: auto !important;} .class_m ul li{word-break:break-word;} .class_m ul li>span:first-child{width: 63px;} .class_m ul li>span:last-child{padding-left: 10px;} - .q_wrap .faq li .question, .q_wrap .faq li .answer .answer_i, .q_wrap .faq li .answer .answer_in{padding: 12px 10px 12px 46px;} + .q_wrap .faq li .question, .q_wrap .faq li .answer .answer_i, .q_wrap .faq li .answer .answer_in{padding: 12px 18% 12px 10px;} } @media all and (max-width: 400px){ @@ -1594,7 +1675,19 @@ duet-date-picker *:focus{outline: auto !important;} } @media all and (max-width: 340px){ + + .sub_visual strong{font-size:2.2rem;} + /*교육소개 추가*/ - .edu_wrap .tb_type01 table tbody .edu_sus_num li{width: 110%; padding: 5px;} + .edu_wrap .tb_type01 table tbody .edu_sus_num li{width: 100%; padding: 5px;} .edu_wrap .tb_type01 table tbody .edu_sus_num li .num{width: 20px; height: 20px; font-size: 14px;} + .q_wrap .faq li .question, .q_wrap .faq li .answer .answer_i, .q_wrap .faq li .answer .answer_in{padding:12px 22% 12px 10px;} } + +/* 모바일 캘린더 */ +@media (max-width: 35.9375em){ + .duet-date__dialog{z-index:10;} + .duet-date__dialog-content{max-width:100%;border-radius:20px 20px 0 0;padding:0 8% 20px;box-shadow:0 -8px 10px 0 rgba(0,0,0,0.1);} + .duet-date__dialog-content span{padding:0;} + .list_top .endDate .duet-date__dialog{left:0;} +} \ No newline at end of file diff --git a/src/main/webapp/visitEdu/usr/publish/css/main.css b/src/main/webapp/visitEdu/usr/publish/css/main.css index ecf2c546..e678a46f 100644 --- a/src/main/webapp/visitEdu/usr/publish/css/main.css +++ b/src/main/webapp/visitEdu/usr/publish/css/main.css @@ -8,7 +8,7 @@ .main_title .btn_plus:hover i{transform:rotate(180deg);transition:transform 0.2s;} /* section01 */ -.section01{position:relative;padding:90px 0;} +.section01{position:relative;padding:90px 0;background-size:cover;} .section01::before{position:absolute;content:"";width:100%;height:100%;background-image: url(../images/main/sec01_left_obj.png), url(../images/main/sec01_right_obj.png);background-repeat:no-repeat;background-position: left bottom, right top;left:0;top:0;z-index:0;} .section01::after{position:absolute;content:"";width:100%;height:100%;background:linear-gradient(360deg,rgba(255, 255, 255, 1) 66%, rgba(214, 229, 243, 1) 100%);;background-size:cover;left:0;top:0;z-index:-2;} .section01 .inner{position:relative;background-image: url(../images/main/sec01_left_icon.png), url(../images/main/sec01_right_icon.png);background-repeat:no-repeat;background-position: 30px 15px, calc(100% - 60px) 15px;z-index:1;} @@ -53,6 +53,7 @@ .section02 .inner{position:relative;min-height:488px;z-index:0;} .section02 .main_title{gap:15px;justify-content:center;} +.section02 .btn_plus{display:none;} .section02 .list_content{display:inline-flex;padding:7px;margin:0 auto;background:#fff;border-radius:50px;justify-content:center;} .section02 .tab{width:144px;height:44px;font-size:2.3rem;color:#555;border-radius:44px;} .section02 .on .tab{background:#396ac4;color:#fff;font-weight:600;} @@ -185,7 +186,8 @@ .section03 .banner i,.section03 .banner .summary{display:none;} /* section04 */ - .section04 .inner{gap:100px;} + .section04{padding:0 0 60px 0;} + .section04 .inner{gap:60px;} .section04 .list{margin:40px 0 0 0;} .section04 .list a{padding:46px 16px;} .section04 .list .title{font-size:5.6rem;} @@ -210,6 +212,7 @@ .main_title .btn_plus{width:55px;height:55px;} .main_title .btn_plus i{background:url(/ipedu/visitEdu/usr/publish/images/main/icon_plus_110.png) no-repeat center center;background-size:100%;} + .section01::before{background-size:33% auto;} .section01 .main_title{font-size:3.5rem;} .section01 .box_wrap{gap:30px;} .section01 .box_wrap li{padding:30px;} @@ -223,6 +226,7 @@ .section01 .info p{font-size:2.6rem;width:calc(100% - 66px);} .section01 .info b{font-size:2.6rem;} + .section02{background-image:none;} .section02 .inner{min-height:450px;padding:0 25px;} .section02 .main_title{gap:15px;margin:0 0 25px 0;} .section02 .list_content{padding:7px;} diff --git a/src/main/webapp/visitEdu/usr/publish/script/main.js b/src/main/webapp/visitEdu/usr/publish/script/main.js index fe5affa3..ac5da0e9 100644 --- a/src/main/webapp/visitEdu/usr/publish/script/main.js +++ b/src/main/webapp/visitEdu/usr/publish/script/main.js @@ -16,6 +16,9 @@ $(document).ready(function () { prevEl: '.section03 .btn_prev', }, }); + + var slide03Num = $(".section03 .swiper-slide").length; + $(".slide_location").html(`

1/`+slide03Num+`

`); $(".section03 .btn_pause").click(function () { slideBanner.autoplay.stop();