From d599390fba9dbf6283a566227c3b12b8f549411e Mon Sep 17 00:00:00 2001 From: hdw <496960745@qq.com> Date: 星期一, 22 十月 2018 11:29:36 +0800 Subject: [PATCH] 更新地图的图标 --- gx_tieta/WebRoot/index.jsp | 121 ++++++++++++++++++++++++++++++++-------- 1 files changed, 97 insertions(+), 24 deletions(-) diff --git a/gx_tieta/WebRoot/index.jsp b/gx_tieta/WebRoot/index.jsp index 479baa5..2ed62dc 100644 --- a/gx_tieta/WebRoot/index.jsp +++ b/gx_tieta/WebRoot/index.jsp @@ -1587,7 +1587,7 @@ var pt = new BMap.Point(dotList[i].lng, dotList[i].lat); var mk = new BMap.Marker(pt, {icon: dotIcon}); // 瀹氫箟marker鐐� - addMenu(mk, mapDel); + // addMenu(mk, mapDel); deletePoint(map, dotList[i].title); // 鍚憁k鐐规坊鍔爈abel var home_name = new BMap.Label(dotList[i].title, {offset:new BMap.Size(20,-10)}); @@ -1602,20 +1602,15 @@ this.getLabel().setStyle({display: 'none'}); }); - mk.addEventListener('click', function(e) { + /* mk.addEventListener('click', function(e) { var target = e.target; showMapPanel(target, dotList); - }); + }); */ mkList.push(mk); // 鍚戝湴鍥炬坊鍔犺鐩栫墿 map.addOverlay(mk); } } - - - - - // // 鍒犻櫎鍦板浘涓婄殑鎸囧畾鐐� function deletePoint(map, msg){ @@ -1737,6 +1732,7 @@ function showMapPanel(target, warnList) { var point = target.point; + console.log(target.getLabel()); var searchInforWin = null; for(var i = 0; i < warnList.length; i++) { if(warnList[i].lng == point.lng && warnList[i].lat == point.lat) { @@ -1992,7 +1988,7 @@ var dot = dots[i]; var lat = dot.lat; var lng = dot.lng; - var sId = dot.binformation.StationId; + var sId = dot.sId; var isExist = checkMarker(sId); // 鏈娣诲姞杩� @@ -2066,7 +2062,14 @@ }); - var allStation; + var allStation = []; + var mapPages = { + pageSize:2, // 姣忛〉鐨勮鏁� + pageCurr:1, // 褰撳墠椤电爜鏁� + pageAll:1, // 鏁扮洰 + pageNum: 0, + pageNew: true + }; //鏌ヨ鏈烘埧 function searchStation(setRect){ var temp = createSearchParam(); @@ -2086,36 +2089,106 @@ data:"json="+json, success: function(data){ data = eval('('+data+')'); - var list = eval('('+data.result+')'); - console.log(list.length); + // 鑾峰彇缁撴灉闆� + var rs = JSON.parse(data.result); + var list = rs.data; + // console.log(list); allStation = new Array(); if(list!=undefined && list.length>0){ + // 璁剧疆鍒嗛〉淇℃伅 + mapPages.pageAll = list.length; + setMapPages(); + console.info(mapPages); + // 閬嶅巻鏌ヨ缁撴灉 for(var i=0;i<list.length;i++){ - var tmp = { - binformation:list[i].data, - alarm_num:list[i].code, //鍛婅鏁扮洰 - low_num:list[i].sum, //钀藉悗鏁扮洰 - delay_num:list[i].newsum, //寤舵椂鏁扮洰 - msg: list[i].msg - }; - allStation.push(analyzeData(tmp)); + var _list = list[i]; + allStation.push(formatAllStation(_list)); } + // 鏄剧ず鍖哄煙鐨勫浘鏍� 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)); // 缂╂斁 + updateStation(); } - - //createMapDot(map, allStation); - } } }); } + // 鏍煎紡鍖栨煡璇㈢粨鏋� + function formatAllStation(list) { + var obj = new Object(); + // 鏋勯�犵粨鏋滈泦 + obj.lng = list.longitude; + obj.lat = list.latitude; + obj.title = list.StationName; + obj.sId = list.StationId; + obj.fbsId = list.FBSDeviceId; + obj.addr = list.Address; + obj.msg = ""; + return obj; + } + + // 璁剧疆鍒嗛〉鐨勪俊鎭� + function setMapPages() { + var pageNum = Math.ceil(mapPages.pageAll/mapPages.pageSize); + mapPages.pageNum = pageNum; + } + + // 杞鏇存柊鍦板浘鐨勭偣鏌ヨ + function updateStation() { + var updateStationData = []; + $.ajax({ + type: "post", + url: "BattMap_informationAction!searchUserManageStation2", + async: true, + dataType:'json', + data: "json="+JSON.stringify(mapPages), + success: function(result) { + var data = JSON.parse(result.result); + for(var i=0; i<data.length; i++) { + var _data = data[i]; + updateStationData.push(formatUpdateStation(_data)); + + // 鍒ゆ柇鏄惁鏇存柊 + } + + createMapDot(map, updateStationData); + + // 鏇存柊鍒嗛〉淇℃伅 + mapPages.pageCurr++; + if(mapPages.pageCurr>mapPages.pageNum) { + mapPages.pageCurr=1; + mapPages.pageNew=false; + } + + setTimeout(updateStation, 4000); + } + }); + } + + // 鏍煎紡鍖栨煡璇㈢粨鏋� + function formatUpdateStation(list) { + var obj = {}; + var data = list.data; + // 鏋勯�犵粨鏋滈泦 + obj.lng = data.longitude; + obj.lat = data.latitude; + obj.title = data.StationName; + obj.sId = data.StationId; + obj.fbsId = data.FBSDeviceId; + obj.addr = data.Address; + obj.msg = list.msg; + return obj; + } + + // 鏇存柊鎵�鏈夋満鎴� + + function setAllStation(obj,allstation){ //console.info(allstation); var flag = false; -- Gitblit v1.9.1