diff --git a/2_apply.bat b/2_apply.bat index 0e79bd7..dcbc3ae 100644 --- a/2_apply.bat +++ b/2_apply.bat @@ -75,7 +75,12 @@ for /f "delims=" %%i in (admin_list.txt) do ( set source_file=%target_directory%!line! set relative_path=!line:%source_prefix%=! set target_file=%target_prefix%!relative_path! - ) + ) else if "!line:~-4!" == ".gif" ( + set source_file=%target_directory%!line! + set relative_path=!line:%source_prefix%=! + set target_file=%target_prefix%!relative_path! + ) + rem Copy the source file to the target location, overwriting if necessary echo Copying "!source_file!" to "!target_file!" diff --git a/admin_list.txt b/admin_list.txt index 1b8295a..8b0ee32 100644 --- a/admin_list.txt +++ b/admin_list.txt @@ -1,25 +1,21 @@ -src\main\webapp\WEB-INF\config\springmvc\action-servlet.xml -src\main\webapp\WEB-INF\views\admins\user\left.jsp -src\main\webapp\images\renew\arrow-right.png -src\main\webapp\images\renew\add.png -src\main\webapp\images\renew\chevron.png -src\main\webapp\images\renew\chevron.svg -src\main\webapp\images\renew\delete.png -src\main\webapp\images\renew\minus.png src\main\webapp\css\admins\style.css src\main\webapp\css\admins\style.css.map -src\main\java\geoinfo\admins\user\GeneralUserMngController.java -src\main\java\geoinfo\admins\user\service\HomeTrainingService.java -src\main\java\geoinfo\admins\user\service\impl\HomeTrainingServiceImpl.java -src\main\java\geoinfo\admins\user\service\HomeTrainingMapper.java -src\main\resources\geoinfo\sqlmap\mappers\admins\user\HomeTrainingMapper.xml -src\main\webapp\WEB-INF\views\admins\user\home-training-index.jsp -src\main\webapp\WEB-INF\views\admins\user\home-training-approval-system.jsp -src\main\webapp\WEB-INF\views\admins\user\visit-training-index.jsp -src\main\webapp\WEB-INF\views\admins\user\visit-training-approval-system.jsp -src\main\java\geoinfo\util\MyUtil.java -src\main\webapp\WEB-INF\lib\json-simple-1.1.1.jar -src\main\java\geoinfo\admins\main\MainController.java -src\main\resources\geoinfo\sqlmap\mappers\admins\main\Login_SQL.xml +src\main\webapp\images\admins\frame\top_menu.gif +src\main\webapp\WEB-INF\views\admins\frame\top.jsp +src\main\webapp\WEB-INF\views\admins\main\index.jsp src\main\webapp\WEB-INF\views\admins\main\main.jsp -src\main\webapp\WEB-INF\views\admins\frame\mainframe.jsp +src\main\webapp\WEB-INF\views\admins\constructionProjectManagement\00.jsp +src\main\webapp\WEB-INF\views\admins\constructionProjectManagement\left.jsp +src\main\webapp\WEB-INF\views\admins\constructionProjectManagement\construction-project-statistics-index.jsp +src\main\webapp\images\admins\constructionProjectManagement\1_tit_01.gif +src\main\java\geoinfo\admins\constructionProjectManagement\ConstructionProjectManagementController.java +src\main\webapp\js\admins\chart.js +#일반사용자관리 첫 화면 사용자 목록 안 보이도록 하기 +src\main\webapp\WEB-INF\views\admins\frame\top.jsp +src\main\webapp\WEB-INF\views\admins\main\index.jsp +src\main\webapp\WEB-INF\views\admins\main\main.jsp +src\main\java\geoinfo\admins\user\GeneralUserMngController.java +src\main\webapp\WEB-INF\views\admins\user\00.jsp +src\main\webapp\js\admins\adlogin.js +src\main\webapp\WEB-INF\views\admins\main\index.jsp +src\main\webapp\WEB-INF\views\admins\frame\mainframe.jsp \ No newline at end of file diff --git a/old/GeneralUserMngController.class b/old/GeneralUserMngController.class deleted file mode 100644 index 99cfb80..0000000 Binary files a/old/GeneralUserMngController.class and /dev/null differ diff --git a/old/HomeTrainingMapper.class b/old/HomeTrainingMapper.class deleted file mode 100644 index 838099c..0000000 Binary files a/old/HomeTrainingMapper.class and /dev/null differ diff --git a/old/HomeTrainingMapper.xml b/old/HomeTrainingMapper.xml deleted file mode 100644 index 44aa3c6..0000000 --- a/old/HomeTrainingMapper.xml +++ /dev/null @@ -1,88 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/old/HomeTrainingService.class b/old/HomeTrainingService.class deleted file mode 100644 index 65f8743..0000000 Binary files a/old/HomeTrainingService.class and /dev/null differ diff --git a/old/HomeTrainingServiceImpl.class b/old/HomeTrainingServiceImpl.class deleted file mode 100644 index 3f5efc4..0000000 Binary files a/old/HomeTrainingServiceImpl.class and /dev/null differ diff --git a/old/Login_SQL.xml b/old/Login_SQL.xml deleted file mode 100644 index eca19d6..0000000 --- a/old/Login_SQL.xml +++ /dev/null @@ -1,42 +0,0 @@ - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/old/MainController.class b/old/MainController.class deleted file mode 100644 index 1e60865..0000000 Binary files a/old/MainController.class and /dev/null differ diff --git a/old/MyUtil.class b/old/MyUtil.class deleted file mode 100644 index b7cc487..0000000 Binary files a/old/MyUtil.class and /dev/null differ diff --git a/old/action-servlet.xml b/old/action-servlet.xml deleted file mode 100644 index 9fe211d..0000000 --- a/old/action-servlet.xml +++ /dev/null @@ -1,88 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - geoinfo.**.service - - - - - - - - - - - - - - - - /WEB-INF/tiles/tiles-layout.xml - - - - - - \ No newline at end of file diff --git a/old/add.png b/old/add.png deleted file mode 100644 index 392fe0d..0000000 Binary files a/old/add.png and /dev/null differ diff --git a/old/arrow-right.png b/old/arrow-right.png deleted file mode 100644 index b887d35..0000000 Binary files a/old/arrow-right.png and /dev/null differ diff --git a/old/chevron.png b/old/chevron.png deleted file mode 100644 index f80cedb..0000000 Binary files a/old/chevron.png and /dev/null differ diff --git a/old/chevron.svg b/old/chevron.svg deleted file mode 100644 index c1794ab..0000000 --- a/old/chevron.svg +++ /dev/null @@ -1,3 +0,0 @@ - - - diff --git a/old/delete.png b/old/delete.png deleted file mode 100644 index 0b915d7..0000000 Binary files a/old/delete.png and /dev/null differ diff --git a/old/json-simple-1.1.1.jar b/old/json-simple-1.1.1.jar deleted file mode 100644 index dfd5856..0000000 Binary files a/old/json-simple-1.1.1.jar and /dev/null differ diff --git a/old/left.jsp b/old/left.jsp deleted file mode 100644 index 8b61aab..0000000 --- a/old/left.jsp +++ /dev/null @@ -1,195 +0,0 @@ -<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> -<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %> -<%@ taglib prefix="form" uri="http://www.springframework.org/tags/form" %> -<%@ taglib prefix="fn" uri = "http://java.sun.com/jsp/jstl/functions" %> - - - - - - - - - - - - - - - - - -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - - - - - -
- - - - - - - - -
- - - - - - - - -
- - - - - - - - -
- - - - - - - - -
- - - - - - - - -
- - - - - - - - -
- -
- -
-
- - diff --git a/old/main.jsp b/old/main.jsp deleted file mode 100644 index 1cd36d5..0000000 --- a/old/main.jsp +++ /dev/null @@ -1,173 +0,0 @@ -<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> -<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %> -<%@ taglib prefix="form" uri="http://www.springframework.org/tags/form" %> - - - -국토지반정보 포털 관리시스템 - - - - - - - - - - - - - - - - - - - - -
- - - - - - - -
- - - -
-
- - - - - - - -
- -   - - - -
-
- - - - -
-
- - - - - - - - - - - - -<%-- - -
승인 대기
-
- -
승인 대기 0건
-
-
--%> - - diff --git a/old/mainframe.jsp b/old/mainframe.jsp deleted file mode 100644 index f966a6b..0000000 --- a/old/mainframe.jsp +++ /dev/null @@ -1,22 +0,0 @@ -<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> - - - - - - - - - - - - - - diff --git a/old/minus.png b/old/minus.png deleted file mode 100644 index e9f5eff..0000000 Binary files a/old/minus.png and /dev/null differ diff --git a/old/style.css b/old/style.css deleted file mode 100644 index 3be7f8f..0000000 --- a/old/style.css +++ /dev/null @@ -1,782 +0,0 @@ -@charset "UTF-8"; -/* 기본 */ -img { - border: 0; -} - -body { - margin-left: 16; - margin-top: 20; - margin-right: 16; - margin-bottom: 0; - scrollbar-face-color: #FFFFFF; - scrollbar-shadow-color: #A0A0A0; - scrollbar-highlight-color: #FFFFFF; - scrollbar-3dlight-color: #A0A0A0; - scrollbar-darkshadow-color: #F6F6F6; - scrollbar-track-color: #F6F6F6; - scrollbar-arrow-color: #A0A0A0; -} - -/* 페이지 네비게이션 */ -.navi_cur { - font-family: "굴림체"; - font-size: 9pt; - color: #3F3F3F; - line-height: 150%; - font-weight: bold; -} - -a.navi:link { - font-family: "굴림체"; - font-size: 9pt; - color: #3F3F3F; - text-decoration: none; - line-height: 150%; -} - -a.navi:visited { - font-family: "굴림체"; - font-size: 9pt; - color: #3F3F3F; - text-decoration: none; - line-height: 150%; -} - -a.navi:hover { - font-family: "굴림체"; - font-size: 9pt; - color: #3F3F3F; - text-decoration: underline; - line-height: 150%; -} - -/* 목록 헤드와 내용 */ -.list_head { - font-size: 9pt; - font-family: 굴림체; - font-weight: bold; - line-height: 150%; - color: #B64E0F; -} - -.list_head2 { - font-size: 9pt; - font-family: 굴림체; - font-weight: bold; - line-height: 150%; - color: #1180B5; -} - -.list_head_noti { - font-size: 9pt; - font-family: 굴림체; - font-weight: bold; - line-height: 150%; - color: #B64E0F; -} - -.list_content { - font-size: 9pt; - font-family: 굴림체; - line-height: 150%; - color: #525252; -} - -/* search */ -.search { - font-size: 9pt; - color: #545454; -} - -.search1 { - font-size: 9pt; - color: #545454; -} - -.date_search { - font-size: 9pt; - font-weight: bold; - color: #545454; -} - -/* 폼 */ -Select { - font-size: 9pt; -} - -input { - font-size: 9pt; -} - -.write { - background-color: #FFFFFF; - border-color: #C5C5C5; - border-width: 1px; - border-style: solid; - font-size: 10pt; -} - -.input { - font-size: 9pt; - border: 1x solid #C8D0D5; - text-align: left; - color: #333333; -} - -.input1 { - font-size: 9pt; - border: 1x solid #8C8C8C; -} - -.input2 { - font-size: 9pt; - border: 1x solid #D1DEDE; - text-align: justify; - padding-right: 3px; - background-color: #F4F7F7; - height: 17px; - padding-left: 3px; -} - -.input3 { - font-size: 9pt; - border: 1x solid #8C8C8C; - text-align: center; - padding-top: 2px; -} - -Input.search { - background-color: #F9F9F9; - border-color: #C5C5C5; - border-width: 1px; - border-style: solid; - font-size: 10pt; -} - -/* 일반 */ -a:link { - font-family: "굴림체"; - font-size: 9pt; - color: #525252; - text-decoration: none; - line-height: 150%; -} - -a:visited { - font-family: "굴림체"; - font-size: 9pt; - color: #525252; - text-decoration: none; - line-height: 150%; -} - -a:hover { - font-family: "굴림체"; - font-size: 9pt; - color: #FF8000; - text-decoration: underline; - line-height: 150%; -} - -/* FAQ */ -.faq_q { - font-size: 9pt; - line-height: 150%; - color: #1F177C; - font-weight: bold; -} - -.faq_a { - font-size: 9pt; - line-height: 150%; - color: #1F177C; -} - -/* QnA */ -.qna_head { - font-size: 9pt; - font-family: 굴림체; - font-weight: bold; - line-height: 150%; - color: #939393; -} - -.qna_content { - font-size: 9pt; - font-family: 굴림체; - line-height: 150%; - color: #939393; - padding-left: 5px; - padding-right: 5px; -} - -.qna_contentH { - font-size: 9pt; - font-family: 굴림체; - line-height: 150%; - color: #939393; - padding: 5px; -} - -.qna_reply { - font-size: 9pt; - font-family: 굴림체; - line-height: 120%; - color: #3F83FF; - padding-left: 5px; - padding-right: 5px; -} - -.qna_reply_gray { - font-size: 9pt; - font-family: 굴림체; - line-height: 150%; - color: #939393; -} - -/* 팝업타이틀, 입력창(input, select) 추가 2017.08.01 */ -.pop_title { - height: 20px; - border-bottom: 1px solid #31b0e5; - background: url("../../images/admins/bullet03.png") 10px 10px no-repeat; - padding: 7px 0 7px 27px; - font-size: 14px; - font-family: 굴림체; - font-weight: bold; - line-height: 150%; - color: #1180B5; -} - -.input_txt { - padding: 3px; - border: 1px solid #ccc; - border-radius: 3px; - color: #666; - font-size: 12px; -} - -/* 2023.10.11 LHJ 게시판 제목에서 길이 초과된 뒷부분 생략 추가 */ -#Table_List { - table-layout: fixed; -} - -#Table_List td { - text-overflow: ellipsis; - white-space: nowrap; - overflow: hidden; -} - -/* 2023.10.23 LHJ 팝업 미리보기 화면 추가 */ -.popup_noti { - width: 500px; - height: 600px; - display: flex; - flex-direction: column; - position: relative; -} - -.bg_noti:nth-child(1) { - flex-grow: 2.5; - background-color: #FFCCB3; -} - -.bg_noti:nth-child(2) { - flex-grow: 1.5; - background-color: #FFF2D0; -} - -.bg_noti:nth-child(3) { - flex-grow: 6; - background-color: #DCF1EA; -} - -.bg_white { - position: absolute; - top: 10%; - left: 7%; - right: 7%; - bottom: 5%; - background-color: white; - border: 1px solid black; -} - -.subject_noti { - position: absolute; - top: 10%; - left: 7%; - right: 7%; - font-family: "NanumGothicB"; - font-weight: bold; - font-size: 15pt; - overflow: hidden; - text-overflow: ellipsis; - display: -webkit-box; - -webkit-line-clamp: 2; - -webkit-box-orient: vertical; -} - -.contents_noti pre { - display: block; - padding: inherit; - margin: inherit; - font-size: inherit; - line-height: inherit; - color: inherit; - word-break: break-all; - word-wrap: break-word; - white-space: pre-wrap; - background-color: inherit; - border: inherit; - border-radius: inherit; - font-family: inherit; -} - -.contents_noti { - position: absolute; - top: 27%; - left: 7%; - right: 7%; - bottom: 5%; - font-family: "Nanum Gothic"; - font-size: 9pt; - overflow-y: auto; - text-overflow: ellipsis; - display: -webkit-box; - -webkit-line-clamp: 10; - -webkit-box-orient: vertical; -} - -.menu-item { - padding: 0px 5px; - width: 230px; - text-align: center; - margin-bottom: 9px; -} -.menu-item span { - box-sizing: border-box; - display: inline-block; - width: 220px; - padding: 5px 20px; - padding-left: 31px; - box-shadow: inset 2px 2px 6px #b7b7b7; - border-radius: 20px; - text-align: left; - background: #ffffff; - color: #888888; - font-size: 14px; - font-weight: 600; - margin-left: 4px; -} -.menu-item .sub-menu { - display: none; -} -.menu-item.active { - margin-bottom: 3px; -} -.menu-item.active span { - color: #2b85c6; -} -.menu-item.active .sub-menu { - display: block; - margin: 0px; - margin-top: 3px; - padding: 0px; - text-align: right; -} -.menu-item.active .sub-menu .sub-menu-item { - box-sizing: border-box; - display: inline-block; - width: 180px; - padding: 5px 20px; - padding-left: 31px; - box-shadow: inset 2px 2px 6px #b7b7b7; - border-radius: 20px; - text-align: left; - background: #ffffff; - color: #888888; - font-size: 14px; - font-weight: 600; - margin-left: 4px; - margin-right: 4px; - margin-bottom: 3px; - cursor: pointer; -} -.menu-item.active .sub-menu .sub-menu-item.active { - color: #2b85c6; -} - -.main-title { - font-size: 20px; -} - -.sub-title { - font-size: 20px; - color: #df8107; -} - -.home-trainning { - width: 100%; - max-width: 1600px; - position: relative; - /* 신청인정보 */ -} -.home-trainning th, -.home-trainning tr { - height: 36px; -} -.home-trainning .contentBtn { - display: flex; - gap: 10px; - justify-content: end; - margin: 10px 0; -} -.home-trainning button { - background-color: #007BFF; - color: #fff; - border-radius: 6px; - border: none; - padding: 5px 10px; -} -.home-trainning .Table_Main { - width: 100%; - max-width: 1600px; - border: 1px solid #e9e9e9; - text-align: center; -} -.home-trainning .Table_Main.course-list-table tbody tr { - cursor: pointer; -} -.home-trainning .Table_Main.course-list-table tbody tr:hover { - background: #f1f1f1; -} -.home-trainning .Table_Main.new-course-creation-table { - margin-bottom: 50px; -} -.home-trainning .Table_Main.new-course-creation-table .new-course-creation-tbody tr td input { - width: 100%; - height: 100%; - height: 35px; - border: none; - padding: 0px 5px; - font-size: 14px; -} -.home-trainning .Table_Main.new-course-creation-table .new-course-creation-tbody tr td input.reg-start-end-date { - width: 40%; - padding: 0px; -} -.home-trainning .Table_List { - background: #e9eff4; -} -.home-trainning .application { - width: 60px; - padding: 5px; - background: #E9F0F5; - border-radius: 6px; - border: none; - font-weight: 600; - font-size: 12px; -} -.home-trainning .applicationEnd { - color: red; -} -.home-trainning .home-visit-item { - display: none; -} -.home-trainning #UserDate { - margin: 25px 0; - display: none; -} -.home-trainning .DateTitle { - font-size: 18px; - font-weight: 700; - line-height: 18px; - display: inline-block; - margin-right: 20px; -} -.home-trainning .AddBtn { - display: block; - margin: 30px auto; - padding: 10px 20px; - background-color: #007BFF; - color: white; - border: none; - border-radius: 5px; - cursor: pointer; -} -.home-trainning button:hover { - background-color: #0056b3; -} -.home-trainning #ContentAdd { - display: none; -} -.home-trainning .DateTitle { - font-size: 18px; - font-weight: 700; - line-height: 18px; - display: inline-block; - margin-right: 20px; -} -.home-trainning .DateText { - font-size: 15px; - font-weight: 400; - line-height: 12px; - align-items: center; -} -.home-trainning .DateText .home-visit-item-training-name { - font-weight: 600; -} - -.visit-trainning { - /* 기본 레이아웃 설정 */ - /* 캘린더 CSS */ - /* Form css */ - /* 관리자용 css */ -} -.visit-trainning .page-content-wrapper { - display: inline-block; - width: auto; - margin: 0 auto; -} -.visit-trainning .page-sidebar-wrapper { - float: left; - width: 222px; - height: 1000px; -} -.visit-trainning .page-content { - width: 100%; -} -.visit-trainning .content-bg { - background-color: #e9eff4; - padding: 30px; -} -.visit-trainning .CalendarOverlay { - display: inline-flex; -} -.visit-trainning .Calendar { - padding: 30px; - background: white; - border-radius: 16px; - flex-direction: column; - justify-content: flex-start; - align-items: flex-start; - gap: 12px; - display: flex; -} -.visit-trainning .Header { - align-self: stretch; - justify-content: space-between; - align-items: center; - display: inline-flex; -} -.visit-trainning .yyyy-mm { - color: black; - font-size: 24px; - font-family: Inter; - font-weight: 900; - word-wrap: break-word; -} -.visit-trainning .Frame9 { - justify-content: flex-start; - align-items: flex-start; - gap: 12px; - display: flex; -} -.visit-trainning .Chevron { - padding: 8px; - justify-content: flex-start; - align-items: flex-start; - gap: 10px; - display: flex; -} -.visit-trainning .page-prev { - margin-top: 3px; - width: 26px; - height: 26px; - transform: rotate(90deg); -} -.visit-trainning .page-next { - margin-top: 3px; - width: 26px; - height: 26px; - transform: rotate(-90deg); -} -.visit-trainning .month { - margin: 0px auto; -} -.visit-trainning .month .Days { - flex-direction: column; - justify-content: flex-start; - align-items: center; - display: flex; -} -.visit-trainning .month .Row { - justify-content: flex-start; - align-items: center; - display: flex; -} -.visit-trainning .month .Cell { - display: flex; - justify-content: center; - align-items: center; - width: 64px; - height: 64px; - padding: 10px; - box-sizing: border-box; - padding: 20px; -} -.visit-trainning .month .Cell:hover { - background-color: #e9eff4; -} -.visit-trainning .month .Day { - display: flex; - justify-content: center; - align-items: center; - width: 64px; - height: 64px; - padding: 10px; - border: 1px solid #D5D4DF; - box-sizing: border-box; - padding: 20px; -} -.visit-trainning .month .Week { - width: 24px; - height: 24px; - text-align: center; - color: black; - font-size: 14px; - font-family: Inter; - font-weight: 600; - word-wrap: break-word; - border: 1px solid #fff; -} -.visit-trainning .month .Day { - border: 1px #D5D4DF solid; - display: flex; - justify-content: center; - align-items: center; - font-size: 14px; -} -.visit-trainning .month .inactive { - width: 64px; - height: 64 px; - text-align: center; - color: #A8A8A8; - font-size: 14px; - font-family: Inter; - font-weight: 400; - word-wrap: break-word; -} -.visit-trainning .month .Weekdays { - width: 24px; - height: 24px; - text-align: center; - color: black; - font-size: 14px; - font-family: Inter; - font-weight: 400; - word-wrap: break-word; -} -.visit-trainning .month .Su { - color: #FF6666; -} -.visit-trainning .month .Sa { - color: #3378C1; -} -.visit-trainning .month .today { - background-color: #45539d; - font-weight: bold; - color: #fff; - pointer-events: none; -} -.visit-trainning .Application { - width: 430px; - margin-top: 15px; - float: right; -} -.visit-trainning .InputBox { - width: 342px; - height: 34px; - background: white; - border-radius: 6px; - border: 1px solid rgba(66, 80, 102, 0.4); -} -.visit-trainning #Agency, .visit-trainning #Place { - width: 160px; -} -.visit-trainning #Name { - width: 91px; -} -.visit-trainning #Persons { - width: 79px; -} -.visit-trainning #Tel, .visit-trainning #Place { - margin-left: -13px; -} -.visit-trainning #Hope1, .visit-trainning #Hope2, .visit-trainning #Hope3 { - width: 342px; - margin-left: -20px; -} -.visit-trainning label { - margin: 0 25px 0 20px; - display: inline-block; - text-align: left; - line-height: 50px; - font-size: 14px; -} -.visit-trainning .possible { - width: 100px; - height: 32px; - padding: 5px; - background: #E9F0F5; - border-radius: 6px; - border: none; -} -.visit-trainning .impossibility { - width: 100px; - height: 32px; - padding: 5px; - background: #EAEAEA; - border-radius: 6px; - border: none; -} - -.visit-trainning-approval-system th, -.visit-trainning-approval-system tr { - height: 36px; -} -.visit-trainning-approval-system #Table_Main { - width: 1020px; - border: 1px solid #e9e9e9; - text-align: center; -} -.visit-trainning-approval-system .Table_List { - background: #e9eff4; -} -.visit-trainning-approval-system .caption { - font-size: 11px; - margin: 10px; -} -.visit-trainning-approval-system .HopeDay { - color: #2e5aac; - bordeR: 1px solid #89a7e0; - padding: 5px; - background: #fff; - border-radius: 2px; -} -.visit-trainning-approval-system .cancel { - border: 1px solid red; - color: red; - border-radius: 2px; - padding: 4px 8px; - background-color: #fff; -} -.visit-trainning-approval-system .HopeDay.clicked { - background-color: #89a7e0; - color: white; -} -.visit-trainning-approval-system .statusConfirmed { - color: #2e5aac; -} - -/*# sourceMappingURL=style.css.map */ diff --git a/old/style.css.map b/old/style.css.map deleted file mode 100644 index 53162a0..0000000 --- a/old/style.css.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"sourceRoot":"","sources":["sass/style.scss"],"names":[],"mappings":";AAAA;AACA;EAAM;;;AACN;EAEC;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGD;AACA;EAAY;EAAoB;EAAiB;EAAgB;EAAkB;;;AACnF;EAAc;EAAoB;EAAiB;EAAgB;EAAuB;;;AAC1F;EAAgB;EAAoB;EAAiB;EAAgB;EAAuB;;;AAC5F;EAAc;EAAoB;EAAiB;EAAgB;EAA4B;;;AAE/F;AACA;EAAe;EAAe;EAAkB;EAAkB;EAAkB;;;AACpF;EAAe;EAAe;EAAkB;EAAkB;EAAkB;;;AACpF;EAAkB;EAAe;EAAkB;EAAkB;EAAkB;;;AACvF;EAAiB;EAAe;EAAkB;EAAkB;;;AAEpE;AACA;EAAY;EAAe;;;AAC3B;EAAY;EAAe;;;AAC3B;EAAe;EAAe;EAAkB;;;AAEhD;AACA;EAAY;;;AACZ;EAAU;;;AACV;EAAY;EAA0B;EAAsB;EAAkB;EAAoB;;;AAClG;EAAW;EAAe;EAA0B;EAAkB;;;AACtE;EAAW;EAAe;;;AAC1B;EAAW;EAAe;EAAyB;EAAqB;EAAoB;EAA2B;EAAc;;;AACrI;EAAW;EAAe;EAAyB;EAAoB;;;AACvE;EAAe;EAA0B;EAAsB;EAAkB;EAAoB;;;AAErG;AACA;EAAU;EAAoB;EAAgB;EAAgB;EAAuB;;;AACrF;EAAY;EAAoB;EAAgB;EAAgB;EAAuB;;;AACvF;EAAW;EAAoB;EAAgB;EAAgB;EAA4B;;;AAE3F;AACA;EAAY;EAAe;EAAkB;EAAe;;;AAC5D;EAAW;EAAe;EAAkB;;;AAG5C;AACA;EAAc;EAAe;EAAkB;EAAkB;EAAkB;;;AACnF;EAAgB;EAAe;EAAkB;EAAkB;EAAe;EAAkB;;;AACpG;EAAiB;EAAe;EAAkB;EAAkB;EAAe;;;AACnF;EAAe;EAAe;EAAkB;EAAkB;EAAe;EAAkB;;;AACnG;EAAkB;EAAe;EAAkB;EAAkB;;;AAErE;AACA;EAAa;EAAa;EAAiC;EAAwE;EAAwB;EAAiB;EAAkB;EAAkB;EAAkB;;;AAClO;EAAY;EAAa;EAAuB;EAAmB;EAAY;;;AAE/E;AACA;EAAa;;;AACb;EAAgB;EAAyB;EAAqB;;;AAE9D;AACA;EACI;EACH;EACG;EACA;EACA;;;AAEJ;EACI;EACA;;;AAEJ;EACI;EACA;;;AAEJ;EACI;EACA;;;AAEJ;EACI;EACA;EACA;EACA;EACA;EACA;EACA;;;AAEJ;EACI;EACA;EACA;EACA;EACA;EACA;EACA;EACC;EACA;EACA;EACA;EACA;;;AAEL;EACC;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAED;EACI;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGJ;EACI;EACA;EACA;EACA;;AACA;EACI;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAGJ;EACI;;AAEJ;EACI;;AACA;EACI;;AAEJ;EACI;EACA;EACA;EACA;EACA;;AACA;EACI;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AACA;EACI;;;AAOpB;EACI;;;AAEJ;EACI;EACA;;;AAGJ;EACI;EACA;EACA;AAwEA;;AAvEA;AAAA;EAEI;;AAEJ;EACI;EACA;EACA;EACA;;AAEJ;EACI;EACA;EACA;EACA;EACA;;AAEJ;EACI;EACA;EACA;EACA;;AAGQ;EACI;;AACA;EACI;;AAOhB;EACI;;AAIY;EACI;EACA;EACA;EACA;EACA;EACA;;AACA;EACI;EACA;;AAQ5B;EACI;;AAEJ;EACI;EACA;EACA;EACA;EACA;EACA;EACA;;AAEJ;EACI;;AAIJ;EACI;;AAEJ;EACI;EACA;;AAEJ;EACI;EACA;EACA;EACA;EACA;;AAEJ;EACI;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAGJ;EACI;;AAEJ;EACI;;AAGJ;EACI;EACA;EACA;EACA;EACA;;AAGJ;EACI;EACA;EACA;EACA;;AACA;EACI;;;AAMZ;AACI;AAmBA;AA8IA;AAsCA;;AAtMA;EACI;EACA;EACA;;AAEJ;EACI;EACA;EACA;;AAEJ;EACI;;AAEJ;EACI;EACA;;AAIJ;EACI;;AAEJ;EACI;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAEJ;EACI;EACA;EACA;EACA;;AAEJ;EACI;EACA;EACA;EACA;EACA;;AAEJ;EACI;EACA;EACA;EACA;;AAEJ;EACK;EACA;EACA;EACA;EACA;;AAEL;EACI;EACA;EACA;EACA;;AAEJ;EACI;EACA;EACA;EACA;;AAEJ;EACI;;AACA;EACI;EACA;EACA;EACA;;AAEJ;EACG;EACA;EACA;;AAEH;EACI;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAEJ;EACI;;AAGJ;EACI;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAEJ;EACG;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAEH;EACI;EACA;EACA;EACA;EACA;;AAEJ;EACI;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAEJ;EACI;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAEJ;EACI;;AAEJ;EACI;;AAEJ;EACI;EACA;EACA;EACA;;AAKR;EACI;EACA;EACA;;AAEJ;EACI;EACC;EACA;EACA;EACA;;AAEL;EACI;;AAEJ;EACI;;AAEJ;EACI;;AAEJ;EACI;;AAEJ;EACI;EACC;;AAGL;EACI;EACC;EACA;EACA;EACA;;AAKL;EACI;EACA;EACA;EACA;EACA;EACA;;AAEJ;EACK;EACD;EACA;EACA;EACA;EACA;;;AAMJ;AAAA;EAEI;;AAEJ;EACI;EACA;EACA;;AAEJ;EACI;;AAEJ;EACG;EACC;;AAIJ;EACI;EACA;EACA;EACA;EACA;;AAEJ;EACI;EACA;EACA;EACA;EACA;;AAGJ;EACI;EACA;;AAEJ;EACG","file":"style.css"} \ No newline at end of file diff --git a/src/main/java/geoinfo/admins/constructionProjectManagement/ConstructionProjectManagementController.java b/src/main/java/geoinfo/admins/constructionProjectManagement/ConstructionProjectManagementController.java new file mode 100644 index 0000000..fce2de6 --- /dev/null +++ b/src/main/java/geoinfo/admins/constructionProjectManagement/ConstructionProjectManagementController.java @@ -0,0 +1,553 @@ +package geoinfo.admins.constructionProjectManagement; + +import java.net.URLEncoder; +import java.security.SecureRandom; +import java.sql.SQLException; +import java.text.SimpleDateFormat; +import java.util.Date; +import java.util.HashMap; +import java.util.List; +import java.util.Locale; +import java.util.Map; + +import javax.annotation.Resource; +import javax.servlet.ServletOutputStream; +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; +import javax.servlet.http.HttpSession; + +import org.apache.log4j.Logger; +import org.apache.poi.hssf.usermodel.HSSFWorkbook; +import org.apache.poi.ss.usermodel.Sheet; +import org.json.simple.JSONArray; +import org.json.simple.JSONObject; +import org.json.simple.parser.JSONParser; +import org.springframework.http.MediaType; +import org.springframework.stereotype.Controller; +import org.springframework.ui.ModelMap; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RequestMethod; +import org.springframework.web.bind.annotation.RequestParam; +import org.springframework.web.bind.annotation.ResponseBody; +import org.springframework.web.servlet.ModelAndView; + +import egovframework.com.cmm.service.EgovProperties; +import egovframework.rte.psl.dataaccess.util.EgovMap; +import egovframework.rte.ptl.mvc.tags.ui.pagination.PaginationInfo; +import geoinfo.admins.board.RefrncRoomController; +import geoinfo.admins.user.service.GeneralUserMngService; +import geoinfo.admins.user.service.HomeTrainingService; +import geoinfo.com.EgovExcel; +import geoinfo.com.GeoinfoCommon; +import geoinfo.comm.util.ScriptUtil; +import geoinfo.session.UserInfo; +import geoinfo.util.MyUtil; +import whois.whoisSMS; + + + +@Controller +public class ConstructionProjectManagementController { + @Resource(name = "generalUserMngService") + private GeneralUserMngService masterService; + + @Resource(name = "homeTrainingService") + private HomeTrainingService homeTrainingService; + + /** + * 집합교육 화면 + * @param params + * @param model + * @param response + * @param request + * @return + * @throws Exception + */ + @RequestMapping(value = "admins/constructionProjectManagement/construction-project-statistics-index.do") + public String homeTrainingIndex(@RequestParam HashMap params, ModelMap model, HttpServletResponse response, HttpServletRequest request) throws Exception { + + if (!UserInfo.isValidSession(request, response, "admin")) { + return ""; + } + + model.addAttribute("params", params); + return "admins/constructionProjectManagement/construction-project-statistics-index"; + } + + /** + * 집합교육 추가 + * @param request + * @param strJSON + * @param response + * @return + */ + @RequestMapping(value = "admins/constructionProjectManagement/home-training-index/add.do", method = RequestMethod.POST) + @ResponseBody + public JSONObject addHomeTraining( + HttpServletRequest request, + @RequestBody String strJSON, + HttpServletResponse response) { + + + JSONObject jsonResponse = new JSONObject(); + + System.out.println( + "\n--------------------------------------------------------------\n" + + request.getRequestURI() + " IN:" + + "\n--------------------------------------------------------------\n" + + "strJSON" + strJSON + "\n" + + "\n--------------------------------------------------------------\n" + ); + JSONParser jsonParser = new JSONParser(); + JSONArray jsonArr = null; + boolean isFail = false; + String failMsg = ""; + try { + jsonArr = (JSONArray)jsonParser.parse(strJSON); + for (Object obj : jsonArr) { + JSONObject jsonObject = (JSONObject) obj; + + // JSONObject를 HashMap으로 변환 + HashMap params = new HashMap<>(); + for (Object key : jsonObject.keySet()) { + String keyStr = (String) key; + Object value = jsonObject.get(keyStr); + params.put(keyStr, value); + } + try { + HashMap hashMap = homeTrainingService.addHomeTraining(request, response, params); + int nRetCode = MyUtil.getIntegerFromObject(hashMap.get("p_result_code")); + String lpszRetMsg = MyUtil.getStringFromObject(hashMap.get("p_err_msg")); + + long lWvtRegId = MyUtil.getLongFromObject(hashMap.get("p_wvt_reg_id")); + + if( nRetCode == 100 ) { + jsonResponse.put("resultCode", nRetCode); + jsonResponse.put("result", "true"); + jsonResponse.put("message", "등록이 완료되었습니다."); + } else { + if( nRetCode == 11 ) { + lpszRetMsg += "\n" + + "사업명: " + params.get("constName"); + } + jsonResponse.put("resultCode", nRetCode); + jsonResponse.put("result", "false"); + jsonResponse.put("message", lpszRetMsg); + + isFail = true; + failMsg = lpszRetMsg; + break; + } + + } catch (Exception e) { + // TODO Auto-generated catch block + String strTxt = + "---------- BUG REPORTING START ----------" + "\n" + + "에러 문구:[" + request.getRequestURI() + " " + "]" + "\n" + + "strJSON:[\n" + strJSON + "\n]\n" + + "e.getMessage():[\n" + e.getMessage() + "\n]\n" + "\n" + + "new Date().toString():[" + new Date().toString() + "]\n" + "\n" + + "---------- BUG REPORTING END ----------" + "\n" + + ""; + System.out.println(strTxt); + jsonResponse.put("resultCode", -1); + jsonResponse.put("result", "false"); + jsonResponse.put("message", e.getMessage()); + } + } + + } catch (org.json.simple.parser.ParseException e) { + // TODO Auto-generated catch block + e.printStackTrace(); + } + + if( isFail ) { + jsonResponse.put("resultCode", -2); + jsonResponse.put("result", "false"); + jsonResponse.put("message", failMsg); + } + + System.out.println("\n--------------------------------------------------------------\n" + + request.getRequestURI() + " OUT:" + + "\n--------------------------------------------------------------\n" + + "jsonResponse.toJSONString():[" + jsonResponse.toJSONString() + "]\n" + + "\n--------------------------------------------------------------\n"); + + return jsonResponse; + } + + /** + * 집합교육 수정 + * @param request + * @param strJSON + * @param response + * @return + */ + @RequestMapping(value = "admins/constructionProjectManagement/home-training-index/update.do", method = RequestMethod.POST) + @ResponseBody + public JSONObject updateHomeTraining( + HttpServletRequest request, + @RequestBody String strJSON, + HttpServletResponse response) { + + + JSONObject jsonResponse = new JSONObject(); + + System.out.println( + "\n--------------------------------------------------------------\n" + + request.getRequestURI() + " IN:" + + "\n--------------------------------------------------------------\n" + + "strJSON" + strJSON + "\n" + + "\n--------------------------------------------------------------\n" + ); + JSONParser jsonParser = new JSONParser(); + JSONArray jsonArr = null; + boolean isFail = false; + String failMsg = ""; + try { + jsonArr = (JSONArray)jsonParser.parse(strJSON); + for (Object obj : jsonArr) { + JSONObject jsonObject = (JSONObject) obj; + + // JSONObject를 HashMap으로 변환 + HashMap params = new HashMap<>(); + for (Object key : jsonObject.keySet()) { + String keyStr = (String) key; + Object value = jsonObject.get(keyStr); + params.put(keyStr, value); + } + try { + HashMap hashMap = homeTrainingService.updateHomeTraining(request, response, params); + int nRetCode = MyUtil.getIntegerFromObject(hashMap.get("p_result_code")); + String lpszRetMsg = MyUtil.getStringFromObject(hashMap.get("p_err_msg")); + + if( nRetCode == 100 ) { + jsonResponse.put("resultCode", nRetCode); + jsonResponse.put("result", "true"); + jsonResponse.put("message", "수정이 완료되었습니다."); + } else { + if( nRetCode == 11 ) { + lpszRetMsg += "\n" + + "사업명: " + params.get("constName"); + } + jsonResponse.put("resultCode", nRetCode); + jsonResponse.put("result", "false"); + jsonResponse.put("message", lpszRetMsg); + + isFail = true; + failMsg = lpszRetMsg; + break; + } + + } catch (Exception e) { + // TODO Auto-generated catch block + String strTxt = + "---------- BUG REPORTING START ----------" + "\n" + + "에러 문구:[" + request.getRequestURI() + " " + "]" + "\n" + + "strJSON:[\n" + strJSON + "\n]\n" + + "e.getMessage():[\n" + e.getMessage() + "\n]\n" + "\n" + + "new Date().toString():[" + new Date().toString() + "]\n" + "\n" + + "---------- BUG REPORTING END ----------" + "\n" + + ""; + System.out.println(strTxt); + jsonResponse.put("resultCode", -1); + jsonResponse.put("result", "false"); + jsonResponse.put("message", e.getMessage()); + } + } + + } catch (org.json.simple.parser.ParseException e) { + // TODO Auto-generated catch block + e.printStackTrace(); + } + + if( isFail ) { + jsonResponse.put("resultCode", -2); + jsonResponse.put("result", "false"); + jsonResponse.put("message", failMsg); + } + + System.out.println("\n--------------------------------------------------------------\n" + + request.getRequestURI() + " OUT:" + + "\n--------------------------------------------------------------\n" + + "jsonResponse.toJSONString():[" + jsonResponse.toJSONString() + "]\n" + + "\n--------------------------------------------------------------\n"); + + return jsonResponse; + } + + @RequestMapping(value = "admins/constructionProjectManagement/home-training-index/list.do", method = RequestMethod.GET) + @ResponseBody + public JSONObject getHomeTraining( + HttpServletRequest request, + @RequestParam HashMap params, + HttpServletResponse response) { + + + JSONObject jsonResponse = new JSONObject(); + + System.out.println( + "\n--------------------------------------------------------------\n" + + request.getRequestURI() + " IN:" + + "\n--------------------------------------------------------------\n" + + "params.toString()" + params.toString() + "\n" + + "\n--------------------------------------------------------------\n" + ); + + + try { + homeTrainingService.getHomeTraining(request, response, jsonResponse, params); + jsonResponse.put("resultCode", 100); + jsonResponse.put("result", "true"); + jsonResponse.put("message", "조회가 완료되었습니다."); + + } catch (Exception e) { + // TODO Auto-generated catch block + String strTxt = + "---------- BUG REPORTING START ----------" + "\n" + + "에러 문구:[" + request.getRequestURI() + " " + "]" + "\n" + + "e.getMessage():[\n" + e.getMessage() + "\n]\n" + "\n" + + "new Date().toString():[" + new Date().toString() + "]\n" + "\n" + + "---------- BUG REPORTING END ----------" + "\n" + + ""; + System.out.println(strTxt); + + String eMsg = e.getMessage(); + if( eMsg != null ) { + if( eMsg.equals("로그인이 필요한 서비스입니다.") ) { + jsonResponse.put("resultCode", 401); + } + } + + jsonResponse.put("resultCode", -1); + jsonResponse.put("result", "false"); + jsonResponse.put("message", e.getMessage()); + } + + System.out.println( + "\n--------------------------------------------------------------\n" + + request.getRequestURI() + " OUT:" + + "\n--------------------------------------------------------------\n" + + "jsonResponse.toJSONString():[" + jsonResponse.toJSONString() + "]\n" + + "\n--------------------------------------------------------------\n" + ); + + return jsonResponse; + } + + /** + * 특정 집합교육에 참여한 사용자 목록을 조회한다. + * @param request + * @param params + * @param response + * @return + */ + @RequestMapping(value = "admins/constructionProjectManagement/home-training-index/item/list.do", method = RequestMethod.GET) + @ResponseBody + public JSONObject getHomeTrainingItemList( + HttpServletRequest request, + @RequestParam HashMap params, + HttpServletResponse response) { + + + JSONObject jsonResponse = new JSONObject(); + + System.out.println( + "\n--------------------------------------------------------------\n" + + request.getRequestURI() + " IN:" + + "\n--------------------------------------------------------------\n" + + "params.toString()" + params.toString() + "\n" + + "\n--------------------------------------------------------------\n" + ); + + + try { + homeTrainingService.getHomeTrainingItemList(request, response, jsonResponse, params); + jsonResponse.put("resultCode", 100); + jsonResponse.put("result", "true"); + jsonResponse.put("message", "조회가 완료되었습니다."); + + } catch (Exception e) { + // TODO Auto-generated catch block + String strTxt = + "---------- BUG REPORTING START ----------" + "\n" + + "에러 문구:[" + request.getRequestURI() + " " + "]" + "\n" + + "e.getMessage():[\n" + e.getMessage() + "\n]\n" + "\n" + + "new Date().toString():[" + new Date().toString() + "]\n" + "\n" + + "---------- BUG REPORTING END ----------" + "\n" + + ""; + System.out.println(strTxt); + jsonResponse.put("resultCode", -1); + jsonResponse.put("result", "false"); + jsonResponse.put("message", e.getMessage()); + } + + System.out.println( + "\n--------------------------------------------------------------\n" + + request.getRequestURI() + " OUT:" + + "\n--------------------------------------------------------------\n" + + "jsonResponse.toJSONString():[" + jsonResponse.toJSONString() + "]\n" + + "\n--------------------------------------------------------------\n" + ); + + return jsonResponse; + } + + + @RequestMapping(value = "admins/constructionProjectManagement/home-training-index/item/delete.do", method = RequestMethod.POST) + @ResponseBody + public JSONObject deleteHomeTrainingItem( + HttpServletRequest request, + @RequestBody String strJSON, + HttpServletResponse response) { + + + JSONObject jsonResponse = new JSONObject(); + + System.out.println( + "\n--------------------------------------------------------------\n" + + request.getRequestURI() + " IN:" + + "\n--------------------------------------------------------------\n" + + "strJSON" + strJSON + "\n" + + "\n--------------------------------------------------------------\n" + ); + + JSONParser jsonParser = new JSONParser(); + JSONArray jsonArr = null; + boolean isFail = false; + String failMsg = ""; + try { + jsonArr = (JSONArray)jsonParser.parse(strJSON); + for (Object obj : jsonArr) { + JSONObject jsonObject = (JSONObject) obj; + + // JSONObject를 HashMap으로 변환 + HashMap params = new HashMap<>(); + for (Object key : jsonObject.keySet()) { + String keyStr = (String) key; + Object value = jsonObject.get(keyStr); + params.put(keyStr, value); + } + try { + HashMap hashMap = homeTrainingService.deleteHomeTrainingItem(request, response, params); + int nRetCode = MyUtil.getIntegerFromObject(hashMap.get("p_result_code")); + String lpszRetMsg = MyUtil.getStringFromObject(hashMap.get("p_err_msg")); + + + if( nRetCode == 100 ) { + jsonResponse.put("resultCode", nRetCode); + jsonResponse.put("result", "true"); + jsonResponse.put("message", "삭제가 완료되었습니다."); + } else { + if( nRetCode == 11 ) { + lpszRetMsg += "\n" + + "사업명: " + params.get("constName"); + } + jsonResponse.put("resultCode", nRetCode); + jsonResponse.put("result", "false"); + jsonResponse.put("message", lpszRetMsg); + + isFail = true; + failMsg = lpszRetMsg; + break; + } + + } catch (Exception e) { + // TODO Auto-generated catch block + String strTxt = + "---------- BUG REPORTING START ----------" + "\n" + + "에러 문구:[" + request.getRequestURI() + " " + "]" + "\n" + + "strJSON:[\n" + strJSON + "\n]\n" + + "e.getMessage():[\n" + e.getMessage() + "\n]\n" + "\n" + + "new Date().toString():[" + new Date().toString() + "]\n" + "\n" + + "---------- BUG REPORTING END ----------" + "\n" + + ""; + System.out.println(strTxt); + jsonResponse.put("resultCode", -1); + jsonResponse.put("result", "false"); + jsonResponse.put("message", e.getMessage()); + } + } + + } catch (org.json.simple.parser.ParseException e) { + // TODO Auto-generated catch block + e.printStackTrace(); + } + + if( isFail ) { + jsonResponse.put("resultCode", -2); + jsonResponse.put("result", "false"); + jsonResponse.put("message", failMsg); + } + + System.out.println("\n--------------------------------------------------------------\n" + + request.getRequestURI() + " OUT:" + + "\n--------------------------------------------------------------\n" + + "jsonResponse.toJSONString():[" + jsonResponse.toJSONString() + "]\n" + + "\n--------------------------------------------------------------\n"); + + return jsonResponse; + } + + /** + * 집합교육 승인 화면 + * @param params + * @param model + * @param response + * @param request + * @return + * @throws Exception + */ + @RequestMapping(value = "admins/constructionProjectManagement/home-training-approval-system") + public String homeTrainingApprovalSystem(@RequestParam HashMap params, ModelMap model, HttpServletResponse response, HttpServletRequest request) throws Exception { + + if (!UserInfo.isValidSession(request, response, "admin")) { + return ""; + } + + model.addAttribute("params", params); + return "admins/constructionProjectManagement/home-training-approval-system"; + } + + /** + * 방문교육 달력 화면 + * @param params + * @param model + * @param response + * @param request + * @return + * @throws Exception + */ + @RequestMapping(value = "admins/constructionProjectManagement/visit-training-index.do") + public String visitTrainingIndex(@RequestParam HashMap params, ModelMap model, HttpServletResponse response, HttpServletRequest request) throws Exception { + + if (!UserInfo.isValidSession(request, response, "admin")) { + return ""; + } + + model.addAttribute("params", params); + return "admins/constructionProjectManagement/visit-training-index"; + } + + /** + * 방문교육 승인 화면 + * @param params + * @param model + * @param response + * @param request + * @return + * @throws Exception + */ + @RequestMapping(value = "admins/constructionProjectManagement/visit-training-approval-system") + public String visitTrainingApprovalSystem(@RequestParam HashMap params, ModelMap model, HttpServletResponse response, HttpServletRequest request) throws Exception { + + if (!UserInfo.isValidSession(request, response, "admin")) { + return ""; + } + + model.addAttribute("params", params); + return "admins/constructionProjectManagement/visit-training-approval-system"; + } + +} diff --git a/src/main/java/geoinfo/admins/user/GeneralUserMngController.java b/src/main/java/geoinfo/admins/user/GeneralUserMngController.java index 1f6a7d0..967f597 100644 --- a/src/main/java/geoinfo/admins/user/GeneralUserMngController.java +++ b/src/main/java/geoinfo/admins/user/GeneralUserMngController.java @@ -113,9 +113,16 @@ public class GeneralUserMngController { params.put("firstRecordIndex", paginationInfo.getFirstRecordIndex()); params.put("recordCountPerPage", paginationInfo.getRecordCountPerPage()); - List resultList = masterService.selectInfoList(params); + String isFirst = request.getParameter("isFirst"); + + + List resultList = null; + int totalCnt = 0; + if( isFirst == null || !isFirst.toLowerCase().trim().equals("true") ) { + resultList = masterService.selectInfoList(params); + totalCnt = resultList.size() == 0 ? 0 : Integer.valueOf(((EgovMap) resultList.get(0)).get("totalrows").toString()); + } - int totalCnt = resultList.size() == 0 ? 0 : Integer.valueOf(((EgovMap) resultList.get(0)).get("totalrows").toString()); paginationInfo.setTotalRecordCount(totalCnt); model.addAttribute("params", params); diff --git a/src/main/webapp/WEB-INF/views/admins/board/00.jsp b/src/main/webapp/WEB-INF/views/admins/board/00.jsp index 1fae7d3..5b17127 100644 --- a/src/main/webapp/WEB-INF/views/admins/board/00.jsp +++ b/src/main/webapp/WEB-INF/views/admins/board/00.jsp @@ -24,7 +24,7 @@ function linkPage(index){ function goDetail(idx, aid) { document.listForm.idx.value = idx; document.listForm.action = "${pageContext.request.contextPath}/admins/board/00-view.do"; - document.listForm.submit(); + document.listForm.submit(); } function goWrite() { @@ -32,13 +32,13 @@ function goWrite() { } function searchPsBoard() { - + if ( $("select[name=searchTitle]").val() == "0" ) { alert("검색항목을 선택하세요."); $("select[name=searchTitle]").focus(); return false; } - + if ( $("input[name=searchKey]").val() == "" ) { alert("검색어를 입력하세요."); $("input[name=searchKey]").focus(); @@ -46,7 +46,7 @@ function searchPsBoard() { } document.listForm.pageIndex.value = "1"; document.listForm.action = "${pageContext.request.contextPath}/admins/board/00.do"; - document.listForm.submit(); + document.listForm.submit(); } $(document).ready( @@ -56,9 +56,9 @@ $(document).ready( if ( $(this).val() == "" ) { $(this).prop("selected", "selected"); } - } + } ); - } + } ); @@ -82,15 +82,15 @@ $(document).ready( - + - + @@ -164,7 +164,7 @@ $(document).ready(
- +
diff --git a/old/home-training-index.jsp b/src/main/webapp/WEB-INF/views/admins/constructionProjectManagement/00.jsp similarity index 63% rename from old/home-training-index.jsp rename to src/main/webapp/WEB-INF/views/admins/constructionProjectManagement/00.jsp index 1cce9ed..6850db0 100644 --- a/old/home-training-index.jsp +++ b/src/main/webapp/WEB-INF/views/admins/constructionProjectManagement/00.jsp @@ -9,10 +9,10 @@ - + - +

집합교육

- +
@@ -473,7 +673,7 @@
- + @@ -502,13 +702,13 @@
- - + +

교육 대상자 명단

⁕ 신청 집합교육명 : - + @@ -534,7 +734,38 @@
-
+
+
+ +
diff --git a/src/main/webapp/WEB-INF/views/admins/constructionProjectManagement/00_view.jsp b/src/main/webapp/WEB-INF/views/admins/constructionProjectManagement/00_view.jsp new file mode 100644 index 0000000..5216fcf --- /dev/null +++ b/src/main/webapp/WEB-INF/views/admins/constructionProjectManagement/00_view.jsp @@ -0,0 +1,132 @@ +<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> +<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %> +<%@ taglib prefix="form" uri="http://www.springframework.org/tags/form" %> +<%@ taglib prefix="ui" uri="http://egovframework.gov/ctl/ui"%> + + +사용자정보 상세보기 + + + + + + + + + +<%-- --%> +
+ + + + + + + + + + + + + +
  
+ + + + + + + + + + + + + +
아이디이름전화번호이메일
+ + + + + + + + + + + + + +
업종회사명부서주소
 
+ + + + + + + + + + + + + + + + + +
사업자등록번호 가입 요청일사업자등록번호 가입일 
+ + + + + + + + + + + + + + + + + + + + + + + +
승인여부  개인회원에서 기업회원으로 변경 기업회원에서 개인회원으로 변경 
+ + + + + + +
+
+ + +
 
+ + diff --git a/src/main/webapp/WEB-INF/views/admins/constructionProjectManagement/00_view_Ini.jsp b/src/main/webapp/WEB-INF/views/admins/constructionProjectManagement/00_view_Ini.jsp new file mode 100644 index 0000000..73e7eac --- /dev/null +++ b/src/main/webapp/WEB-INF/views/admins/constructionProjectManagement/00_view_Ini.jsp @@ -0,0 +1,126 @@ +<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> +<%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt" %> +<%@ taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions" %> +<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %> +<%@ taglib prefix="form" uri="http://www.springframework.org/tags/form" %> +<%@ taglib prefix="ui" uri="http://egovframework.gov/ctl/ui"%> + + +사용자정보 상세보기 + + + + + + + + + + + +<%-- --%> +
+ + + + + + + + + + + + + + + + + +
  
+ + + + + + + + + + + + + + +
아이디이름전화번호이메일
--> ${result.prephoneno} --> -->
+ + + + + + + + + + + + + +
직업회사명부서주소
<%--   --%>
+ + + + + + +
+
+ +
+     + + + + +
 
+
+ +
+ + diff --git a/src/main/webapp/WEB-INF/views/admins/constructionProjectManagement/01.jsp b/src/main/webapp/WEB-INF/views/admins/constructionProjectManagement/01.jsp new file mode 100644 index 0000000..c2c367b --- /dev/null +++ b/src/main/webapp/WEB-INF/views/admins/constructionProjectManagement/01.jsp @@ -0,0 +1,183 @@ +<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> +<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %> +<%@ taglib prefix="form" uri="http://www.springframework.org/tags/form" %> +<%@ taglib prefix="ui" uri="http://egovframework.gov/ctl/ui"%> + + + + + + + + + + +
+ + + + + + + --%> + + + + + + + + +
 
+ <%--
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
번호아이디이름회사명업종사업자등록번호이메일가입일상세보기
${resultList.num}${resultList.userid}${resultList.userName}${resultList.companyName}${resultList.upjong}${resultList.companyRegistNo}${resultList.email}${resultList.datetimes} + +
+ + + + + + + + + + +
+ +
+ + + + +
+ + diff --git a/src/main/webapp/WEB-INF/views/admins/constructionProjectManagement/02.jsp b/src/main/webapp/WEB-INF/views/admins/constructionProjectManagement/02.jsp new file mode 100644 index 0000000..debf87e --- /dev/null +++ b/src/main/webapp/WEB-INF/views/admins/constructionProjectManagement/02.jsp @@ -0,0 +1,185 @@ +<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> +<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %> +<%@ taglib prefix="form" uri="http://www.springframework.org/tags/form" %> +<%@ taglib prefix="ui" uri="http://egovframework.gov/ctl/ui"%> + + + + + + + + + + +
+ + + + + + + --%> + + + + + + + + +
 
+ <%--
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
번호아이디이름회사명업종사업자등록번호이메일가입일상세보기
${resultList.num}${resultList.userid}${resultList.userName}${resultList.companyName}${resultList.upjong}${resultList.companyRegistNo}${resultList.email}${resultList.datetimes} + +
+ + + + + + + + + + +
+ + + +
+ + + + +
+ + diff --git a/src/main/webapp/WEB-INF/views/admins/constructionProjectManagement/03.jsp b/src/main/webapp/WEB-INF/views/admins/constructionProjectManagement/03.jsp new file mode 100644 index 0000000..f3190cd --- /dev/null +++ b/src/main/webapp/WEB-INF/views/admins/constructionProjectManagement/03.jsp @@ -0,0 +1,37 @@ +<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> +<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %> +<%@ taglib prefix="form" uri="http://www.springframework.org/tags/form" %> +<%@ taglib prefix="ui" uri="http://egovframework.gov/ctl/ui"%> + + + + + + + + + + + + + + +
 
+ + + + + + + + + + + + + + +
사용자 그룹등 록 수
${resultList.name}${resultList.cnt}
+
+ + diff --git a/src/main/webapp/WEB-INF/views/admins/constructionProjectManagement/05.jsp b/src/main/webapp/WEB-INF/views/admins/constructionProjectManagement/05.jsp new file mode 100644 index 0000000..3bc3fe6 --- /dev/null +++ b/src/main/webapp/WEB-INF/views/admins/constructionProjectManagement/05.jsp @@ -0,0 +1,98 @@ +<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> +<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %> +<%@ taglib prefix="form" uri="http://www.springframework.org/tags/form" %> +<%@ taglib prefix="ui" uri="http://egovframework.gov/ctl/ui"%> + + + + + + + + + + + + + + + + + + + +
 
+ + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + +
아이디이름회사연락처지역(시,도)지역(시,군,구)권한날짜삭제
${resultList.userid}${resultList.userName}${resultList.companyName}${resultList.phone}${resultList.regionName}${resultList.regionSggName}${resultList.startDate} ~ ${resultList.endDate}
+
+ + diff --git a/src/main/webapp/WEB-INF/views/admins/constructionProjectManagement/05_addUser.jsp b/src/main/webapp/WEB-INF/views/admins/constructionProjectManagement/05_addUser.jsp new file mode 100644 index 0000000..0371af6 --- /dev/null +++ b/src/main/webapp/WEB-INF/views/admins/constructionProjectManagement/05_addUser.jsp @@ -0,0 +1,308 @@ +<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> +<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %> +<%@ taglib prefix="form" uri="http://www.springframework.org/tags/form" %> +<%@ taglib prefix="ui" uri="http://egovframework.gov/ctl/ui"%> + + + +사용자 추가 + + + + + + + + + + +Insert title here + + + + +<%-- --%> +
+ + + + + + + + + + + + +
  
+ + + + + +
+ 추가 아이디 : + + 추가 +
+ + + + + + + + + + + + + +
아이디이름회사연락처
+ + + + + + + + + + + + + + +
시작일종료일지역선택(시,도)지역선택(시,군,구)
+ + + + + +
+ +
+ + + +
 
+
+ + \ No newline at end of file diff --git a/src/main/webapp/WEB-INF/views/admins/constructionProjectManagement/07.jsp b/src/main/webapp/WEB-INF/views/admins/constructionProjectManagement/07.jsp new file mode 100644 index 0000000..6db8b7f --- /dev/null +++ b/src/main/webapp/WEB-INF/views/admins/constructionProjectManagement/07.jsp @@ -0,0 +1,125 @@ +<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> +<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %> +<%@ taglib prefix="form" uri="http://www.springframework.org/tags/form" %> +<%@ taglib prefix="ui" uri="http://egovframework.gov/ctl/ui"%> +<%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt" %> +<%@ taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions" %> + + + + + + + + + + +
+ + + + + + + --%> + + + + + + + + +
 
+ <%--
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + +
번호아이디수정한이름회사명수정한이메일요청날짜상태상세보기
${resultList.num}${resultList.userid}${resultList.username}${resultList.companyName}${resultList.email}${fn:substring(requestdate,0,4)}-${fn:substring(requestdate,4,6)}-${fn:substring(requestdate,6,8)} + + + 미확인 + + + 승인 + + + 반려 + + + + +
+ + + + + + + + + + +
+ +
+ + + + +
+ + diff --git a/src/main/webapp/WEB-INF/views/admins/constructionProjectManagement/40.jsp b/src/main/webapp/WEB-INF/views/admins/constructionProjectManagement/40.jsp new file mode 100644 index 0000000..d721b5c --- /dev/null +++ b/src/main/webapp/WEB-INF/views/admins/constructionProjectManagement/40.jsp @@ -0,0 +1,189 @@ +<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> +<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %> +<%@ taglib prefix="form" uri="http://www.springframework.org/tags/form" %> +<%@ taglib prefix="ui" uri="http://egovframework.gov/ctl/ui"%> + + + + + + + + + + + + +
+ + + + + + + --%> + + + + + + + + + + + + + + + + + +
 
+ <%--
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
번호아이디이름소속지자체이메일가입일승인상태상세보기
${resultList.num}${resultList.userid}${resultList.userName}${resultList.localgove}${resultList.email}${resultList.datetimes} + + + + + + 승인 + + + + +
+ +
+
+ + diff --git a/src/main/webapp/WEB-INF/views/admins/constructionProjectManagement/40_view.jsp b/src/main/webapp/WEB-INF/views/admins/constructionProjectManagement/40_view.jsp new file mode 100644 index 0000000..f874902 --- /dev/null +++ b/src/main/webapp/WEB-INF/views/admins/constructionProjectManagement/40_view.jsp @@ -0,0 +1,84 @@ +<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> +<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %> +<%@ taglib prefix="form" uri="http://www.springframework.org/tags/form" %> +<%@ taglib prefix="ui" uri="http://egovframework.gov/ctl/ui"%> + + +지자체 공무원 증빙문서 + + + + + + + + + + +
+ + + +<%-- --%> +
+ + + + + + + + + + + + +
  
+ + + + + + + + + + + + + + + + + + + +
아이디이름전화번호이메일소속지자체
지자체 공무원 증빙문서 + ${result.filename} +
+
+ + + +
 
+
+ + diff --git a/src/main/webapp/WEB-INF/views/admins/constructionProjectManagement/construction-project-statistics-index.jsp b/src/main/webapp/WEB-INF/views/admins/constructionProjectManagement/construction-project-statistics-index.jsp new file mode 100644 index 0000000..e0f516b --- /dev/null +++ b/src/main/webapp/WEB-INF/views/admins/constructionProjectManagement/construction-project-statistics-index.jsp @@ -0,0 +1,177 @@ +<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> +<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %> +<%@ taglib prefix="form" uri="http://www.springframework.org/tags/form" %> +<%@ taglib prefix="ui" uri="http://egovframework.gov/ctl/ui"%> + + + + + + + + + + + + + + + + + +

건설현장 통계

+
+ + +
+
+
+

검색

+
+
+
+
+ + +
+
+ + +
+
+ + +
+
+ + +
+
+
+
+ +
+
+ +

건설현장 등록 건수

+
+
+
+

전체 등록 수

+

12 건

+
+
+
+
+

부산광역시

+

12 건

+
+
+
+
+

대구광역시

+

0 건

+
+
+
+
+

세종특별자치시

+

0 건

+
+
+
+ +
+
+
+

최근 입력된 건설현장

+

부산 북항 재개발 사업 - 부산광역시

+

가덕도 신공항 건설공사 - 부산광역시

+

부산 에코델타시티 조성사업 - 부산광역시

+

동해남부선 복선전철화 사업 - 부산광역시

+

부산 도시철도 1호선 연장 공사 - 부산광역시

+
+
+ +
+
+
+
+
+
+

단계별 건수

+

타당성조사 및 계획검토: 12건

+

기본설계: 0건

+

실시설계: 0건

+

시공중: 0건

+

준공: 0건

+

유지보수: 0건

+
+
+
+
+

프로젝트 연결률

+

부산광역시: 8.33%

+

대전광역시: 0%

+

세종특별자치시: 0%

+

서울특별시: 0%

+

대구광역시: 0%

+
+
+ +
+
+
+
+
+
+
+
+

Text

+
+
+
+
+

Text

+
+
+
+
+ +
+ +
+ + diff --git a/old/home-training-approval-system.jsp b/src/main/webapp/WEB-INF/views/admins/constructionProjectManagement/home-training-approval-system.jsp similarity index 100% rename from old/home-training-approval-system.jsp rename to src/main/webapp/WEB-INF/views/admins/constructionProjectManagement/home-training-approval-system.jsp diff --git a/src/main/webapp/WEB-INF/views/admins/constructionProjectManagement/left.jsp b/src/main/webapp/WEB-INF/views/admins/constructionProjectManagement/left.jsp new file mode 100644 index 0000000..1ac8888 --- /dev/null +++ b/src/main/webapp/WEB-INF/views/admins/constructionProjectManagement/left.jsp @@ -0,0 +1,92 @@ +<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> +<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %> +<%@ taglib prefix="form" uri="http://www.springframework.org/tags/form" %> +<%@ taglib prefix="fn" uri = "http://java.sun.com/jsp/jstl/functions" %> + + + + + + + + + + + + + + + + + +
+ + + + + + + + +
+ +
+
+ + diff --git a/src/main/webapp/WEB-INF/views/admins/constructionProjectManagement/passChange.jsp b/src/main/webapp/WEB-INF/views/admins/constructionProjectManagement/passChange.jsp new file mode 100644 index 0000000..33ff62e --- /dev/null +++ b/src/main/webapp/WEB-INF/views/admins/constructionProjectManagement/passChange.jsp @@ -0,0 +1,92 @@ +<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> +<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %> +<%@ taglib prefix="form" uri="http://www.springframework.org/tags/form" %> +<%@ taglib prefix="ui" uri="http://egovframework.gov/ctl/ui"%> + + + +회원 비밀번호 변경 + + + + + + +
+ + + + + + + + + + + + + + + + + + +
아이디
변경할 비밀번호
* 비밀번호는 숫자와 영문자 조합으로 10~15 자리를 사용해야 합니다.
+ +
+ \ No newline at end of file diff --git a/old/visit-training-approval-system.jsp b/src/main/webapp/WEB-INF/views/admins/constructionProjectManagement/visit-training-approval-system.jsp similarity index 100% rename from old/visit-training-approval-system.jsp rename to src/main/webapp/WEB-INF/views/admins/constructionProjectManagement/visit-training-approval-system.jsp diff --git a/old/visit-training-index.jsp b/src/main/webapp/WEB-INF/views/admins/constructionProjectManagement/visit-training-index.jsp similarity index 100% rename from old/visit-training-index.jsp rename to src/main/webapp/WEB-INF/views/admins/constructionProjectManagement/visit-training-index.jsp diff --git a/src/main/webapp/WEB-INF/views/admins/frame/mainframe.jsp b/src/main/webapp/WEB-INF/views/admins/frame/mainframe.jsp index f966a6b..59a8989 100644 --- a/src/main/webapp/WEB-INF/views/admins/frame/mainframe.jsp +++ b/src/main/webapp/WEB-INF/views/admins/frame/mainframe.jsp @@ -16,7 +16,7 @@ var waitWin; 727보다 크게 하는 경우는 문제 없습니다. --> - + diff --git a/src/main/webapp/WEB-INF/views/admins/frame/top.jsp b/src/main/webapp/WEB-INF/views/admins/frame/top.jsp index 6b4a7bc..85afeba 100644 --- a/src/main/webapp/WEB-INF/views/admins/frame/top.jsp +++ b/src/main/webapp/WEB-INF/views/admins/frame/top.jsp @@ -2,7 +2,7 @@ - + +
Ǽ
@@ -34,6 +35,6 @@ - + diff --git a/src/main/webapp/WEB-INF/views/admins/main/index.jsp b/src/main/webapp/WEB-INF/views/admins/main/index.jsp index 1f1f142..7de36a7 100644 --- a/src/main/webapp/WEB-INF/views/admins/main/index.jsp +++ b/src/main/webapp/WEB-INF/views/admins/main/index.jsp @@ -9,6 +9,7 @@ 국토지반정보 포털 관리시스템 + @@ -140,6 +141,7 @@ document.addEventListener('keyup', function(e) { + 건설현장 관리 diff --git a/src/main/webapp/WEB-INF/views/admins/main/main.jsp b/src/main/webapp/WEB-INF/views/admins/main/main.jsp index 1cd36d5..afbcc91 100644 --- a/src/main/webapp/WEB-INF/views/admins/main/main.jsp +++ b/src/main/webapp/WEB-INF/views/admins/main/main.jsp @@ -5,6 +5,7 @@ 국토지반정보 포털 관리시스템 +