From 4fdc4a6da681223148849a9b2eaf90227a56148a Mon Sep 17 00:00:00 2001 From: xufenglei <xufenglei> Date: Fri, 09 Nov 2018 13:22:47 +0800 Subject: [PATCH] 地图 更改从列表定位 --- src/main/webapp/js/moralmap.js | 32 ++++++++++++++++++++++++++++++-- src/main/webapp/view/map.jsp | 24 ++++++++++++++---------- 2 files changed, 44 insertions(+), 12 deletions(-) diff --git a/src/main/webapp/js/moralmap.js b/src/main/webapp/js/moralmap.js index 1364c59..f097d2b 100644 --- a/src/main/webapp/js/moralmap.js +++ b/src/main/webapp/js/moralmap.js @@ -550,6 +550,7 @@ //new BMap.Marker()������������IE7��������������������� moralMap.MoralMarker.prototype = new BMap.Marker(); //��������������� ������Mark������ + var showMonitorpointInfoWindow = null; moralMap.Monitorpoint = function(option) { var icon = {}; icon["stateIcons"] = ["/img/ico00.png", "/img/ico01.png", "/img/ico02.png", "/img/ico03.png", "/img/ico04.png"]; @@ -593,12 +594,15 @@ adressOutHtml += "<tbody><tr><td style='vertical-align:top;width:38px;white-space:nowrap;word-break:keep-all'>��������� </td><td style='line-height:16px'>"; adressOutHtml += address + " "; adressOutHtml += "</td></tr>"; - adressOutHtml += "<tr><td style='width:98%;padding-top:10px;'colspan='2'><a href='javascript:void(0);' style='display:block;position: relative;float: right;' onclick='moralMap.showPointMonitor("+option.id+")'>������������>></a></td></tr>"; + //adressOutHtml += "<tr><td style='width:98%;padding-top:10px;'colspan='2'><a href='javascript:void(0);' style='display:block;position: relative;float: right;' onclick='moralMap.showPointMonitor("+option.id+")'>������������>></a></td></tr>"; adressOutHtml += "</tbody></table></div>"; return adressOutHtml; } return new BMap.InfoWindow(getAdressOutHtml(), winOpts); })(); + if (!showMonitorpointInfoWindow) { + showMonitorpointInfoWindow = infoWindow; + } if(moralMarker["infoWindow"] == undefined) { moralMarker["infoWindow"] = infoWindow; } @@ -638,6 +642,7 @@ } //���������mac���key������ //��������������� ������MoralMark������ + var showEquipmentInfoWindow = null; moralMap.Equipment = function(option) { var icon = {}; icon["stateIcons"] = ["/img/ico_coo00.png", "/img/ico_coo01.png", "/img/ico_coo02.png", "/img/ico_coo03.png", "/img/ico_coo04.png"]; @@ -674,6 +679,9 @@ } return new BMap.InfoWindow("", winOpts); })(); + if (!showEquipmentInfoWindow) { + showEquipmentInfoWindow = infoWindow; + } var dataHandle = { _getDataOutHtml: function(data) { if(data==null||data["state"]==4){ @@ -902,6 +910,26 @@ } } - } + } + + moralMap.callJS = function(condition) { + var condition = JSON.parse(condition); + var new_point = new BMap.Point(condition.longitude, condition.latitude); + baiduMap.panTo(new_point); + baiduMap.setCenter(new_point); + if (condition.type == "mpoint") { + baiduMap.setZoom(17); + new moralMap.Monitorpoint(condition); + moralMap.openInfoWindow(showMonitorpointInfoWindow, new_point); + showMonitorpointInfoWindow = null; + } else if (condition.type == "device") { + baiduMap.setZoom(18); + new moralMap.Equipment(condition); + moralMap.openInfoWindow(showEquipmentInfoWindow, new_point); + showEquipmentInfoWindow = null; + } + } + + window.moralMap = moralMap; })(jQuery, BMap, window); \ No newline at end of file diff --git a/src/main/webapp/view/map.jsp b/src/main/webapp/view/map.jsp index 8144d86..2ca7b1e 100644 --- a/src/main/webapp/view/map.jsp +++ b/src/main/webapp/view/map.jsp @@ -278,14 +278,14 @@ <div class="charts_btn"> </div> </div> - <div class="search_box"> + <!-- <div class="search_box"> <button id="searchBtn" type="button">������</button> <input id="searchParam"/> </div> <div id="popup_box"> <div id="equ_list" class="listview"> </div> - </div> + </div> --> <div id="mapCanvas"></div> <div id="mapParams" style="display: none;"> ${requestScope.mapParams} @@ -316,10 +316,10 @@ var params = moralMap['params']; var mpoint = obj.currentTarget.getOption(); - $("#searchParam").val(mpoint['name']); + //$("#searchParam").val(mpoint['name']); var url = 'get-devices-by-mid-oid?mpId=' + mpoint['id'] + "&orgId=" + params['orgId']; listView.load(url); - moralMap.showPopupbox("#popup_box"); + //moralMap.showPopupbox("#popup_box"); } function loadLazy(url,paramMap,callBack,lazyKeyer){ if(lazyKeyer==undefined){ @@ -508,7 +508,7 @@ } // ������������������ ������������ moralMap.addEventListener("click", function(type, target) { - moralMap.closePopupbox("#popup_box"); + //moralMap.closePopupbox("#popup_box"); }); //������������������������������������������ moralMap.addEventListener('zoomstart', function(type) {}); @@ -520,7 +520,7 @@ }else{ loadOverlays("get-monitorpoints",addOverMpoints); } - moralMap.closePopupbox("#popup_box"); + //moralMap.closePopupbox("#popup_box"); }); moralMap.addEventListener('moveend', function(type) { var endZoom = this.getZoom(); @@ -529,13 +529,13 @@ }else{ loadOverlays("get-monitorpoints",addOverMpoints); } - moralMap.closePopupbox("#popup_box"); + //moralMap.closePopupbox("#popup_box"); }); //��������������������� $("#searchBtn").click( function(e) { var param = encodeURI($("#searchParam").val()); - moralMap.showPopupbox("#popup_box"); + //moralMap.showPopupbox("#popup_box"); var url = 'get-devices-for-popup?name=' + param + "&orgId=" + params['orgId']; listView.load(url); } @@ -582,12 +582,12 @@ //������������ function refreshAllState() { var parma={}; - if(moralMap.isPopupBoxShow("#popup_box")) { + /* if(moralMap.isPopupBoxShow("#popup_box")) { var popupEquMacs = moralMap.getPopupEquMacs(); if(popupEquMacs!=null&&popupEquMacs.length>0){ parma["popupEquMacs"] = popupEquMacs; } - } + } */ //������������ var oldMarkerList = moralMap.getHorizonMarkers(true); var markerKeys = []; @@ -651,4 +651,8 @@ }); } } + + function callJS(jsonData){ + moralMap.callJS(jsonData); + } </script> -- Gitblit v1.8.0