아이콘, 수정2

master
Hyung Geun 2022-02-22 13:33:20 +09:00
parent fccccb32aa
commit 2cf5bd6974
18 changed files with 452 additions and 528 deletions

View File

@ -4,24 +4,9 @@
<%@ taglib prefix="ui" uri="http://egovframework.gov/ctl/ui"%>
<%@ taglib prefix="spring" uri="http://www.springframework.org/tags"%>
<!DOCTYPE html>
<html lang="ko">
<script src="../../../js/admin/dashBoard.js"></script>
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1">
<title>모바일센터 관리시스템</title>
<script src="<c:out value="/js/jquery-3.5.1.min.js" />"></script>
<script src="<c:out value="/js/bootstrap-3.3.2.min.js" />"></script>
<link href="<c:out value="/css/normalize.css" />" rel="stylesheet">
<link href="<c:out value="/css/bootstrap.min.css" />" rel="stylesheet">
<link href="<c:out value="/css/style.css" />" rel="stylesheet">
</head>
<script>
</script>
<body>
<%@ include file="../include/header.jsp"%>
<section class="section">
<div class="row">
<div class="col-lg-3">
@ -29,5 +14,3 @@
</div>
</div>
</section>
</body>
</html>

View File

@ -4,33 +4,15 @@
<%@ taglib prefix="ui" uri="http://egovframework.gov/ctl/ui"%>
<%@ taglib prefix="spring" uri="http://www.springframework.org/tags"%>
<!DOCTYPE html>
<html lang="ko">
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1">
<title>모바일센터 관리시스템</title>
<script src="<c:out value="/js/jquery-3.5.1.min.js" />"></script>
<script src="<c:out value="/js/bootstrap-3.3.2.min.js" />"></script>
<link href="<c:out value="/css/normalize.css" />" rel="stylesheet">
<link href="<c:out value="/css/bootstrap.min.css" />" rel="stylesheet">
<link href="<c:out value="/css/style.css" />" rel="stylesheet">
<script src="../../../js/admin/fieldData.js"></script>
<style>
.searchList > li{
display: inline;
}
</style>
</head>
<script>
function fn_link_page(pageNo) {
document.searchForm.pageIndex.value = pageNo;
document.searchForm.action = "<c:url value='/admin/fieldData' />";
document.searchForm.submit();
}
</script>
<body>
<%@ include file="../include/header.jsp"%>
<section class="section">
<div class="section_title">
<!-- <p>현장 지원 시스템</p> -->
@ -101,5 +83,3 @@
</div>
</div>
</section>
</body>
</html>

View File

@ -4,27 +4,9 @@
<%@ taglib prefix="ui" uri="http://egovframework.gov/ctl/ui"%>
<%@ taglib prefix="spring" uri="http://www.springframework.org/tags"%>
<!DOCTYPE html>
<html lang="ko">
<script src="../../../js/admin/fieldView.js"></script>
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1">
<title>모바일센터 관리시스템</title>
<script src="<c:out value="/js/jquery-3.5.1.min.js" />"></script>
<script src="<c:out value="/js/bootstrap-3.3.2.min.js" />"></script>
<script src="<c:out value="/js/openlayers/ol.js" />"></script>
<script src="<c:out value="/js/openlayers/proj4.js" />"></script>
<link href="<c:out value="/css/normalize.css" />" rel="stylesheet">
<link href="<c:out value="/css/bootstrap.min.css" />" rel="stylesheet">
<link href="<c:out value="/css/style.css" />" rel="stylesheet">
<link href="<c:out value="/css/openlayers/ol.css" />" rel="stylesheet">
</head>
<body>
<%@ include file="../include/header.jsp"%>
<section class="section">
<div class="section_title">
<!-- <p>현장 지원 시스템</p> -->
@ -132,210 +114,4 @@
</p>
</div>
</div>
</section>
</body>
<script>
function fieldVerify(){
alert('준비중');
}
function fieldReflect(){
alert('준비중');
}
$(function() {
drawingObj();
makePropPaging();
makePropTable();
});
var field_data = JSON.parse('${fieldDataVO.field_data}');
var wkt = null;
proj4.defs('EPSG:5186', '+proj=tmerc +lat_0=38 +lon_0=127 +k=1 +x_0=200000 +y_0=600000 +ellps=GRS80 +units=m +no_defs');
var baseMap = new ol.layer.Tile({
title : 'vworldMap',
visible : true,
type : 'base',
source : new ol.source.XYZ({
url : 'http://api.vworld.kr/req/wmts/1.0.0/5616CAD1-5D79-3EE3-87D5-878A4AD0F91F/Base/{z}/{y}/{x}.png'
})
});
var view = new ol.View({
center : ol.proj.transform([ 203766.984, 541132.2 ], 'EPSG:5186', 'EPSG:3857'),
zoom : 18, // 초기화면 zoom level
minZoom : 1, // 최소 zoom level
maxZoom : 19, // 최대 zoom level
});
var map = new ol.Map({
layers : [ baseMap ],
logo : false, //우측하단 로고 제거
target : 'map',
loadTilesWhileAnimating : true,
view : view
});
var format = new ol.format.WKT();
var objVectorSource = new ol.source.Vector({});
var objVectorLayer = new ol.layer.Vector({
source : objVectorSource,
style : objStyle
});
var cursorStyle = "";
var selected = null;
map.on("pointermove", function(e) {
if (selected !== null) {
selected.setStyle(undefined);
selected = null;
}
var newStyle = this.hasFeatureAtPixel(e.pixel) ? "pointer" : "";
newStyle !== cursorStyle && $(this.getTargetElement()).css("cursor", cursorStyle = newStyle);
map.forEachFeatureAtPixel(e.pixel, function(f) {
selected = f;
f.setStyle(highlightStyle);
return true;
});
});
var highlightStyle = new ol.style.Style({
stroke : new ol.style.Stroke({
color : '#3399CC',
width : 8,
}),
});
// feature click evt
map.on('click', function(event) {
map.forEachFeatureAtPixel(event.pixel, function(feature, layer) {
var idx = feature.get("idx");
makePropTable(idx);
})
});
function objStyle(feature, resolution) {
var selected = feature.get('selected');
var style = null;
if (selected) {
style = new ol.style.Style({
stroke : new ol.style.Stroke({
color : '#f00',
width : 5
})
});
} else {
style = new ol.style.Style({
stroke : new ol.style.Stroke({
color : '#52b4e7',
width : 5
})
});
}
return style;
}
function resetObjStyle() {
var feature = getObjFeatureBySelected();
if (feature) {
feature.set("selected", false);
}
}
function makePropTable(idx) {
if (idx == null)
idx = 0;
$("#fieldDataBody > tr").remove();
var num = 0;
var tags = "";
for(var i in field_data[idx].prop) {
num++;
if(num % 2 == 0){
tags += "<th>" + i + "</th><td>" + field_data[idx].prop[i] + "</td></tr>";
}else{
tags += "<tr><th>" + i + "</th><td>" + field_data[idx].prop[i] + "</td>";
}
}
$("#fieldDataBody").append(tags);
nowPagingOn(idx);
resetObjStyle();
//중심좌표 구하기?
//var aa = feature.getGeometry().v;
//var oo = ol.extent.getCenter(aa);
var center = field_data[idx].center;
var feature = getObjFeatureByIdx(idx);
moveCenter(center);
if (feature) {
feature.set("selected", true);
}
}
function nowPagingOn(idx){
$(".paging_li").removeClass("fieldPagingOn")
$("#paging_li"+idx).attr("class", "fieldPagingOn paging_li");
}
function makePropPaging() {
var pagingNumber = 0;
for (var idx in field_data) {
pagingNumber++;
$("#fieldDataPaging").append('<li class="paging_li" id="paging_li'+idx+'" onclick="makePropTable(' + idx + ')">' + pagingNumber+ '</li>');
}
}
function drawingObj() {
objVectorSource.clear();
var objFeatures = [];
for (var idx in field_data) {
var objFeature = format.readFeature(field_data[idx].WKT, {
dataProjection : 'EPSG:5186',
featureProjection : 'EPSG:3857'
});
objFeature.setProperties({
"idx" : idx,
"selected" : false
});
objFeatures.push(objFeature);
}
objVectorSource.addFeatures(objFeatures);
map.addLayer(objVectorLayer);
}
function moveCenter(center) {
var coordinates = ol.proj.transform(center, 'EPSG:5186', 'EPSG:3857');
map.getView().setCenter(coordinates);
}
function getObjFeatureBySelected() {
var features = objVectorSource.getFeatures();
var feature = null;
for (var i = 0, size = features.length; i < size; i++) {
if (features[i].get('selected') == true) {
feature = features[i];
break;
}
}
return feature;
}
function getObjFeatureByIdx(idx) {
var features = objVectorSource.getFeatures();
var feature = null;
for (var i = 0, size = features.length; i < size; i++) {
if (features[i].get('idx') == idx) {
feature = features[i];
break;
}
}
return feature;
}
</script>
</html>
</section>

View File

@ -4,90 +4,64 @@
<%@ taglib prefix="form" uri="http://www.springframework.org/tags/form"%>
<%@ taglib prefix="ui" uri="http://egovframework.gov/ctl/ui"%>
<%@ taglib prefix="spring" uri="http://www.springframework.org/tags"%>
<script src="../../../js/admin/history.js"></script>
<!DOCTYPE html>
<html lang="ko">
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1">
<title>모바일센터 관리시스템</title>
<script src="<c:out value="/js/jquery-3.5.1.min.js" />"></script>
<script src="<c:out value="/js/bootstrap-3.3.2.min.js" />"></script>
<link href="<c:out value="/css/normalize.css" />" rel="stylesheet">
<link href="<c:out value="/css/bootstrap.min.css" />" rel="stylesheet">
<link href="<c:out value="/css/style.css" />" rel="stylesheet">
</head>
<script>
function fn_link_page(pageNo) {
document.searchForm.pageIndex.value = pageNo;
document.searchForm.action = "<c:url value='/admin/history' />";
document.searchForm.submit();
}
</script>
<body>
<%@ include file="../include/header.jsp"%>
<section class="section">
<div class="section_title">
<!-- <p>현장 지원 시스템</p> -->
</div>
<div class="section_content">
<form:form commandName="UseHistorySearchVO" name="searchForm" action="/admin/history" method="get">
<div class="search_div">
<div class="search_menu">&nbsp;</div>
<div class="search_keyword">
<select class="form-control search_selectbox" name="searchCondition">
<option <c:if test="${UseHistorySearchVO.searchCondition eq 'all'}"><c:out value="selected" /></c:if> value="all">통합검색</option>
<option <c:if test="${UseHistorySearchVO.searchCondition eq 'name'}"><c:out value="selected" /></c:if> value="name">이름</option>
<option <c:if test="${UseHistorySearchVO.searchCondition eq 'company'}"><c:out value="selected" /></c:if> value="company">소속</option>
<option <c:if test="${UseHistorySearchVO.searchCondition eq 'req_area'}"><c:out value="selected" /></c:if> value="req_area">위치</option>
</select>
<input type="text" class="form-control search_inputbox" name="searchKeyword" value="<c:out value='${UseHistorySearchVO.searchKeyword}' />" />
<input class="btn btn-default" type="submit" value="검색" />
</div>
<section class="section">
<div class="section_title">
<!-- <p>지도사용 이력</p> -->
</div>
<div class="section_content">
<form:form commandName="UseHistorySearchVO" name="searchForm" action="/admin/history" method="get">
<div class="search_div">
<div class="search_menu">&nbsp;</div>
<div class="search_keyword">
<select class="form-control search_selectbox" name="searchCondition">
<option <c:if test="${UseHistorySearchVO.searchCondition eq 'all'}"><c:out value="selected" /></c:if> value="all">통합검색</option>
<option <c:if test="${UseHistorySearchVO.searchCondition eq 'name'}"><c:out value="selected" /></c:if> value="name">이름</option>
<option <c:if test="${UseHistorySearchVO.searchCondition eq 'company'}"><c:out value="selected" /></c:if> value="company">소속</option>
<option <c:if test="${UseHistorySearchVO.searchCondition eq 'req_area'}"><c:out value="selected" /></c:if> value="req_area">위치</option>
</select>
<input type="text" class="form-control search_inputbox" name="searchKeyword" value="<c:out value='${UseHistorySearchVO.searchKeyword}' />" />
<input class="btn btn-default" type="submit" value="검색" />
</div>
<table class="list-table">
<thead>
<tr><th colspan="5">지도사용 이력</th></tr>
<tr>
<th>위치</th>
<th>소속</th>
<th>담당자</th>
<th>날짜</th>
</tr>
</thead>
<tbody>
<c:if test="${count >= 1}">
<c:forEach var="item" items="${useHistoryList}">
<tr>
<td><c:out value="${item.reqArea}" /></td>
<td><c:out value="${item.company}" /></td>
<td><c:out value="${item.name}" /></td>
<td class="td_date"><c:out value="${item.logDate}" /></td>
</tr>
</c:forEach>
</c:if>
<c:if test="${count == 0}">
<tr><td colspan="5">요청한 목록이 없습니다.</td></tr>
</c:if>
</tbody>
</table>
</div>
<div class="text-center">
<nav aria-label="Page navigation">
<ul class="pagination">
<ui:pagination paginationInfo="${paginationInfo}" type="image" jsFunction="fn_link_page" />
<form:hidden path="pageIndex" />
</form:form>
</ul>
</nav>
</div>
</div>
</section>
</body>
</html>
<table class="list-table">
<thead>
<tr><th colspan="5">지도사용 이력</th></tr>
<tr>
<th>위치</th>
<th>소속</th>
<th>담당자</th>
<th>날짜</th>
</tr>
</thead>
<tbody>
<c:if test="${count >= 1}">
<c:forEach var="item" items="${useHistoryList}">
<tr>
<td><c:out value="${item.reqArea}" /></td>
<td><c:out value="${item.company}" /></td>
<td><c:out value="${item.name}" /></td>
<td class="td_date"><c:out value="${item.logDate}" /></td>
</tr>
</c:forEach>
</c:if>
<c:if test="${count == 0}">
<tr><td colspan="5">요청한 목록이 없습니다.</td></tr>
</c:if>
</tbody>
</table>
<div class="text-center">
<nav aria-label="Page navigation example">
<ul class="pagination">
<ui:pagination paginationInfo="${paginationInfo}" type="image" jsFunction="fn_link_page" />
<form:hidden path="pageIndex" />
</form:form>
</ul>
</nav>
</div>
</div>
</section>

View File

@ -3,25 +3,20 @@
<%@ taglib prefix="form" uri="http://www.springframework.org/tags/form"%>
<%@ taglib prefix="ui" uri="http://egovframework.gov/ctl/ui"%>
<%@ taglib prefix="spring" uri="http://www.springframework.org/tags"%>
<script src="../../../js/admin/request.js"></script>
<script>
function fn_link_page(pageNo) {
document.searchForm.pageIndex.value = pageNo;
document.searchForm.action = "<c:url value='/admin/request' />";
document.searchForm.submit();
}
</script>
<section class="section">
<div class="section_content">
<form:form commandName="useRequestSearchVO" name="searchForm" action="/admin/request" method="get">
<input type="hidden" name="status" value="<c:out value="${useRequestSearchVO.status}" />" />
<div class="search_div">
<div class="search_menu">
<ul class="nav nav-pills" role="tablist">
<li role="presentation" <c:if test="${empty useRequestSearchVO.status}">class="active"</c:if>><a href="/admin/request">전체</a></li>
<li role="presentation" <c:if test="${useRequestSearchVO.status eq '0'}">class="active"</c:if>><a href="/admin/request?status=0">승인</a></li>
<li role="presentation" <c:if test="${useRequestSearchVO.status eq '-1'}">class="active"</c:if>><a href="/admin/request?status=-1">반려</a></li>
<li role="presentation" <c:if test="${useRequestSearchVO.status eq '99'}">class="active"</c:if>><a href="/admin/request?status=99">승인대기<span class="badge"><c:out value="${statusCnt}" /></span></a></li>
<ul class="nav-fill" role="tablist">
<li role="tab" <c:if test="${empty useRequestSearchVO.status}">class="active"</c:if>><a href="/admin/request">전체</a></li>
<li role="tab" <c:if test="${useRequestSearchVO.status eq '0'}">class="active"</c:if>><a href="/admin/request?status=0">승인</a></li>
<li role="tab" <c:if test ="${useRequestSearchVO.status eq '-1'}">class="active"</c:if>><a href="/admin/request?status=-1">반려</a></li>
<li role="tab" <c:if test="${useRequestSearchVO.status eq '99'}">class="active"</c:if>><a href="/admin/request?status=99">승인대기<span class="badge"><c:out value="${statusCnt}" /></span></a></li>
</ul>
</div>
@ -62,9 +57,9 @@
<td class="td_date"><c:out value="${item.r_date}" /></td>
<td>
<c:choose>
<c:when test="${item.status eq '99'}"><span class="label label-warning"><c:out value='승인대기' /></span></c:when>
<c:when test="${item.status eq '0'}"><span class="label label-success"><c:out value='승인' /></span></c:when>
<c:when test="${item.status eq '-1'}"><span class="label label-default"><c:out value='반려' /></span></c:when>
<c:when test="${item.status eq '99'}"><span class="card-warning"><c:out value='승인대기' /></span></c:when>
<c:when test="${item.status eq '0'}"><span class="card-success"><c:out value='승인' /></span></c:when>
<c:when test="${item.status eq '-1'}"><span class="card-default"><c:out value='반려' /></span></c:when>
</c:choose>
</td>
</tr>

View File

@ -5,23 +5,9 @@
<%@ taglib prefix="spring" uri="http://www.springframework.org/tags"%>
<%@ taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions"%>
<!DOCTYPE html>
<html lang="ko">
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1">
<title>모바일센터 관리시스템</title>
<script src="<c:out value="/js/jquery-3.5.1.min.js" />"></script>
<script src="<c:out value="/js/bootstrap-3.3.2.min.js" />"></script>
<script src="../../../js/admin/requestView.js"></script>
<link href="<c:out value="/css/normalize.css" />" rel="stylesheet">
<link href="<c:out value="/css/bootstrap.min.css" />" rel="stylesheet">
<link href="<c:out value="/css/style.css" />" rel="stylesheet">
</head>
<body>
<%@ include file="../include/header.jsp"%>
<section class="section">
<form:form commandName="useRequestVO" name="frm" method="POST" action="/admin/updateReqConfirm" id="updateFrm">
<input type="hidden" name="idx" value="<c:out value='${useRequestVO.idx}' />" />
@ -189,27 +175,5 @@
</div>
</form:form>
</section>
<script type="text/javascript">
function confirmReqBtn(val){
$("#status").val(val);
var msg;
if(val == 0){
msg = "승인";
}else{
msg = "거절";
}
if(confirm("지도사용요청을 "+msg+" 하시겠습니까?")){
$("#updateFrm").submit();
}else{
return false;
}
}
</script>
</body>
</html>

View File

@ -5,34 +5,15 @@
<%@ taglib prefix="ui" uri="http://egovframework.gov/ctl/ui"%>
<%@ taglib prefix="spring" uri="http://www.springframework.org/tags"%>
<!DOCTYPE html>
<html lang="ko">
<script src="../../../js/admin/userinfo.js"></script>
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1">
<title>모바일센터 관리시스템</title>
<script src="<c:out value="/js/jquery-3.5.1.min.js" />"></script>
<script src="<c:out value="/js/bootstrap-3.3.2.min.js" />"></script>
<link href="<c:out value="/css/normalize.css" />" rel="stylesheet">
<link href="<c:out value="/css/bootstrap.min.css" />" rel="stylesheet">
<link href="<c:out value="/css/style.css" />" rel="stylesheet">
<style>
.searchList > li{
display: inline;
}
</style>
</head>
<script>
function fn_link_page(pageNo) {
document.searchForm.pageIndex.value = pageNo;
document.searchForm.action = "<c:url value='/admin/userInfo' />";
document.searchForm.submit();
}
</script>
<body>
<%@ include file="../include/header.jsp"%>
<section class="section">
<div class="section_title">
<!-- <p>현장 지원 시스템</p> -->
@ -41,7 +22,7 @@
<form:form commandName="userSearchVO" name="searchForm" action="/admin/userInfo" method="get">
<div class="search_div">
<div class="search_menu">
<ul class="nav nav-pills" role="tablist">
<ul class="nav nav-fill" role="tablist">
<li role="presentation" <c:if test="${userSearchVO.auth eq '99'}">class="active"</c:if>><a href="/admin/userInfo?auth=99">승인대기<span class="badge"><c:out value='${standByCount}' /></span></a></li>
<li role="presentation" <c:if test="${empty userSearchVO.auth}">class="active"</c:if>><a href="/admin/userInfo">회원 관리</a></li>
</ul>
@ -97,8 +78,8 @@
<c:when test="${item.auth eq '1'}">관리자</c:when>
<c:when test="${item.auth eq '2'}">사용자</c:when>
<c:when test="${item.auth eq '99'}">
<input type="button" class="btn btn-default" value="승인" onclick="confirmBtn('${item.userid}','2'); return false;" />
<input type="button" class="btn btn-default" value="삭제" onclick="confirmBtn('${item.userid}','-1'); return false;" />
<input type="button" class="btn-outline-success" value="승인" onclick="confirmBtn('${item.userid}','2'); return false;" />
<input type="button" class="btn-outline-danger" value="삭제" onclick="confirmBtn('${item.userid}','-1'); return false;" />
</c:when>
</c:choose>
</td>
@ -127,24 +108,3 @@
</form:form>
</div>
</section>
<script type="text/javascript">
function confirmBtn(userid, auth){
$("#userid").val(userid);
$("#auth").val(auth);
var msg;
if(auth == 2){
msg = "승인";
}else{
msg = "삭제";
}
if(confirm(msg+" 처리 하시겠습니까?")){
$("#updateFrm").submit();
}else{
return false;
}
}
</script>
</body>
</html>

View File

@ -4,22 +4,12 @@
<%@ taglib prefix="ui" uri="http://egovframework.gov/ctl/ui"%>
<%@ taglib prefix="spring" uri="http://www.springframework.org/tags"%>
<!DOCTYPE html>
<html lang="ko">
<script src="../../../js/admin/userinfoView.js"></script>
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1">
<title>모바일센터 관리시스템</title>
<script src="<c:out value="/js/jquery-3.5.1.min.js" />"></script>
<script src="<c:out value="/js/bootstrap-3.3.2.min.js" />"></script>
<link href="<c:out value="/css/normalize.css" />" rel="stylesheet">
<link href="<c:out value="/css/bootstrap.min.css" />" rel="stylesheet">
<link href="<c:out value="/css/style.css" />" rel="stylesheet">
</head>
<body>
<%@ include file="../include/header.jsp"%>
<section class="section">
<div class="section_content">
<form:form commandName="userVO" name="updateForm" id="updateForm" action="/admin/userUpdate" method="post">
@ -105,61 +95,3 @@
</div>
</section>
<script type="text/javascript">
$(function(){
$("#changePw").click(function(){
if($(this).is(":checked")){
$("#password").attr("disabled", false);
$("#passwordCheck").attr("disabled", false);
}else{
$("#password").attr("disabled", true);
$("#passwordCheck").attr("disabled", true);
}
});
});
function update() {
var changePw = $("#changePw").is(":checked");
var pw1 = $('#password').val();
var pw2 = $('#passwordCheck').val();
var name = $('#name').val();
var company = $('#company').val();
var tell = $('#phonenum').val();
var email_1 = $('#email').val();
if (changePw && pw1 == "") {
alert('비밀번호를 입력해주세요');
$('#password').focus();
return;
} else if (changePw && pw2 == "") {
alert('비밀번호를 입력해주세요');
$('#passwordCheck').focus();
return;
} else if (changePw && (pw1 != pw2)) {
alert('비밀번호가 일치하지 않습니다.');
$('#pass').focus();
return;
} else if (name == "") {
alert('이름을 입력해주세요');
$('#name').focus();
return;
} else if (company == "") {
alert('소속기관을 입력해주세요');
$('#company').focus();
return;
} else if (tell == "") {
alert('연락처를 입력해주세요');
$('#phone_num').focus();
return;
} else if (email_1 == "") {
alert('이메일을 입력해주세요');
$('#email').focus();
return;
} else {
$("#updateForm").submit();
}
}
</script>
</body>
</html>

View File

@ -23,9 +23,9 @@
<div class="header_menu">
<ul>
<li <c:if test="${fn:contains(thisURL, '/dashBoard')}">class="thisOn"</c:if> onclick="location.href='/admin/dashBoard'">
<img src="../../../images/icon/icon_analysis.png" width="30" height="30" alt=""> &nbsp;대시보드</li>
<img src="../../../images/icon/icon_dashboard_on.png" width="30" height="30" alt=""> &nbsp;대시보드</li>
<li <c:if test="${fn:contains(thisURL, '/request')}">class="thisOn"</c:if> onclick="location.href='/admin/request'">
<img src="../../../images/icon/icon_map.png" width="30" height="30" alt=""> &nbsp;지도사용 요청</li>
<img src="../../../images/icon/icon_map_on.png" width="30" height="30" alt=""> &nbsp;지도사용 요청</li>
<li <c:if test="${fn:contains(thisURL, '/history')}">class="thisOn"</c:if> onclick="location.href='/admin/history'">
<img src="../../../images/icon/icon_log_on.png" width="30" height="30" alt=""> &nbsp;지도사용 이력</li>
<li <c:if test="${fn:contains(thisURL, '/fieldData')}">class="thisOn"</c:if> onclick="location.href='/admin/fieldData'">

View File

@ -25,7 +25,7 @@
<body class="">
<div id="wrap">
<tiles:insertAttribute name="header"/>
<tiles:insertAttribute name="left"/>
<tiles:insertAttribute name="left"/>
<tiles:insertAttribute name="center"/>
</div>
</body>

View File

@ -2154,6 +2154,11 @@ progress {
margin-bottom: 0.5rem;
}
.col-form-label-warning{
margin-bottom: 0.5rem;
color: #ffc107;
}
.col-form-label {
padding-top: calc(0.375rem + 1px);
padding-bottom: calc(0.375rem + 1px);
@ -4497,6 +4502,44 @@ textarea.form-control-lg {
border: 1px solid rgba(0, 0, 0, 0.125);
border-radius: 0.25rem;
}
.card-warning {
position: relative;
display: flex;
flex-direction: column;
min-width: 0;
word-wrap: break-word;
background-color: #eea236;
background-clip: border-box;
border: 1px solid rgba(0, 0, 0, 0.125);
border-radius: 0.25rem;
}
.card-success {
position: relative;
display: flex;
flex-direction: column;
min-width: 0;
word-wrap: break-word;
background-color: #5cb85c;
background-clip: border-box;
border: 1px solid rgba(0, 0, 0, 0.125);
border-radius: 0.25rem;
}
.card-default {
position: relative;
display: flex;
flex-direction: column;
min-width: 0;
word-wrap: break-word;
background-color: #bb2d3b;
background-clip: border-box;
border: 1px solid rgba(0, 0, 0, 0.125);
border-radius: 0.25rem;
}
.card > hr {
margin-right: 0;
margin-left: 0;

View File

@ -0,0 +1,6 @@
function fn_link_page(pageNo) {
document.searchForm.pageIndex.value = pageNo;
document.searchForm.action = "<c:url value='/admin/fieldData' />";
document.searchForm.submit();
}

View File

@ -0,0 +1,202 @@
function fieldVerify(){
alert('준비중');
}
function fieldReflect(){
alert('준비중');
}
$(function() {
drawingObj();
makePropPaging();
makePropTable();
});
var field_data = JSON.parse('${fieldDataVO.field_data}');
var wkt = null;
proj4.defs('EPSG:5186', '+proj=tmerc +lat_0=38 +lon_0=127 +k=1 +x_0=200000 +y_0=600000 +ellps=GRS80 +units=m +no_defs');
var baseMap = new ol.layer.Tile({
title : 'vworldMap',
visible : true,
type : 'base',
source : new ol.source.XYZ({
url : 'http://api.vworld.kr/req/wmts/1.0.0/5616CAD1-5D79-3EE3-87D5-878A4AD0F91F/Base/{z}/{y}/{x}.png'
})
});
var view = new ol.View({
center : ol.proj.transform([ 203766.984, 541132.2 ], 'EPSG:5186', 'EPSG:3857'),
zoom : 18, // 초기화면 zoom level
minZoom : 1, // 최소 zoom level
maxZoom : 19, // 최대 zoom level
});
var map = new ol.Map({
layers : [ baseMap ],
logo : false, //우측하단 로고 제거
target : 'map',
loadTilesWhileAnimating : true,
view : view
});
var format = new ol.format.WKT();
var objVectorSource = new ol.source.Vector({});
var objVectorLayer = new ol.layer.Vector({
source : objVectorSource,
style : objStyle
});
var cursorStyle = "";
var selected = null;
map.on("pointermove", function(e) {
if (selected !== null) {
selected.setStyle(undefined);
selected = null;
}
var newStyle = this.hasFeatureAtPixel(e.pixel) ? "pointer" : "";
newStyle !== cursorStyle && $(this.getTargetElement()).css("cursor", cursorStyle = newStyle);
map.forEachFeatureAtPixel(e.pixel, function(f) {
selected = f;
f.setStyle(highlightStyle);
return true;
});
});
var highlightStyle = new ol.style.Style({
stroke : new ol.style.Stroke({
color : '#3399CC',
width : 8,
}),
});
// feature click evt
map.on('click', function(event) {
map.forEachFeatureAtPixel(event.pixel, function(feature, layer) {
var idx = feature.get("idx");
makePropTable(idx);
})
});
function objStyle(feature, resolution) {
var selected = feature.get('selected');
var style = null;
if (selected) {
style = new ol.style.Style({
stroke : new ol.style.Stroke({
color : '#f00',
width : 5
})
});
} else {
style = new ol.style.Style({
stroke : new ol.style.Stroke({
color : '#52b4e7',
width : 5
})
});
}
return style;
}
function resetObjStyle() {
var feature = getObjFeatureBySelected();
if (feature) {
feature.set("selected", false);
}
}
function makePropTable(idx) {
if (idx == null)
idx = 0;
$("#fieldDataBody > tr").remove();
var num = 0;
var tags = "";
for(var i in field_data[idx].prop) {
num++;
if(num % 2 == 0){
tags += "<th>" + i + "</th><td>" + field_data[idx].prop[i] + "</td></tr>";
}else{
tags += "<tr><th>" + i + "</th><td>" + field_data[idx].prop[i] + "</td>";
}
}
$("#fieldDataBody").append(tags);
nowPagingOn(idx);
resetObjStyle();
//중심좌표 구하기?
//var aa = feature.getGeometry().v;
//var oo = ol.extent.getCenter(aa);
var center = field_data[idx].center;
var feature = getObjFeatureByIdx(idx);
moveCenter(center);
if (feature) {
feature.set("selected", true);
}
}
function nowPagingOn(idx){
$(".paging_li").removeClass("fieldPagingOn")
$("#paging_li"+idx).attr("class", "fieldPagingOn paging_li");
}
function makePropPaging() {
var pagingNumber = 0;
for (var idx in field_data) {
pagingNumber++;
$("#fieldDataPaging").append('<li class="paging_li" id="paging_li'+idx+'" onclick="makePropTable(' + idx + ')">' + pagingNumber+ '</li>');
}
}
function drawingObj() {
objVectorSource.clear();
var objFeatures = [];
for (var idx in field_data) {
var objFeature = format.readFeature(field_data[idx].WKT, {
dataProjection : 'EPSG:5186',
featureProjection : 'EPSG:3857'
});
objFeature.setProperties({
"idx" : idx,
"selected" : false
});
objFeatures.push(objFeature);
}
objVectorSource.addFeatures(objFeatures);
map.addLayer(objVectorLayer);
}
function moveCenter(center) {
var coordinates = ol.proj.transform(center, 'EPSG:5186', 'EPSG:3857');
map.getView().setCenter(coordinates);
}
function getObjFeatureBySelected() {
var features = objVectorSource.getFeatures();
var feature = null;
for (var i = 0, size = features.length; i < size; i++) {
if (features[i].get('selected') == true) {
feature = features[i];
break;
}
}
return feature;
}
function getObjFeatureByIdx(idx) {
var features = objVectorSource.getFeatures();
var feature = null;
for (var i = 0, size = features.length; i < size; i++) {
if (features[i].get('idx') == idx) {
feature = features[i];
break;
}
}
return feature;
}

View File

@ -0,0 +1,6 @@
function fn_link_page(pageNo) {
document.searchForm.pageIndex.value = pageNo;
document.searchForm.action = '/admin/history';
document.searchForm.submit();
}

View File

@ -0,0 +1,6 @@
function fn_link_page(pageNo) {
document.searchForm.pageIndex.value = pageNo;
document.searchForm.action = '/admin/request';
document.searchForm.submit();
}

View File

@ -0,0 +1,17 @@
function confirmReqBtn(val){
$("#status").val(val);
var msg;
if(val == 0){
msg = "승인";
}else{
msg = "거절";
}
if(confirm("지도사용요청을 "+msg+" 하시겠습니까?")){
$("#updateFrm").submit();
}else{
return false;
}
}

View File

@ -0,0 +1,26 @@
function fn_link_page(pageNo) {
document.searchForm.pageIndex.value = pageNo;
document.searchForm.action = "<c:url value='/admin/userInfo' />";
document.searchForm.submit();
}
function confirmBtn(userid, auth){
$("#userid").val(userid);
$("#auth").val(auth);
var msg;
if(auth == 2){
msg = "승인";
}else{
msg = "삭제";
}
if(confirm(msg+" 처리 하시겠습니까?")){
$("#updateFrm").submit();
}else{
return false;
}
}

View File

@ -0,0 +1,54 @@
$(function(){
$("#changePw").click(function(){
if($(this).is(":checked")){
$("#password").attr("disabled", false);
$("#passwordCheck").attr("disabled", false);
}else{
$("#password").attr("disabled", true);
$("#passwordCheck").attr("disabled", true);
}
});
});
function update() {
var changePw = $("#changePw").is(":checked");
var pw1 = $('#password').val();
var pw2 = $('#passwordCheck').val();
var name = $('#name').val();
var company = $('#company').val();
var tell = $('#phonenum').val();
var email_1 = $('#email').val();
if (changePw && pw1 == "") {
alert('비밀번호를 입력해주세요');
$('#password').focus();
return;
} else if (changePw && pw2 == "") {
alert('비밀번호를 입력해주세요');
$('#passwordCheck').focus();
return;
} else if (changePw && (pw1 != pw2)) {
alert('비밀번호가 일치하지 않습니다.');
$('#pass').focus();
return;
} else if (name == "") {
alert('이름을 입력해주세요');
$('#name').focus();
return;
} else if (company == "") {
alert('소속기관을 입력해주세요');
$('#company').focus();
return;
} else if (tell == "") {
alert('연락처를 입력해주세요');
$('#phone_num').focus();
return;
} else if (email_1 == "") {
alert('이메일을 입력해주세요');
$('#email').focus();
return;
} else {
$("#updateForm").submit();
}
}