diff --git a/egovframe-template-simple-react-contribution/src/components/EgovFooter.jsx b/egovframe-template-simple-react-contribution/src/components/EgovFooter.jsx index cc5dd62..8a4c718 100644 --- a/egovframe-template-simple-react-contribution/src/components/EgovFooter.jsx +++ b/egovframe-template-simple-react-contribution/src/components/EgovFooter.jsx @@ -1,7 +1,13 @@ -import React from 'react'; -import { Link } from 'react-router-dom'; +import React, { useState, useCallback } from 'react'; +import {Link, NavLink} from 'react-router-dom'; +import URL from "../constants/url"; + +import Collapse from 'react-bootstrap/Collapse' function EgovFooter() { + const [toggle, setToggle] = useState(false); + const toggleFunc = useCallback(() => setToggle(!toggle), [toggle]); + if(window.location.pathname.includes("/standardCode/viewer")){ return null; }else{ @@ -9,34 +15,50 @@ function EgovFooter() {
-
건설기준코드
건설기준위원회
정보제공
센터소개
-
건설기준코드 안내 | 건설기준코드 검색 | (구)건설기준 검색
- 진행현황 | 위원회 일정
- 공지사항 | Q&A | 수요조사 | 주요행사 | 건설교육안내 | 기술자료 | 보도자료 | 관련사이트 | API서비스 | 영문기준 제공 | 건설기준용어 | 건설기준 연구
- 인사말 | 연혁 | 홍보자료 | 주요업무 | 찾아오시는길 +
건설기준코드
건설기준위원회
정보제공
센터소개
+
+ + + 건설기준코드 안내 + 건설기준코드 검색 + (구)건설기준 검색 + 건설기준용어 + 영문기준 제공
+ 진행현황 + 위원회 일정
+ 공지사항 + Q&A + 수요조사 + 주요행사 + 건설교육안내 + 기술자료 + 보도자료 + 관련사이트 + API서비스 + 건설기준 연구 + 설문조사
+
+
+ 인사말 + 연혁 + 홍보자료 + 주요업무 + 찾아오시는길
+
-
-

- -

-
+
+

상호명 : 한국건설기술연구원 | 대표자 : 김병석 | 대표메일 : kcsc@kict.re.kr
사업자등록번호 : 229-82-01135 | 주소 : 경기도 고양시 일산서구 고양대로 283(대화동)

Copyright © 2011 KOREA INSTITUTE of CIVIL ENGINEERING and BUILDING TECHNOLOGY. All Rights Reserved.

-
- {/**/} - {/* */} - {/* */} - {/**/} - {/**/} - {/* */} - {/* */} - {/**/} +
+ 개인정보처리방침 + 이메일 무단수집거부
diff --git a/egovframe-template-simple-react-contribution/src/components/EgovHeader.jsx b/egovframe-template-simple-react-contribution/src/components/EgovHeader.jsx index 6e4f1d7..6f12ea1 100644 --- a/egovframe-template-simple-react-contribution/src/components/EgovHeader.jsx +++ b/egovframe-template-simple-react-contribution/src/components/EgovHeader.jsx @@ -8,6 +8,8 @@ import CODE from 'constants/code'; import { getSessionItem, setSessionItem } from 'utils/storage'; import { getLocalItem, setLocalItem } from 'utils/storage'; import {parseJwt} from "../utils/parseJwt"; +import Col from "react-bootstrap/Col"; +import Row from "react-bootstrap/Row"; function EgovHeader({ loginUser, onChangeLogin }) { console.group("EgovHeader"); @@ -18,9 +20,15 @@ function EgovHeader({ loginUser, onChangeLogin }) { const userInfo = parseJwt(accessToken); const sessionUserId = userInfo?.id; const sessionUserSe = userInfo?.userSe; + const sessionUserRole = userInfo?.userRole; const navigate = useNavigate(); + const [showMore, setShowMore] = useState(false); + const toggleShowMore = () => { + setShowMore(!showMore); + }; + const logInHandler = () => { // 로그인 정보 없을 시 navigate(URL.LOGIN); // PC와 Mobile 열린메뉴 닫기: 2023.04.13(목) 김일국 추가 @@ -57,6 +65,13 @@ function EgovHeader({ loginUser, onChangeLogin }) { ); } + const myHandler = () => { // 로그인 정보 없을 시 + if (sessionUserId) + navigate(URL.MYPAGE); + else + navigate(URL.JOIN); + } + function allMenuControl(){ setMenuDiv(!menuDiv); } @@ -73,27 +88,90 @@ function EgovHeader({ loginUser, onChangeLogin }) { //
-

- -
국가건설기준센터
국가건설기준센터 - 국가건설기준센터{/*국가건설기준센터*/} -

- -
-

주메뉴

- */} + {/*
*/} {/* */} -
- {/* 로그아웃 : 로그인 정보 있을때 */} - {sessionUserId && - <> - {sessionUserId} 님이, {sessionUserSe==='ACC_TP01'?'관리자':'사용자'}로 로그인하셨습니다. - - - } - {/* 로그인 : 로그인 정보 없을 때 */} - {!sessionUserId && - - } -
+ {/*
*/} + {/* /!* 로그아웃 : 로그인 정보 있을때 *!/*/} + {/* {sessionUserId &&*/} + {/* <>*/} + {/* {sessionUserId} {sessionUserRole==='ROLE_001' && '[최고관리]'}{sessionUserRole==='ROLE_002' && '[관리자]'}  */} + {/* */} + {/* */} + {/* */} + {/* }*/} + {/* /!* 로그인 : 로그인 정보 없을 때 *!/*/} + {/* {!sessionUserId &&*/} + {/* */} + {/* }*/} + {/*
*/} {/* */} {/* */} -
- - -
+ {/*
*/} + {/* */} + {/* */} + {/*
*/}
{/* */}

전체메뉴

-
+

건설기준코드

  • (isActive ? "cur" : "")}>건설기준코드 안내
  • (isActive ? "cur" : "")}>건설기준코드 검색
  • +
  • (isActive ? "cur" : "")}>(구)건설기준검색
  • +
  • (isActive ? "cur" : "")}>건설기준용어
  • +
  • (isActive ? "cur" : "")}>영문기준제공
- {/*
-

사이트소개

+
+

건설기준위원회

    -
  • (isActive ? "cur" : "")}>소개
  • -
  • (isActive ? "cur" : "")}>연혁
  • -
  • (isActive ? "cur" : "")}>조직소개
  • -
  • (isActive ? "cur" : "")}>찾아오시는 길
  • +
  • (isActive ? "cur" : "")}>진행현황
  • +
  • (isActive ? "cur" : "")}>위원회일정
-
*/} +
+
+

정보제공

+
    +
  • (isActive ? "cur" : "")}>공지사항
  • +
  • (isActive ? "cur" : "")}>Q&A
  • +
  • (isActive ? "cur" : "")}>수요조사
  • +
  • (isActive ? "cur" : "")}>주요행사
  • +
  • (isActive ? "cur" : "")}>건설교육안내
  • +
  • (isActive ? "cur" : "")}>기술자료
  • +
  • (isActive ? "cur" : "")}>보도자료
  • +
  • (isActive ? "cur" : "")}>관련사이트
  • +
  • (isActive ? "cur" : "")}>API서비스
  • +
  • (isActive ? "cur" : "")}>건설기준연구
  • +
  • (isActive ? "cur" : "")}>설문조사
  • +
+
+
+

센터소개

+
    +
  • (isActive ? "cur" : "")}>인사말
  • +
  • (isActive ? "cur" : "")}>연혁
  • +
  • (isActive ? "cur" : "")}>홍보자료
  • +
  • (isActive ? "cur" : "")}>주요업무
  • +
  • (isActive ? "cur" : "")}>찾아오시는길
  • +
+
-
-

정보마당

-
    -
  • (isActive ? "cur" : "")}>주요사업 소개
  • -
  • (isActive ? "cur" : "")}>대표서비스 소개
  • -
-
-
-

고객지원

-
    -
  • (isActive ? "cur" : "")}>자료실
  • -
  • (isActive ? "cur" : "")}>묻고 답하기
  • -
  • (isActive ? "cur" : "")}>서비스 신청
  • -
-
-
-

알림마당

-
    -
  • 오늘의 행사
  • -
  • (isActive ? "cur" : "")}>금주의 행사
  • -
  • (isActive ? "cur" : "")}>공지사항
  • -
  • (isActive ? "cur" : "")}>사이트 갤러리
  • -
-
+ {/*
*/} + {/*

정보마당

*/} + {/*
    */} + {/*
  • (isActive ? "cur" : "")}>주요사업 소개
  • */} + {/*
  • (isActive ? "cur" : "")}>대표서비스 소개
  • */} + {/*
*/} + {/*
*/} + {/*
*/} + {/*

고객지원

*/} + {/*
    */} + {/*
  • (isActive ? "cur" : "")}>자료실
  • */} + {/*
  • (isActive ? "cur" : "")}>묻고 답하기
  • */} + {/*
  • (isActive ? "cur" : "")}>서비스 신청
  • */} + {/*
*/} + {/*
*/} + {/*
*/} + {/*

알림마당

*/} + {/*
    */} + {/*
  • 오늘의 행사
  • */} + {/*
  • (isActive ? "cur" : "")}>금주의 행사
  • */} + {/*
  • (isActive ? "cur" : "")}>공지사항
  • */} + {/*
  • (isActive ? "cur" : "")}>사이트 갤러리
  • */} + {/*
*/} + {/*
*/} {sessionUserSe ==='ACC_TP01' && -
+

사이트관리

    -
  • (isActive ? "cur" : "")}>대시보드
  • +
  • (isActive ? "cur" : "")}>Dashboard
  • {/*
  • (isActive ? "cur" : "")}>게시판생성관리
  • (isActive ? "cur" : "")}>게시판사용관리
  • (isActive ? "cur" : "")}>공지사항관리
  • @@ -186,8 +292,22 @@ function EgovHeader({ loginUser, onChangeLogin }) {
} + {sessionUserId && +
+ +
+ } + {!sessionUserId && +
+ +
+ }
+ + + + {/* */}
@@ -209,9 +329,10 @@ function EgovHeader({ loginUser, onChangeLogin }) {

사이트소개

    -
  • (isActive ? "cur" : "")}>소개
  • +
  • (isActive ? "cur" : "")}>인사말
  • (isActive ? "cur" : "")}>연혁
  • -
  • (isActive ? "cur" : "")}>조직소개
  • +
  • (isActive ? "cur" : "")}>홍보자료
  • +
  • (isActive ? "cur" : "")}>주요업무
  • (isActive ? "cur" : "")}>찾아오시는 길
diff --git a/egovframe-template-simple-react-contribution/src/constants/url.js b/egovframe-template-simple-react-contribution/src/constants/url.js index ddae056..3eaf86c 100644 --- a/egovframe-template-simple-react-contribution/src/constants/url.js +++ b/egovframe-template-simple-react-contribution/src/constants/url.js @@ -5,46 +5,74 @@ const URL = { LOGIN : "/login", //로그인 JOIN : "/join", //회원가입 + MYPAGE : "/mypage", //나의페이지 ERROR : "/error", //에러 + PRIVATE : "/private", //개인정보처리방침 + EMAIL : "/email", //이메일 무단 수집 거부 //ABOUT ABOUT : "/about", //사이트소개 ABOUT_SITE : "/about/site", // 사이트소개/소개 ABOUT_HISTORY : "/about/history", // 사이트소개/연혁 + ABOUT_PROMOTE : "/about/promote", // 사이트소개/홍보자료 ABOUT_ORGANIZATION : "/about/organization", // 사이트소개/조직소개 ABOUT_LOCATION : "/about/location", // 사이트소개/찾아오시는길 //INTRO - INTRO : "/intro", //정보마당 - INTRO_WORKS : "/intro/works", // 정보마당/주요사업소개 - INTRO_SERVICE : "/intro/service", // 정보마당/주요서비스소개 - + // INTRO : "/intro", //정보마당 + // INTRO_WORKS : "/intro/works", // 정보마당/주요사업소개 + // INTRO_SERVICE : "/intro/service", // 정보마당/주요서비스소개 + + //COMMITTEE + COMMITTEE : "/committee", //위원회 + COMMITTEE_PROGRESS : "/committee/progress", // 위원회/진행현황 + COMMITTEE_SCHEDULE : "/committee/schedule", // 위원회/위원회일정 + //SUPPORT SUPPORT : "/support", // 고객지원 - SUPPORT_DOWNLOAD : "/support/download", // 고객지원/자료실 - SUPPORT_DOWNLOAD_DETAIL : "/support/download/detail", // 고객지원/자료실/상세 - SUPPORT_DOWNLOAD_CREATE : "/support/download/create", // 고객지원/자료실/등록 - SUPPORT_QNA : "/support/qna", // 고객지원/묻고답하기 - SUPPORT_QNA_DETAIL : "/support/qna/detail", // 고객지원/묻고답하기/상세 - SUPPORT_APPLY : "/support/apply", // 고객지원/서비스신청 + SUPPORT_LIST : "/support/list", // 게시판/리스트 + SUPPORT_VIEW : "/support/detail", // 게시판/상세보기 + SUPPORT_CREATE : "/support/create", // 게시판/글쓰기 + SUPPORT_SITE : "/support/site", // 관련사이트 + SUPPORT_API : "/support/api", // API 서비스 + SUPPORT_RESEARCH : "/support/research", // 건설기준 연구 + SUPPORT_POLL : "/support/poll", // 설문조사 + // SUPPORT_DOWNLOAD : "/support/download", // 고객지원/자료실 + // SUPPORT_DOWNLOAD_DETAIL : "/support/download/detail", // 고객지원/자료실/상세 + // SUPPORT_DOWNLOAD_CREATE : "/support/download/create", // 고객지원/자료실/등록 + // SUPPORT_QNA : "/support/qna", // 고객지원/묻고답하기 + // SUPPORT_QNA_DETAIL : "/support/qna/detail", // 고객지원/묻고답하기/상세 + // SUPPORT_APPLY : "/support/apply", // 고객지원/서비스신청 //INFORM - INFORM : "/inform", // 알림마당 - INFORM_DAILY : "/inform/daily", // 알림마당/오늘의행사 - INFORM_DAILY_DETAIL : "/inform/daily/detail", // 알림마당/오늘의행사상세 - INFORM_WEEKLY : "/inform/weekly", // 알림마당/금주의행사 - INFORM_WEEKLY_DETAIL : "/inform/weekly/detail", // 알림마당/금주의행사상세 - INFORM_NOTICE : "/inform/notice", // 알림마당/공지사항 - INFORM_NOTICE_DETAIL : "/inform/notice/detail", // 알림마당/공지사항상세 - INFORM_NOTICE_CREATE : "/inform/notice/create", // 알림마당/공지사항등록 - INFORM_NOTICE_MODIFY : "/inform/notice/modify", // 알림마당/공지사항수정 - INFORM_NOTICE_REPLY : "/inform/notice/reply", // 알림마당/공지사항답글 - INFORM_GALLERY : "/inform/gallery", // 알림마당/사이트갤러리 - INFORM_GALLERY_DETAIL : "/inform/gallery/detail", // 알림마당/사이트갤러리상세 - INFORM_GALLERY_CREATE : "/inform/gallery/create", // 알림마당/사이트갤러리등록 - INFORM_GALLERY_MODIFY : "/inform/gallery/modify", // 알림마당/사이트갤러리수정 - INFORM_GALLERY_REPLY : "/inform/gallery/reply", // 알림마당/사이트갤러리답글 - + // INFORM : "/inform", // 알림마당 + // INFORM_DAILY : "/inform/daily", // 알림마당/오늘의행사 + // INFORM_DAILY_DETAIL : "/inform/daily/detail", // 알림마당/오늘의행사상세 + // INFORM_WEEKLY : "/inform/weekly", // 알림마당/금주의행사 + // INFORM_WEEKLY_DETAIL : "/inform/weekly/detail", // 알림마당/금주의행사상세 + // INFORM_NOTICE : "/inform/notice", // 알림마당/공지사항 + // INFORM_NOTICE_DETAIL : "/inform/notice/detail", // 알림마당/공지사항상세 + // INFORM_NOTICE_CREATE : "/inform/notice/create", // 알림마당/공지사항등록 + // INFORM_NOTICE_MODIFY : "/inform/notice/modify", // 알림마당/공지사항수정 + // INFORM_NOTICE_REPLY : "/inform/notice/reply", // 알림마당/공지사항답글 + // INFORM_GALLERY : "/inform/gallery", // 알림마당/사이트갤러리 + // INFORM_GALLERY_DETAIL : "/inform/gallery/detail", // 알림마당/사이트갤러리상세 + // INFORM_GALLERY_CREATE : "/inform/gallery/create", // 알림마당/사이트갤러리등록 + // INFORM_GALLERY_MODIFY : "/inform/gallery/modify", // 알림마당/사이트갤러리수정 + // INFORM_GALLERY_REPLY : "/inform/gallery/reply", // 알림마당/사이트갤러리답글 + + //기준코드 + STANDARD_CODE_INFO : "/standardCode/info", //건설기준코드/건설기준코드 안내 + STANDARD_CODE_TERM : "/standardCode/term", //건설기준코드/건설기준코드 용어 + STANDARD_CODE_ENG : "/standardCode/eng", //건설기준코드/영문 건설기준코드 + STANDARD_CODE_OLD : "/standardCode/old", //건설기준코드/(구)건설기준코드 + STANDARD_CODE_LIST : "/standardCode/list", //건설기준코드/리스트 + STANDARD_CODE_LIST_LINK : "/standardCode/list/:listCode", //건설기준코드/리스트 + STANDARD_CODE_DETAIL : "/standardCode/detail", //건설기준코드/리스트 + STANDARD_CODE_VIEWER : "/standardCode/viewer", //건설기준코드/뷰어 + STANDARD_CODE_VIEWER_LINK : "/standardCode/viewer/:linkedDocCode", //건설기준코드/뷰어/새 창 링크 + + //ADMIN ADMIN : "/admin", // 사이트관리 ADMIN_SCHEDULE : "/admin/schedule", // 사이트관리/일정관리 @@ -122,13 +150,6 @@ const URL = { ADMIN__LOGS__PRIVACY_LOGS : "/admin/logs/privacy-logs", // 위원회 관리/개인정보 로그 ADMIN__LOGS__FILE_DOWNLOAD_STATUS : "/admin/logs/file-download-status", // 위원회 관리/파일 다운현황 - //기준코드 - STANDARD_CODE_INFO : "/standardCode/info", - STANDARD_CODE_LIST : "/standardCode/list", //건설기준코드/리스트 - STANDARD_CODE_LIST_LINK : "/standardCode/list/:listCode", //건설기준코드/리스트 - STANDARD_CODE_DETAIL : "/standardCode/detail", //건설기준코드/리스트 - STANDARD_CODE_VIEWER : "/standardCode/viewer", //건설기준코드/뷰어 - STANDARD_CODE_VIEWER_LINK : "/standardCode/viewer/:linkedDocCode", //건설기준코드/뷰어/새 창 링크 diff --git a/egovframe-template-simple-react-contribution/src/css/base.css b/egovframe-template-simple-react-contribution/src/css/base.css index 761408a..48e6477 100644 --- a/egovframe-template-simple-react-contribution/src/css/base.css +++ b/egovframe-template-simple-react-contribution/src/css/base.css @@ -1,32 +1,39 @@ @charset "utf-8"; /* Web Font */ -@font-face {font-family: 'Noto Sans KR';font-style: normal;font-weight: 300; - src: url(https://fonts.gstatic.com/ea/notosanskr/v2/NotoSansKR-Light.woff2) format('woff2'), - url(https://fonts.gstatic.com/ea/notosanskr/v2/NotoSansKR-Light.woff) format('woff'), - url(https://fonts.gstatic.com/ea/notosanskr/v2/NotoSansKR-Light.otf) format('opentype');} - -@font-face {font-family: 'Noto Sans KR';font-style: normal;font-weight: 400;src: - url(https://fonts.gstatic.com/ea/notosanskr/v2/NotoSansKR-Regular.woff2) format('woff2'), - url(https://fonts.gstatic.com/ea/notosanskr/v2/NotoSansKR-Regular.woff) format('woff'), - url(https://fonts.gstatic.com/ea/notosanskr/v2/NotoSansKR-Regular.otf) format('opentype');} - -@font-face {font-family: 'Noto Sans KR';font-style: normal;font-weight: 500; - src: url(https://fonts.gstatic.com/ea/notosanskr/v2/NotoSansKR-Medium.woff2) format('woff2'), - url(https://fonts.gstatic.com/ea/notosanskr/v2/NotoSansKR-Medium.woff) format('woff'), - url(https://fonts.gstatic.com/ea/notosanskr/v2/NotoSansKR-Medium.otf) format('opentype');} - -@font-face {font-family: 'Noto Sans KR';font-style: normal;font-weight: 700; - src: url(https://fonts.gstatic.com/ea/notosanskr/v2/NotoSansKR-Bold.woff2) format('woff2'), - url(https://fonts.gstatic.com/ea/notosanskr/v2/NotoSansKR-Bold.woff) format('woff'), - url(https://fonts.gstatic.com/ea/notosanskr/v2/NotoSansKR-Bold.otf) format('opentype');} +/*@font-face {font-family: 'Noto Sans KR';font-style: normal;font-weight: 300;*/ +/* src: url(https://fonts.gstatic.com/ea/notosanskr/v2/NotoSansKR-Light.woff2) format('woff2'),*/ +/* url(https://fonts.gstatic.com/ea/notosanskr/v2/NotoSansKR-Light.woff) format('woff'),*/ +/* url(https://fonts.gstatic.com/ea/notosanskr/v2/NotoSansKR-Light.otf) format('opentype');}*/ + +/*@font-face {font-family: 'Noto Sans KR';font-style: normal;font-weight: 400;src:*/ +/* url(https://fonts.gstatic.com/ea/notosanskr/v2/NotoSansKR-Regular.woff2) format('woff2'),*/ +/* url(https://fonts.gstatic.com/ea/notosanskr/v2/NotoSansKR-Regular.woff) format('woff'),*/ +/* url(https://fonts.gstatic.com/ea/notosanskr/v2/NotoSansKR-Regular.otf) format('opentype');}*/ + +/*@font-face {font-family: 'Noto Sans KR';font-style: normal;font-weight: 500;*/ +/* src: url(https://fonts.gstatic.com/ea/notosanskr/v2/NotoSansKR-Medium.woff2) format('woff2'),*/ +/* url(https://fonts.gstatic.com/ea/notosanskr/v2/NotoSansKR-Medium.woff) format('woff'),*/ +/* url(https://fonts.gstatic.com/ea/notosanskr/v2/NotoSansKR-Medium.otf) format('opentype');}*/ + +/*@font-face {font-family: 'Noto Sans KR';font-style: normal;font-weight: 700;*/ +/* src: url(https://fonts.gstatic.com/ea/notosanskr/v2/NotoSansKR-Bold.woff2) format('woff2'),*/ +/* url(https://fonts.gstatic.com/ea/notosanskr/v2/NotoSansKR-Bold.woff) format('woff'),*/ +/* url(https://fonts.gstatic.com/ea/notosanskr/v2/NotoSansKR-Bold.otf) format('opentype');}*/ + +@font-face { + font-family: 'Pretendard-Regular'; + src: url('font/Pretendard-Regular.otf'); + font-weight: normal; + font-style: normal; +} /* Reset style */ * {word-break: keep-all; word-wrap: break-word; box-sizing: border-box; -webkit-box-sizing: border-box;} html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, em, font, img, ins, q, s, small, strike, strong, sub, sup, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, thead, tbody, tfoot, tr, th, td, input { - margin: 0; padding: 0; + margin: 0; padding: 0; font-family: 'Pretendard-Regular'; } blockquote, button, fieldset, iframe {border: 0;} diff --git a/egovframe-template-simple-react-contribution/src/css/layout.css b/egovframe-template-simple-react-contribution/src/css/layout.css index e669895..28a03f0 100644 --- a/egovframe-template-simple-react-contribution/src/css/layout.css +++ b/egovframe-template-simple-react-contribution/src/css/layout.css @@ -2,49 +2,79 @@ body {min-width: 1400px;} -.header {position: relative;} -.header::after {content: ""; display: block; position: absolute; left: 0; bottom: 0; width: 100%; height: 1px; background: #dedede;} -.header > .inner {position: relative; width: 1400px; height: 150px; margin: 0 auto; padding: 0 50px;} +/*.header {position: relative;}*/ +.header::after {content: ""; display: block; left: 0; bottom: 0; width: 100%; height: 1px; background: #dedede;} +.header > .inner {max-width: 1400px; height: 210px; margin: 0 auto; } /* position: relative; padding: 0 50px; */ .header h1 {display: inline-block; margin-top: 32px;} .header h1 a, .header h1 img {display: block;} .header .logo .m {display: none;} .header .logo .logotop {display: flex; width: 220px; justify-content: flex-end;} .header .user_info {position: absolute; right: 50px; top: 10px; line-height: 30px;} -.header .user_info .person {display: inline-block; color: #169bd5; font-weight: 500;} -.header .user_info .person::before {content: ""; display: inline-block; width: 22px; height: 22px; margin-right: 7px; background: url(css/images/ico_person.png) no-repeat; background-size: contain; vertical-align: -4px;} +.header .person {width: 30px; height: 30px; margin-right:20px; cursor: pointer;} +.header .person::before {content: ""; display: inline-block; width: 30px; height: 30px; background: url(css/images/ico_user.png) no-repeat center bottom; background-size: 30px 30px; } .header .user_info .btn {margin-left: 14px; padding: 0 20px; border-radius: 15px; color: #fff; font-size: 14px; line-height: 30px; background: #169bd5;} -.header .gnb {position: absolute; left: 430px; top: 50px; width: 920px;} -.header .gnb ul {font-size: 0; text-align: center;} -.header .gnb ul::after {content: ""; display: block; clear: both;} -.header .gnb ul li {float: left;} -.header .gnb ul li + li {margin-left: 98px;} -.header .gnb ul li a {color: #666; font-size: 20px; font-weight: 700; letter-spacing: -0.25px;} -.header .gnb ul li a.cur {color: #222;} +/*.header .gnb {position: absolute; left: 430px; top: 50px; width: 920px;}*/ +/*.header .gnb ul {font-size: 0; text-align: center;}*/ +/*.header .gnb ul::after {content: ""; display: block; clear: both;}*/ +/*.header .gnb ul li {float: left;}*/ +/*.header .gnb ul li + li {margin-left: 98px;}*/ +/*.header .gnb ul li a {color: #666; font-size: 20px; font-weight: 700; letter-spacing: -0.25px;}*/ +/*.header .gnb ul li a.cur {color: #222;}*/ -.header .right_a {position: absolute; right: 50px; top: 65px;} -.header .right_a .btn {width: 30px; height: 30px; font-size: 0; background: url(css/images/ico_allmenu.png) no-repeat right; background-size: 22px 18px;} -.header .right_a .btn.active {background: url(css/images/ico_allmenu_close.png) no-repeat right; background-size: 22px 18px;} +/*.header .right_a {position: absolute; right: 50px; top: 65px;}*/ +.header .right_a .btn {width: 30px; height: 30px; font-size: 0; background: url(css/images/ico_allmenu.png) no-repeat center; background-size: 22px 18px;} +.header .right_a .btn.active {background: url(css/images/ico_allmenu_close.png) no-repeat center; background-size: 22px 18px;} .header .right_a .btn.mobile {display: none;} -.header .topsearch {width: 25px; height: 27px; background: url(css/images/ico_search_b.png) no-repeat; margin: 5px;} +.header .search {height:96px; padding:24px 0px 10px; margin: 0 auto; } +.header .search .search_input {max-width: 734px; width: calc(100% - 40px); height:62px; margin: 0 auto; border: 2px solid #004994; border-radius: 20px; padding: 10px} +.header .search .search_input select {border: none;} +.header .search .search_input input {ime-mode:active; border: none;} +.header .search .topsearch {width: 40px; height: 40px; background: url(css/images/ico_search_b.png) no-repeat center center; background-size: 22px 22px; filter: brightness(1) sepia(1) saturate(3) hue-rotate(175deg);} -/* All menu */ -.all_menu {transition: transform .2s ease-in-out, opacity .2s ease-in-out; transform-origin: top; z-index: 10;} +.header .topcode {position: relative; width: 100%; top: -8px;} +.header .topcode .topcode_c {max-width: 1020px; margin:0 auto; border: 1px solid #ccc; z-index: 100; border-radius: 10px; box-shadow: 1px 1px 5px rgba(0, 0, 0, 0.2); background-color: #fff; padding: 0 20px; } +.header .topcode .topcode_n {max-width: 1020px; margin:0 auto; border: 1px solid #fff; z-index: 100; background-color: #fff; padding: 0 20px; } +.header .topcode .row {flex-wrap: wrap; padding: 8px 0; } +.header .topcode .topcodebnt { + min-width: 45px; + height: 40px; + line-height: 40px; + display: block; + background-color: #fff; + text-align: center; + border-radius: 20px; + color: #909090; + text-decoration: none; + /*margin: 5px;*/ + padding: 0 12px 0 12px; + box-shadow: 3px 3px 5px rgba(0, 0, 0, 0.2); +} + +.header .topcode .topcodebnt:hover{ + background-color: #8F8F8F; + color: #fff; + box-shadow: 3px 3px 5px rgba(0, 0, 0, 0.4); +} + + /* All menu */ +.all_menu {transition: transform .2s ease-in-out, opacity .2s ease-in-out; transform-origin: top; z-index: 10; padding: 50px 20px;} .all_menu.Mobile {display: none;} .all_menu.WEB.closed {transform: scaleY(0); opacity: 0;} -.all_menu.WEB {position: absolute; left: 0; top: 150px; width: 100%; background: #fff;} -.all_menu.WEB::after {content: ""; display: block; position: absolute; left: 0; bottom: 0; width: 100%; height: 1px; background: #ddd;} -.all_menu.WEB .inner {width: 1400px; margin: 0 auto; padding: 41px 50px 47px 50px;} -.all_menu.WEB .inner::after {content: ""; display: block; clear: both;} -.all_menu.WEB .inner .col {float: left; width: 280px;} -.all_menu.WEB .inner .col:last-child {width: auto;} -.all_menu.WEB .inner .col h3 {color: #222; font-size: 24px; font-weight: 700; pointer-events: none;} -.all_menu.WEB .inner .col ul {padding-top: 36px;} -.all_menu.WEB .inner .col ul li + li {margin-top: 17px;} -.all_menu.WEB .inner .col ul li a {color: #777; font-size: 18px;} -.all_menu.WEB .inner .col ul li a:hover {color: #222; text-decoration: underline;} +.all_menu.WEB {position: absolute; right: calc((100% - 1400px) / 2); top: 70px; width: 340px; background: #fff; border-radius: 20px; box-shadow: 0px 2px 5px rgba(0, 0, 0, 0.2); z-index: 200;} +/*.all_menu.WEB::after {content: ""; display: block; position: absolute; left: 0; bottom: 0; width: 100%; height: 1px; background: #ddd;}*/ +/*.all_menu.WEB .inner {width: 1400px; margin: 0 auto; } !* padding: 41px 50px 47px 50px; *!*/ +/*.all_menu.WEB .inner::after {content: ""; display: block; clear: both;}*/ +/*.all_menu.WEB .inner .col {float: left; width: 280px;}*/ +/*.all_menu.WEB .inner .col:last-child {width: auto;}*/ +.all_menu.WEB .inner h3 {color: #222; font-size: 20px; font-weight: 700; pointer-events: none;} +.all_menu.WEB .inner ul {display: flex; flex-wrap: wrap; padding: 16px 0 16px;} +.all_menu.WEB .inner ul li {padding: 0 15px 0 0;} +.all_menu.WEB .inner ul li a {color: #777; font-size: 12px;} +.all_menu.WEB .inner ul li a:hover {color: #333; border-bottom: 1px solid transparent; transition: border-color 0.3s; border-color: #36588B; } +/*.inner img {height: 35px !important;}*/ .user_info_m {display: none;} @@ -79,22 +109,27 @@ body {min-width: 1400px;} .footer {position: relative; background-color: #2c394b; } -.footer .upper {width: 100%; background-color: #384556; font-size: 12px;} -.footer .upper .up {width: 1400px; margin: 0 auto; padding: 10px 50px; } -.footer .upper .up .left {text-align: right; color: #B4B5B7; font-weight: 700;} -.footer .upper .up .right {color: #96A1AE; } -.footer::before {content: ""; display: block; position: absolute; left: 0; top: 0; width: 100%; height: 1px; background: #ccc;} -.footer .inner {position: relative; width: 1400px; margin: 0 auto; padding: 0 50px;} +.footer .upper {width: 100%; background-color: #384556; font-size: 12px; border-bottom: 1px solid #56626F;} +.footer .upper .up {width: 1400px; margin: 0 auto; padding: 20px 0; } +.footer .upper .up .left {width: 100px; color: #D9DADB; font-weight: 700; line-height: 30px;} +.footer .upper .up .right {color: #96A1AE; line-height: 30px;} +.footer .upper .up .right a {color: #96A1AE; margin-right: 15px;} +.footer .upper .open {width: 100px; text-align: right; } +.footer .upper button {color: #fff; border: 1px solid #A2A2A2; padding: 3px 30px;} +.footer::before {content: ""; display: block; width: 100%; height: 1px; background: #ccc;} +.footer .inner {width: 1400px; margin: 0 auto; } .footer .inner::after {content: ""; display: block; clear: both;} .footer h1 {float: left; width: 220px; padding-top: 20px;} .footer h1 .m {display: none;} -.footer .info {float: left; padding: 14px 10px; color: #888; font-size: 13px; } +.footer .info {padding: 20px 0; color: #A4A4A4; font-size: 12px; } .footer .info .copy {padding-top: 5px;} .footer .info .m_show {display: none;} -.footer .right_col {position: absolute; right: 0; top: 73px; font-size: 0;} -.footer .right_col a {display: inline-block; margin-right: 60px; vertical-align: top;} -.footer .right_col a .m {display: none;} -.footer .right_col img {display: block;} +.footer .right_col {width: 220px; text-align: right;} +.footer .right_col a {color: #A4A4A4; font-size: 12px;} + /*.footer .right_col {position: absolute; right: 0; top: 73px; font-size: 0;}*/ +/*.footer .right_col a {display: inline-block; margin-right: 60px; vertical-align: top;}*/ +/*.footer .right_col a .m {display: none;}*/ +/*.footer .right_col img {display: block;}*/ /* popup */ @@ -138,4 +173,40 @@ body {min-width: 1400px;} .msg_1 + .tit_5 {margin-top: 42px;} -.qna_a + .replay {margin-top: 30px;} \ No newline at end of file +.qna_a + .replay {margin-top: 30px;} + + + +.btn-22498E { + --bs-btn-color: #fff; + --bs-btn-bg: #22498E; + --bs-btn-border-color: #22498E; + --bs-btn-hover-color: #fff; + --bs-btn-hover-bg: #2B5AB3; + --bs-btn-hover-border-color: #2B5AB3; + --bs-btn-focus-shadow-rgb: 130, 138, 145; + --bs-btn-active-color: #fff; + --bs-btn-active-bg: #2B5AB3; + --bs-btn-active-border-color: #51585e; + --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125); + --bs-btn-disabled-color: #1B376D; + --bs-btn-disabled-bg: #2a4702; + --bs-btn-disabled-border-color: #1B376D; +} + +.btn-outline-22498E { + --bs-btn-color: #22498E; + --bs-btn-border-color: #2B5AB3; + --bs-btn-hover-color: #fff; + --bs-btn-hover-bg: #22498E; + --bs-btn-hover-border-color: #2B5AB3; + --bs-btn-focus-shadow-rgb: 108, 117, 125; + --bs-btn-active-color: #fff; + --bs-btn-active-bg: #2B5AB3; + --bs-btn-active-border-color: #2B5AB3; + --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125); + --bs-btn-disabled-color: #2B5AB3; + --bs-btn-disabled-bg: transparent; + --bs-btn-disabled-border-color: #2B5AB3; + --bs-gradient: none; +} \ No newline at end of file diff --git a/egovframe-template-simple-react-contribution/src/pages/main/EgovMain.jsx b/egovframe-template-simple-react-contribution/src/pages/main/EgovMain.jsx index 2f80d88..bd021a6 100644 --- a/egovframe-template-simple-react-contribution/src/pages/main/EgovMain.jsx +++ b/egovframe-template-simple-react-contribution/src/pages/main/EgovMain.jsx @@ -104,30 +104,30 @@ function EgovMain(props) {
- + {/*
*/} + {/* /!*단순 홈페이지 전자정부 국가건설기준센터의 경량환경 내부업무에 대한 최신 정보와 기술을 제공하고 있습니다.*!/*/} + {/*

건설기준코드 검색

*/} + {/* */} + {/* 공통코드*/} + {/* 지반코드*/} + {/* 구조코드*/} + {/* 내진코드*/} + {/* 가설코드*/} + {/* 교량코드*/} + {/* 터널코드*/} + {/* 공동구코드*/} + {/* 설비코드*/} + {/* 조경코드*/} + {/* 건축코드*/} + {/* 도로코드*/} + {/* 철도코드*/} + {/* 하천코드*/} + {/* 댐코드*/} + {/* 상수도코드*/} + {/* 하수도코드*/} + {/* 농업기반코드*/} + {/* */} + {/*
*/} {/*
*/} {/*
*/} diff --git a/kcsc-back-end/src/main/java/com/dbnt/kcscbackend/config/jwt/EgovJwtTokenUtil.java b/kcsc-back-end/src/main/java/com/dbnt/kcscbackend/config/jwt/EgovJwtTokenUtil.java index 6e168f7..8c48dfc 100644 --- a/kcsc-back-end/src/main/java/com/dbnt/kcscbackend/config/jwt/EgovJwtTokenUtil.java +++ b/kcsc-back-end/src/main/java/com/dbnt/kcscbackend/config/jwt/EgovJwtTokenUtil.java @@ -93,6 +93,7 @@ public class EgovJwtTokenUtil implements Serializable{ claims.put("id", loginVO.getUserId()); claims.put("remoteAddr", remoteAddr); claims.put("userSe", loginVO.getUserSe()); + claims.put("userRole", loginVO.getUserRole()); claims.put("type", "Authorization"); log.debug("===>>> secret = "+SECRET_KEY);