From fd1f11f6d7a75c52a7c2db5fe9a39e129216b96a Mon Sep 17 00:00:00 2001
From: 星伟 <星伟@192.168.10.27>
Date: 星期日, 30 九月 2018 11:20:38 +0800
Subject: [PATCH] 电池组配租加容量百分比

---
 gx_tieta/WebRoot/index.jsp |  172 ++++++++++++++++++++++++++++++++++++++++++++++++---------
 1 files changed, 144 insertions(+), 28 deletions(-)

diff --git a/gx_tieta/WebRoot/index.jsp b/gx_tieta/WebRoot/index.jsp
index 99c41b4..1adb3bf 100644
--- a/gx_tieta/WebRoot/index.jsp
+++ b/gx_tieta/WebRoot/index.jsp
@@ -75,6 +75,12 @@
 		.ui-resizable-s, .ui-resizable-se {
 			display: none !important;
 		}
+		
+		.ui-autocomplete {
+			height: 200px;
+			overflow-y: auto; 
+			overflow-x: hidden;
+    	}
 	</style>
 	<script type="text/javascript" src="js/jquery-1.8.3.js"></script>
 	
@@ -597,7 +603,6 @@
 					
 					flushFourPie();		//鏇存柊鍥涚楗肩姸鍥�
 				});
-	
 				// 璁剧疆鍙抽敭鑿滃崟
 				var menu = new BMap.ContextMenu();
 				var txtMenuItem = [
@@ -632,17 +637,7 @@
 								enparams:[e]
 							});
 						}
-					},
-					/* {
-						text: '鏈烘埧瀹氫綅',
-						callback: function(e) {
-							panel.setPanelLayout();
-							panel.showPanel();
-							$('#map .panel-mask').bind('click', function() {
-								panel.hidePanel();
-							});
-						}
-					} */
+					}
 				];
 				//console.info(getPermit('taskchange_edit_permit', permits)+"*******");
 				if(getPermit('batt_map_edit_permit', permits)) {
@@ -1344,15 +1339,6 @@
 		});
 	});
 	
-	//  鐐瑰嚮鍦板浘鐨勬悳绱㈡寜閽畾浣嶅湴鍧�
-	$(function() {
-		$('#map').on('click', '.search .search-btn', function() {
-			var posTxt = $('#map .search .pos-txt').val();
-			addrAnalyze(posTxt);
-		});
-	});
-	
-	
 	$(window).resize(function() {
 		getMapHt();
 	});
@@ -1594,6 +1580,7 @@
 	function createMapDot(map, dotList) {
 		// 娓呯┖瑕嗙洊鐗╁拰瀵瑰簲鐨刴k鐐�
 		mkList = [];
+		
 		// 閬嶅巻鏌ヨ鍐呭鐢熸垚瀵瑰簲鐨勫浘鏍�
 		for(var i = 0; i < dotList.length; i++) {
 			var dotIcon = new BMap.Icon(getMapStateImg(mapImages, dotList[0].msg), new BMap.Size(36, 30));	// 璁剧疆鍥剧墖
@@ -1624,6 +1611,9 @@
 			map.addOverlay(mk);
 		}
 	}
+	
+	
+	
 	
 	// 
 	
@@ -1966,12 +1956,123 @@
 		}
 	}
 	
-	searchStation();
+	// 璁剧疆椤甸潰涓殑鍙鍖哄煙鍥炬爣
+	;(function($, window, document, gl, undefined) {
+		// 璁剧疆鍛藉悕绌洪棿
+		gl.namespace('BMap');
+		// 鏍规嵁鍙鑼冨洿鏄剧ず鍧愭爣鐐�
+		var dots = [];
+		var currMarkers = {};
+		// 鏌ヨ褰撳墠鑼冨洿鍐呭鐨勫浘鏍�
+		function queryInRect(map, callback) {
+			var cp = map.getBounds(); // 杩斿洖map鍙鍖哄煙锛屼互鍦扮悊鍧愭爣琛ㄧず  
+	        var sw = cp.getSouthWest(); // 杩斿洖鐭╁舰鍖哄煙鐨勮タ鍗楄  
+	        var ne = cp.getNorthEast(); // 杩斿洖鐭╁舰鍖哄煙鐨勪笢鍖楄  
+	        //var zoom = map.getZoom(); //褰撳墠缂╂斁绾у埆 
+	        //console.log(dots);
+	        var mapDots = getDotsList(sw, ne);
+	        callback(map, mapDots);
+		}
+		
+		// 鑾峰彇dots鐨勯泦鍚�
+		function getDotsList(sw, ne) {
+			var rs = [];
+				swlng=sw.lng,  
+	            swlat=sw.lat,  
+	            nelng=ne.lng,  
+	            nelat=ne.lat;
+	            
+	            var maxLng = sw.lng>ne.lng?sw.lng:ne.lng;
+	            var minLng = sw.lng<ne.lng?sw.lng:ne.lng;
+	            
+	            var maxLat = sw.lat>ne.lat?sw.lat:ne.lat;
+	            var minLat = sw.lat<ne.lat?sw.lat:ne.lat;
+	            
+	            for(var i=0; i<dots.length; i++) {
+	            	var dot = dots[i];
+	            	var lat = dot.lat;
+	            	var lng = dot.lng;
+	            	var sId = dot.binformation.StationId;
+	            	var isExist = checkMarker(sId);
+	            	
+	            	// 鏈娣诲姞杩�
+	            	if(!isExist) {
+	            		// 鍒ゆ柇缁忕含搴︽槸鍚﹀瓨鍦ㄨ鍖哄煙
+	            		if(lng<maxLng && lng>minLng && lat<maxLat && lat>minLat) {
+	            			currMarkers['markers'+sId] = sId;
+	            			rs.push(dot);
+	            		}
+	            	}
+	            }
+	            return rs;
+		}
+		
+		
+		// 妫�娴嬪綋鍓嶇偣鏄惁宸茬粡琚坊鍔犺繃
+		function checkMarker(id) {
+			var flag = false;
+			// 閬嶅巻宸茬粡娣诲姞鐨勭偣杩斿洖鏄惁宸茬粡琚坊鍔犺繃
+			Object.keys(currMarkers).forEach(function(key) {
+				if(currMarkers[key] == id) {
+					flag = true;
+				}
+			});
+			
+			return flag;
+		}
+		
+		// 璁剧疆dots闆嗗悎鐨勫��
+		function setDots(data) {
+			dots = data;
+		}
+		// 灏嗗彉閲忕粦瀹氬埌鍛藉悕绌洪棿涓�
+		gl.BMap.setDots = setDots;
+		
+		// 灏嗗嚱鏁扮粦瀹氬埌鍛藉悕绌洪棿涓�
+		gl.BMap.queryInRect = queryInRect;
+	})(jQuery, window, document, GLOBAL);
+	
+	
+	// 鍦板浘鏈烘埧鎼滅储妯″潡
+	;(function($, window, document, gl, undefined) {
+		// 璁剧疆鍛藉悕绌洪棿BMap.Search妯″潡
+		gl.namespace('BMap.Search');
+		
+		var homeInfor = [];
+		
+		// 璁剧疆homeInfor鐨勫��
+		function setHomeInfor(data) {
+			homeInfor = data;
+		}
+		// 灏嗗嚱鏁扮粦瀹氬埌鍛藉悕绌洪棿涓�
+		gl.BMap.Search.setHomeInfor = setHomeInfor;
+		
+		// 鏍规嵁homeInfor鐨勫�艰繑鍥瀐ome鍒楄〃
+		function getHomeList() {
+			var rs = [];
+			// 閬嶅巻homeInfor鐨勫��
+			for(var i=0; i<homeInfor.length; i++) {
+				rs.push(homeInfor[i].title);
+			}
+			return rs;
+		}
+		// 灏嗗嚱鏁扮粦瀹氬埌鍛藉悕绌洪棿涓�
+		gl.BMap.Search.getHomeList = getHomeList;
+	})(jQuery, window, document, GLOBAL);
+	
+	// 鏌ヨ骞惰缃満鎴跨殑鍥炬爣
+	$(function () {
+		searchStation(true);
+	});
+	
+	
 	var allStation;
 	//鏌ヨ鏈烘埧
-	function searchStation(){
+	function searchStation(setRect){
 		var temp = createSearchParam();
 		var json = JSON.stringify(temp);
+		var bmap = GLOBAL.BMap;		// BMap鐨勫懡鍚嶇┖闂�
+		var bmap_s = bmap.Search;	// Search鐨勫懡鍚嶇┖闂�
 		commonDot = new Array();
 		warnDotList = new Array();
 		dischargeDotList = [];
@@ -1980,7 +2081,7 @@
 	        type: "post", 				
 	        //url: "BattMap_informationAction!searchAll",				
 	        url: "BattMap_informationAction!searchUserManageStation",				
-	        async:true,				
+	        async: true,				
 	        dataType:'text',
 	        data:"json="+json,		
 	        success: function(data){ 
@@ -1989,7 +2090,7 @@
 				console.log(list.length);
 				allStation = new Array();
 				if(list!=undefined && list.length>0){
-					for(var i=0;i<10;i++){
+					for(var i=0;i<list.length;i++){
 						var tmp = {
 							binformation:list[i].data,
 							alarm_num:list[i].code,		//鍛婅鏁扮洰
@@ -1999,10 +2100,17 @@
 						};
 						allStation.push(analyzeData(tmp));
 					}
-					//console.info(allStation);
-					createMapDot(map, allStation);
+					// 鏄剧ず鍖哄煙鐨勫浘鏍�
+					bmap.setDots(allStation);
+					bmap.queryInRect(map,createMapDot);
+					// 鏄惁璁剧疆鎷栧埌鍜岀缉鏀�
+					if(setRect) {
+						map.addEventListener("moveend", bmap.queryInRect.bind({},map, createMapDot));  // 鎷栧姩
+						map.addEventListener("zoomend", bmap.queryInRect.bind({},map, createMapDot)); // 缂╂斁
+					}
 					
-					//setTimeout(searchStation, 4000);	
+					//createMapDot(map, allStation);
+					
 				}
         	} 				
 		});
@@ -3039,5 +3147,13 @@
     		img.attr('src', navImg);
     	}
     }
+    
+    //  鐐瑰嚮鍦板浘鐨勬悳绱㈡寜閽畾浣嶅湴鍧�
+	$(function() {
+		$('#map').on('click', '.search .search-btn', function() {
+			var posTxt = $('#map .search .pos-txt').val();
+			addrAnalyze(posTxt);
+		});
+	});
 	</script> 
 </html>

--
Gitblit v1.9.1