| | |
| | | } |
| | | return moralMarker; |
| | | } |
| | | moralMap.clearCloseInfoWindow = function () { |
| | | if(!!moralMap["_closeInfoWinTimer"]){ |
| | | clearTimeout(moralMap["_closeInfoWinTimer"]); |
| | | moralMap["_closeInfoWinTimer"] = null; |
| | | } |
| | | } |
| | | moralMap.openInfoWindow = function() { |
| | | baiduMap.openInfoWindow.apply(baiduMap, arguments); |
| | | moralMap.clearCloseInfoWindow(); |
| | | baiduMap.openInfoWindow.apply(baiduMap, arguments);; //开启信息窗口 |
| | | } |
| | | moralMap.closeInfoWindow = function() { |
| | | baiduMap.closeInfoWindow.apply(baiduMap, arguments); |
| | | var timer = setTimeout(function () { |
| | | baiduMap.closeInfoWindow.apply(baiduMap, arguments); |
| | | moralMap["_closeInfoWinTimer"] = null; |
| | | },1200); |
| | | moralMap["_closeInfoWinTimer"] = timer; |
| | | } |
| | | moralMap.clearOverlays = function() { |
| | | baiduMap.clearOverlays(); |
| | |
| | | } |
| | | //弹窗处理 |
| | | moralMap.showPopupbox = function(id) { |
| | | $(id).css('display', 'block'); |
| | | setTimeout(function () { |
| | | $(id).css('display', 'block'); |
| | | },1); |
| | | } |
| | | moralMap.closePopupbox = function(id) { |
| | | $(id).css('display', 'none'); |
| | | $(id).css('display', 'none'); |
| | | } |
| | | moralMap.isPopupBoxShow = function(id) { |
| | | return $(id).css('display') == 'block'; |
| | | } |
| | | moralMap.onItermClick = function(index) { |
| | | moralMap.onItermClick = function(index,select) { |
| | | var row = moralMap.getPopupEqu(index); |
| | | if(row['mac']==null){ |
| | | alert("mac项未配置,请联系管理员设置"); |
| | | return; |
| | | } |
| | | var equ = { |
| | | methodName : 'chart'== select ?'showChart':'showDeviceMonitor', |
| | | name: row['name'], |
| | | mac: (row['mac']).toLowerCase(), |
| | | longitude: row['longitude'], |
| | | latitude: row['latitude'], |
| | | monitorPointId: row['monitorPointId'], |
| | | version:row['deviceVersion']['version'] |
| | | } |
| | | }; |
| | | !!select?equ['monitorPointId'] = row["monitorPointId"]:null; |
| | | var equStr = JSON.stringify(equ); |
| | | if(window["console"]!=undefined){ |
| | | console.log(equStr); |
| | | } |
| | | if(window['external']&&window['external']['showMonitorInfo']){ |
| | | window['external'].showMonitorInfo(equStr); |
| | | }else{ |
| | | alert(equStr); |
| | | if(window["console"]!=undefined){ |
| | | console.log(equStr); |
| | | } |
| | | if(!!window['external']&&window['external']['callWin']){ |
| | | window['external'].callWin(equStr); |
| | | }else{ |
| | | if(!!select&&select==='chart'&&!!window['external']&&window['external']['showChartInfo']){ |
| | | window['external'].showChartInfo(equStr); |
| | | }else if(!!window['external']&&window['external']['showMonitorInfo']){ |
| | | window['external'].showMonitorInfo(equStr); |
| | | }else{ |
| | | alert(equStr); |
| | | } |
| | | } |
| | | |
| | | } |
| | | moralMap.setPopupEqus = function(arr) { |
| | | moralMap["_equs"] = arr; |
| | |
| | | } |
| | | name = name.substring(0, stop1) + "..." + name.substring(stop2, name.length); |
| | | } |
| | | var li = "<li id='listview_item_" + e['mac'] + "' onclick=moralMap.onItermClick(" + i + ")><span id='listview_state_" + e['mac'] + "' class='" + state + "'>" + stateName + "</span>" + name + "</li>"; |
| | | var li = "<li id='listview_item_" + e['mac'] + "'><span class='list-chart-span' onclick=moralMap.onItermClick(\"" + i + "\",'chart')><img src='/img/chart.png'></span>" |
| | | +"<span id='listview_state_" + e['mac'] + "'class='" + state + "'>" + stateName + "</span>" + |
| | | "<div style='cursor: pointer;' onclick=moralMap.onItermClick(\"" + i + "\")>" + name + "</div></li>"; |
| | | outHtml += li; |
| | | } |
| | | outHtml += "</ul>"; |
| | |
| | | //生成信息框 |
| | | var winOpts = { |
| | | width: 110, // 信息窗口宽度 |
| | | height: 50, // 信息窗口高度 |
| | | height: 80, // 信息窗口高度 |
| | | title: getTitleOutHtml(), // 信息窗口标题 |
| | | offset: new BMap.Size(-2, -21) //设置信息窗偏移 |
| | | } |
| | |
| | | address = address.slice(0, 18) + "..."; |
| | | } |
| | | var adressOutHtml = ""; |
| | | adressOutHtml += "<div style='font:12px arial,sans-serif;margin-top:12px'><table cellspacing='0' style='overflow:hidden;table-layout:fixed;width:100%;font:12px arial,sans-serif'>"; |
| | | adressOutHtml += "<div onmouseover='moralMap.clearCloseInfoWindow()'"; |
| | | adressOutHtml += "onmouseout='moralMap.closeInfoWindow()'"; |
| | | adressOutHtml +=" style='font:12px arial,sans-serif;margin-top:12px'><table cellspacing='0' style='overflow:hidden;table-layout:fixed;width:100%;font:12px arial,sans-serif'>"; |
| | | 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></tbody></table></div>"; |
| | | 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 += "</tbody></table></div>"; |
| | | return adressOutHtml; |
| | | } |
| | | return new BMap.InfoWindow(getAdressOutHtml(), winOpts); |
| | | })(); |
| | | |
| | | if(moralMask["infoWindow"] == undefined) { |
| | | moralMask["infoWindow"] = infoWindow; |
| | | } |
| | | //弹窗打开和关闭 |
| | | moralMask.addEventListener("mouseover", function() { |
| | | baiduMap.openInfoWindow(infoWindow, this._point); //开启信息窗口 |
| | | moralMap.openInfoWindow(infoWindow, this._point); //开启信息窗口 |
| | | }); |
| | | moralMask.addEventListener("mouseout", function() { |
| | | baiduMap.closeInfoWindow(); |
| | | moralMap.closeInfoWindow(); |
| | | }); |
| | | //==================infoWindow-end============================ |
| | | //储存监控点 |
| | |
| | | } |
| | | return markers; |
| | | } |
| | | moralMap.showPointMonitor = function (id) { |
| | | var mpointMarker = moralMap.getMpoint(id); |
| | | var mpoint = mpointMarker.getOption(); |
| | | if(!!mpoint){ |
| | | delete mpoint['organization']; |
| | | delete mpoint['icon']; |
| | | delete mpoint['click']; |
| | | if(window["console"]!=undefined){ |
| | | console.log(mpoint); |
| | | } |
| | | $.get("getvers?mptid="+id,function (res) { |
| | | if(!!res&&res.code==1){ |
| | | mpoint['versions'] = res.data; |
| | | mpoint['methodName'] = 'showPointMonitor'; |
| | | var mpointStr = JSON.stringify(mpoint); |
| | | if(!!window['external']&&window['external']['callWin']){ |
| | | window['external'].callWin(mpointStr); |
| | | }else{ |
| | | alert(JSON.stringify(mpointStr)); |
| | | } |
| | | } |
| | | }) |
| | | }else{ |
| | | if(window["console"]!=undefined){ |
| | | console.log("option of mpointMarker is null"); |
| | | console.log(mpointMarker); |
| | | } |
| | | } |
| | | |
| | | } |
| | | window.moralMap = moralMap; |
| | | })(jQuery, BMap, window); |