Forráskód Böngészése

2024-09-09 update treeList Info

junggilpark 11 hónapja
szülő
commit
a2f4f3c377

+ 0 - 4
src/main/webapp/WEB-INF/views/bottomListFrame.jsp

@@ -15,10 +15,6 @@
 </head>
 <body class="sang">
 	<div class="bottomMenu" id="bottomMenu">
-		<div class="networkType">
-			<a href="javascript:showOnlineList()" title="유선"><img src="/images/online_on.png" id="onlineToggle" alt="" /></a>
-			<%-- <a href="javascript:showOfflineList()" title="무선"><img src="/images/offline_off.png" id="offlineToggle" alt="" /></a>--%>
-		</div>
 		<div class="bottomHead" id="bottomHead">
 			<table id="bottomHeadTable">
 				<thead>

+ 1 - 1
src/main/webapp/WEB-INF/views/common.jsp

@@ -1 +1 @@
-<%@ page language="java" contentType="text/html; charset=utf-8" pageEncoding="utf-8"%>
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
<%@ page session="false" %>
	
	<%
		//Context Root
		String contextRoot 	= request.getContextPath().equals("/") ? "" : request.getContextPath();
	%>
	
	<!-- 기본변수 -->
	<c:set var="contextRoot" value="<%=contextRoot%>"/>
	
<script type="text/javascript">
	var CONTEXTROOT = '${contextRoot }';
	var _CONTEXTROOT = '${contextRoot }'.replace('/','');
	var BTN_IMAGE_PATH 	= CONTEXTROOT + "/images/";
	var MAP_IMAGE_PATH 	= CONTEXTROOT + "/images/map/";
	var IMS_VIEW_LEVEL  = 8;	//돌발 7
</script>
<script type="text/javascript" src="//dapi.kakao.com/v2/maps/sdk.js?appkey=00c3f7d32c1f1822dc98ad72e35e0223&libraries=services,clusterer,drawing"></script>

<!-- 기존 아래꺼
<script type="text/javascript" src="//dapi.kakao.com/v2/maps/sdk.js?appkey=18c209280e22f68bce0b0fb6cabe3825&libraries=services,clusterer,drawing"></script>
<script type="text/javascript" src="//dapi.kakao.com/v2/maps/sdk.js?appkey=53732a353d63b8b8e105a5c9484c7eec&libraries=services,clusterer,drawing"></script> -->


+<%@ page language="java" contentType="text/html; charset=utf-8" pageEncoding="utf-8"%>
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
<%@ page session="false" %>
	
	<%
		//Context Root
		String contextRoot 	= request.getContextPath().equals("/") ? "" : request.getContextPath();
	%>
	
	<!-- 기본변수 -->
	<c:set var="contextRoot" value="<%=contextRoot%>"/>
	
<script type="text/javascript">
	var CONTEXTROOT = '${contextRoot }';
	var _CONTEXTROOT = '${contextRoot }'.replace('/','');
	var BTN_IMAGE_PATH 	= CONTEXTROOT + "/images/";
	var MAP_IMAGE_PATH 	= CONTEXTROOT + "/images/map/";
	var IMS_VIEW_LEVEL  = 8;	//돌발 7
</script>


<script type="text/javascript" src="//dapi.kakao.com/v2/maps/sdk.js?appkey=00c3f7d32c1f1822dc98ad72e35e0223&libraries=services,clusterer,drawing"></script>
<!-- 기존 아래꺼
<script type="text/javascript" src="//dapi.kakao.com/v2/maps/sdk.js?appkey=18c209280e22f68bce0b0fb6cabe3825&libraries=services,clusterer,drawing"></script>
<script type="text/javascript" src="//dapi.kakao.com/v2/maps/sdk.js?appkey=53732a353d63b8b8e105a5c9484c7eec&libraries=services,clusterer,drawing"></script>
 -->

+ 2 - 2
src/main/webapp/WEB-INF/views/main.jsp

@@ -12,8 +12,8 @@
 	<meta name="Description" content="신호관제" />
 	<meta name="Keywords" content="신호관제" />
 	
-	<link rel="stylesheet" type="text/css" href="${contextRoot }/css/common.css" />
-	<link rel="stylesheet" type="text/css" href="${contextRoot }/css/main.css" />
+	<link rel="stylesheet" type="text/css" href="${contextRoot }/css/common.css?v=1" />
+	<link rel="stylesheet" type="text/css" href="${contextRoot }/css/main.css?v=1" />
 	<link rel="stylesheet" type=iframe"text/css" href="${contextRoot }/css/themes/default/style.css" />
 	<link rel="icon"       type="text/css" href="data:;base64,iVBORw0KGgo=" />
 	

+ 42 - 79
src/main/webapp/WEB-INF/views/treeListFrame.jsp

@@ -114,8 +114,7 @@ var _Tab = "int";
 		 */
 		
 		treeCtrl = treeCtrl || (function(){
-		 
-		    var Node = function( nodeName, data, id, icon ){
+		 	var Node = function( nodeName, data, id, icon ){
 		        return {
 		        	id : id,
 		        	icon : icon,
@@ -234,7 +233,7 @@ var _Tab = "int";
 		
 		treeCtrl.clear();
 		
-		var topTitle = ['유선','무선'];
+		//var topTitle = ['유선','무선'];
 		var nameCntOn  = '';
 		var guTitleOn  = '';
 		var nameCntOff = '';
@@ -256,7 +255,6 @@ var _Tab = "int";
 			networkType    = data[ii].NETWORK_TYPE.split('|');
 			nodeIdArr      = data[ii].NODE_ID.split('|');
 			
-			//console.log('regionNm : ' + regionNm + ' , sigunguNm : ' + sigunguNm + ' , intNoArr : ' + intNoArr + ' , intNmArr : ' + intNmArr);
 			
 			if(data[ii].INT_X_COORD != null || data[ii].INT_X_COORD != null)
 			{
@@ -306,7 +304,7 @@ var _Tab = "int";
 					}
 				}
 				
-				if(isDraw && networkType[jj] == 0 || networkType[jj] == 2)
+				if(isDraw)
 				//if(networkType[jj] == 0 || networkType[jj] == 2)
 				{
 					networkId = 0;
@@ -318,11 +316,11 @@ var _Tab = "int";
 			
 					if(regionNm == sigunguNm)
 					{
-						guTitleOn = topTitle[networkId] + '-' + nameCntOn;
+						guTitleOn = nameCntOn;
 					}
 					else
 					{
-						guTitleOn = topTitle[networkId] + '-' + nameCntOn + '-' + sigunguNm +
+						guTitleOn = nameCntOn + '-' + sigunguNm +
 								'&nbsp;( 전체 : <span class="guIntTotal_'+networkId+'_'+regionCd+'_'+sigunguCd+'" name="'+networkId+'_int" style="color:#0000FF"></span> / 이상 : '+
 								'<span class="guIntErrCnt_'+networkId+'_'+regionCd+'_'+sigunguCd+'" style="color:#FF0000"></span> )';
 					}
@@ -349,45 +347,6 @@ var _Tab = "int";
 						}
 					});
 				}
-				//if(networkType[jj] == 1 || networkType[jj] == 2)
-				if(isDraw && networkType[jj] == 1 || networkType[jj] == 2)
-				{
-					networkId = 1;
-					nameCntOff = '&nbsp;<strong class="centerNm_'+regionCd+'">' + regionNm +
-					  '</strong>&nbsp;( 전체 : <span class="intTotal_'+networkId+'_'+regionCd+'" name="'+networkId+'_int" style="color:#0000FF"></span> / 이상 : '+
-					  '<span class="intErrCnt_'+networkId+'_'+regionCd+'" style="color:#FF0000"></span> )';
-			
-					if(regionNm == sigunguNm)
-					{
-						guTitleOff = topTitle[networkId] + '-' + nameCntOff;
-					}
-					else
-					{
-						guTitleOff = topTitle[networkId] + '-' + nameCntOff + '-' + sigunguNm +
-								'&nbsp;( 전체 : <span class="guIntTotal_'+networkId+'_'+regionCd+'_'+sigunguCd+'" name="'+networkId+'_int" style="color:#0000FF"></span> / 이상 : '+
-								'<span class="guIntErrCnt_'+networkId+'_'+sigunguCd+'" style="color:#FF0000"></span> )';
-					}
-					
-					if(intNmArr[jj] == 'undefined_undefined') intNmArr[jj] = '';
-					var intNm = intNoArr[jj]+'_'+intNmArr[jj];
-					treeCtrl.set([guTitleOff],{
-						name : intNm,
-						id   : regionCd+'_'+networkId+'_'+intNoArr[jj],
-						data : {
-							'line' : 'offline',
-							'regionCd' : regionCd ,
-							'intNo' : intNoArr[jj] , 
-							'intNm' : intNmArr[jj],
-							'xCoord' : xCoord , 
-							'yCoord' : yCoord , 
-							'intXCoord' : intXCoordArr[jj] , 
-							'intYCoord' : intYCoordArr[jj],
-							'sigunguX' : sigunguX, 
-							'sigunguY' : sigunguY , 
-							'networkType' : networkType[jj]
-						}
-					});
-				}
 			}
 		}
 		
@@ -401,33 +360,39 @@ var _Tab = "int";
 		    },
 		    "plugins" : [ "wholerow"],
 		}).on('loaded.jstree', function(e, data) {
-			if (_searchText) {
-				data.instance.open_node('.jstree-last');
-			}
+			onlineCenterStatusCheck();
+			onlineIntStatusCheck();
+			parent.document.getElementById('iframeBottomList').contentWindow.showOnlineList();
+			//if (_searchText) {
+			//	data.instance.open_node('.jstree-last');
+			//}
 	  	});
 		
 		
 		
 		$('#intTree').bind('open_node.jstree', function(event, data) {
-			if(data.node.text == '유선')
-			{
-				onlineCenterStatusCheck();
-				onlineIntStatusCheck();
-				parent.document.getElementById('iframeBottomList').contentWindow.showOnlineList();
-			}
+			//if(data.node.text == '유선')
+			//{
+				
+			//}
 			//else if(data.node.text == '무선')
 			//{
 			//	offlineCenterStatusCheck();
 			//	offlineIntStatusCheck();
 			//	parent.document.getElementById('iframeBottomList').contentWindow.showOfflineList();
 			//}
-			else if(data.node.text.indexOf('name="0_int"') != -1)
+			if(data.node.text.indexOf('name="0_int"') != -1)
 			{	if (data.node.text.indexOf('class="regionComm') != -1) {
 					_RegionCdArr.push(data.node.data.regionCd);
 				}
 				drawCenterStatus(0,onlineCenterStatusData);
 				onlineIntStatusCheck();
 			}
+			//else {
+			//	onlineCenterStatusCheck();
+			//	onlineIntStatusCheck();
+			//	parent.document.getElementById('iframeBottomList').contentWindow.showOnlineList();
+		    //	}
 			//else if(data.node.text.indexOf('name="0_int"') != -1)
 			//{
 			//	_RegionCdArr.push(data.node.data.regionCd);
@@ -563,7 +528,7 @@ var _Tab = "int";
 		var sigunguX;
 		var sigunguY;
 		var networkId = 0;
-		var topTitle = ['유선','무선'];
+		//var topTitle = ['유선','무선'];
 		
 		if(typeof data == 'undefined')
 		{
@@ -614,8 +579,10 @@ var _Tab = "int";
 					                	   '이상 : <span class="intErrCnt_' + networkId + '_' + regionCd + '" style="color:#FF0000"></span> )';
 						var groupTitle;
 						
-						if(regionNm == sigunguNm) groupTitle = topTitle[0] + '-' + groupStateNm + '-' + groupNmArr[1];
-						else groupTitle = topTitle[0] + '-' + groupStateNm + '-' + 
+//						if(regionNm == sigunguNm) groupTitle = topTitle[0] + '-' + groupStateNm + '-' + groupNmArr[1];
+						if(regionNm == sigunguNm) groupTitle = groupStateNm + '-' + groupNmArr[1];
+//						else groupTitle = topTitle[0] + '-' + groupStateNm + '-' + 
+						else groupTitle = groupStateNm + '-' + 
 						                  sigunguNm + '&nbsp;( 전체 : <span class="guIntTotal_' + networkId +'_'+regionCd+'_'+ sigunguCd + '" style="color:#0000FF"></span> / ' + 
 						                                          '이상 : <span class="guIntErrCnt_' + networkId +'_'+regionCd+'_'+ sigunguCd + '" name="' + networkId + '_int" style="color:#FF0000"></span> )' + '-' + 
 						                  groupNmArr[1];
@@ -653,20 +620,20 @@ var _Tab = "int";
 		    	"themes" : { "stripes" : true },
 		    },
 		    "plugins" : [ "wholerow", "changed", "types", "themes", "ui" ]
-		});
+		})
+		.on('loaded.jstree', function(e, data) {
+			onlineCenterStatusCheck();
+	  	});
+		
 		
 		$('#groupTree').bind('open_node.jstree', function(event, data) {
 			_RegionCdArr = [];
 			_GroupNoArr  = [];
-			if(data.node.text == '유선')
-			{
-				onlineCenterStatusCheck();
-			}
 			//else if(data.node.text == '무선')
 			//{
 			//	offlineCenterStatusCheck();
 			//}
-			else if(data.node.text.indexOf('name="0_int"') != -1)
+			if(data.node.text.indexOf('name="0_int"') != -1)
 			{
 				_RegionCdArr.push(data.node.data.regionCd);
 				drawCenterStatus(0,onlineCenterStatusData);
@@ -678,25 +645,23 @@ var _Tab = "int";
 				drawCenterStatus(0,onlineCenterStatusData);
 				onlineIntStatusCheck();
 			}
+			//else {
+			//	onlineCenterStatusCheck();
+			//}
 		});
 		
 		$('#groupTree').bind('close_node.jstree', function(event, data){
-			if(data.node.text == '유선')
-			{
-				if(onlineCenterStatusCheckId != null) clearTimeout(onlineCenterStatusCheckId);
-				if(onlineIntStatusCheckId != null) clearTimeout(onlineIntStatusCheckId);
-			}
-			//else if(data.node.text == '무선')
-			//{
-			//	if(offlineCenterStatusCheckId != null) clearTimeout(offlineCenterStatusCheckId);
-			//}
-			else if(data.node.text.indexOf('name="0_int"') != -1)
+			if(data.node.text.indexOf('name="0_int"') != -1)
 			{
 				if(onlineIntStatusCheckId != null) clearTimeout(onlineIntStatusCheckId);
 			}
 			else if(data.node.text.indexOf('그룹번호') != -1)
 			{
 				
+			}
+			else {
+				if(onlineCenterStatusCheckId != null) clearTimeout(onlineCenterStatusCheckId);
+				if(onlineIntStatusCheckId != null) clearTimeout(onlineIntStatusCheckId);
 			}
 			_RegionCdArr = [];
 		});
@@ -704,7 +669,6 @@ var _Tab = "int";
 		// jsTree 클릭 이벤트 : 레이어 setVisible
 		$('#groupTree').bind('select_node.jstree', function(event, data){
 			parent._RegionCd = data.node.data.regionCd;
-			
 			var parentNd = data.node.parent;
 			var childrenId = data.node.id;
 			var nodeNm  = data.node.text;
@@ -716,7 +680,6 @@ var _Tab = "int";
 			{
 				var xCoord = data.node.data.xCoord;
 				var yCoord = data.node.data.yCoord;
-				
 				parent.$('#XCoord').val(xCoord);
 				parent.$('#YCoord').val(yCoord);
 				
@@ -727,7 +690,7 @@ var _Tab = "int";
 				emptyintGroupCircleArr();
 				_Flag = '';
 			}
-			else if(parentNd == 'j2_2')
+			else if(parentNd != '#' && data.node.children.length > 0 && nodeNm.substr(0,1) !== '그') //구 선택
 			{
 				var guX = data.node.data.sigunguX;
 				var guY = data.node.data.sigunguY;
@@ -735,7 +698,7 @@ var _Tab = "int";
 				if(guX != null && guY != null)
 				{
 					parent.map.panTo(new parent.kakao.maps.LatLng(guY, guX));
-					setTimeout(function() {parent.mapZoomBound()}, 100 * 3);
+					setTimeout(function() {parent.mapZoomBound()},100*3);
 				}
 			}
 			else if(nodeNm.substr(0,1) == '그') //그룹 선택

+ 6 - 3
src/main/webapp/css/main.css

@@ -798,7 +798,7 @@ div.popState dl.jaywork dd strong.rblue {color:#607cd4; text-align:right;}
 .iframeTreeList{float:left;width:325px;height:100%;margin-left:5px;overflow:hidden;border:0;z-index:50}
 .iframeBottomList{margin-left:2px;width:calc(100% - 337px);height:25%;overflow:hidden;border:0;border-bottom:1px solid #bbb;border-left:1px solid #bbb;z-index:50}
 
-.leftMenu{height:calc(100% - 10px);background-color:#fff;border:1px solid #bbb}
+.leftMenu{height:calc(100% - 9px);background-color:#fff;border:1px solid #bbb}
 .leftMenu h1{padding:10px;border-bottom:1px solid #d8d8d8}
 .leftMenu .tabs{height:30px;border-bottom: 2px solid #1e65c5;}
 .leftMenu .tabs li{float:left;}
@@ -858,14 +858,17 @@ div.popState dl.jaywork dd strong.rblue {color:#607cd4; text-align:right;}
 .wideMap{position:absolute;top:40%;cursor:pointer;z-index:10}
 .upDownMap{position:absolute;left:45%;bottom:0px;cursor:pointer;z-index:10}
 
-.bottomMenu{height:100%;overflow:hidden;margin:0}
+.bottomMenu{height:100%;overflow:auto;margin:0}
 .bottomMenu .networkType a:nth-child(2) {position:relative;left:-4px}
+/*
 .bottomMenu .bottomHead{overflow-y:scroll;scrollbar-arrow-color:#f0f0f0;scrollbar-track-color:#f0f0f0;scrollbar-face-color:#f0f0f0;scrollbar-shadow-color:#f0f0f0}
+*/
+.bottomMenu .bottomHead{position:sticky; top:0;}
 .bottomMenu .bottomHead::-webkit-scrollbar{background-color: #f0f0f0}
 .bottomMenu .bottomHead table{width:100%;}
 .bottomMenu .bottomHead table thead{background-color:#dfe8ef}
 .bottomMenu .bottomHead table th{height:20px;padding:5px;text-align:center;font-weight: bold;color: #2d2d2d; background: url(/images/table_bg.png) repeat-x;line-height:20px;border-top:1px solid #bababa;border-bottom:1px solid #bababa;border-right:1px solid #bababa}
-.bottomMenu .bottomBody{max-height:calc(100% - 62px);overflow-y:scroll}
+.bottomMenu .bottomBody{max-height:calc(100% - 32px);}
 .bottomMenu .bottomBody table{width:100%;}
 .bottomMenu .bottomBody table tbody{background-color:#fff}
 .bottomMenu .bottomBody table td{padding:5px;text-align:center;color:#515151;border-bottom:1px solid #bababa;border-right:1px solid #bababa;}