From a423846897181b1f84a37bc9b28125b43e103551 Mon Sep 17 00:00:00 2001 From: ZhuDongming <773644075@qq.com> Date: Wed, 14 Aug 2019 17:30:11 +0800 Subject: [PATCH] 修改飞行轨迹点只有一点时显示1,修改信息弹窗显示顺序及添加数据类别 --- src/main/webapp/view/uavTrajectory.jsp | 98 +++++++++++++++++++++++++++++++++++++++++------- 1 files changed, 83 insertions(+), 15 deletions(-) diff --git a/src/main/webapp/view/uavTrajectory.jsp b/src/main/webapp/view/uavTrajectory.jsp index 74785b8..7196543 100644 --- a/src/main/webapp/view/uavTrajectory.jsp +++ b/src/main/webapp/view/uavTrajectory.jsp @@ -66,16 +66,13 @@ font-size: 13px; font-weight: bold; text-align: left; - padding-left: 5px; - padding-top: 5px; + padding: 5px 5px 0 5px; background-color: #2DA0EB; } .BMap_bubble_content { background-color: white; - padding-left: 5px; - padding-top: 5px; - padding-bottom: 10px; + padding: 5px 5px 10px 5px; } .BMap_pop img { @@ -147,6 +144,8 @@ } var trackPoints = []; //��������������������������������������������������������������� var coincidentPoints = new Array(); + var flyingParameters=['������','������','������','������x','������y','������z']; + var monitorParameters=['PM2.5','PM10','������������','������������','������������','������','VOCs������','������','������','������','���������']; if (sensorInfo.length > 0) { $.each(sensorInfo, function (item, value) { if (typeof (value.������) == "undefined") { @@ -156,6 +155,8 @@ } }) for (var i = 0; i < trackPoints.length; i++) { + var flyingData=[]; + var monitorData=[]; var startPoint = trackPoints[i]; var endPoint = trackPoints[i + 1]; var marker; @@ -235,7 +236,13 @@ '<div style="min-height:20px;overflow:auto;max-height:400px;" >'; var opts = { width: 220, - title: '<h4>���������������</h4>', // ������������������ + title: '<h4>���������'+sensorInfo[i].������+'</h4>', // ������������������ + enableMessage: false, //��������������������������������� + } + + var optsCoincide = { + width: 220, + title: '<h4>������������������</h4>', // ������������������ enableMessage: false, //��������������������������������� } @@ -253,20 +260,32 @@ winfowText += winfowTextAdd; } } - + var monitorDataResult=monitorDataSort(sensorInfo[i],monitorData,monitorParameters); + var flyingDataResult=flyingDataSort(sensorInfo[i],flyingData,flyingParameters); if (coincidentPoints.indexOf(i) > -1) { winfowText = winfowText + "</div>"; } else { - for (var prop in sensorInfo[i]) { - if (sensorInfo[i].hasOwnProperty(prop)) { - winfowText += (prop + "���" + sensorInfo[i][prop] + "</br>"); + winfowText +='<h4 style="background-color: #CD5C5C;color:white">������������������</h4>'; + for (var prop in monitorDataResult) { + if (monitorDataResult.hasOwnProperty(prop)) { + winfowText += (prop + "���" + monitorDataResult[prop] + "</br>"); + } + } + winfowText +='<h4 style="background-color: #66CD00;color:white">������������������</h4>'; + for (var prop in flyingDataResult) { + if (flyingDataResult.hasOwnProperty(prop)) { + winfowText += (prop + "���" + flyingDataResult[prop] + "</br>"); } } winfowText += "</div>"; } (function (x) { - var infoWindow = new BMap.InfoWindow(winfowText, opts); + if (coincidentPoints.indexOf(i) > -1) { + var infoWindow = new BMap.InfoWindow(winfowText, optsCoincide); + }else{ + var infoWindow = new BMap.InfoWindow(winfowText, opts); + } marker.addEventListener("click", function () { this.openInfoWindow(infoWindow); }); @@ -274,15 +293,31 @@ function openInfo(e) { var point = new BMap.Point(sensorInfo[e.id].������.substr(0, sensorInfo[e.id].������.length - 1), sensorInfo[e.id].������.substr(0, sensorInfo[e.id].������.length - 1)); + var flyingData=[]; + var monitorData=[]; + var monitorDataCoincide=monitorDataSort(sensorInfo[e.id],monitorData,monitorParameters); + var flyingDataCoincide=flyingDataSort(sensorInfo[e.id],flyingData,flyingParameters); var winfowText1 = '<div style="min-height:20px;overflow:auto;max-height:400px;" >'; - for (var prop in sensorInfo[e.id]) { - if (sensorInfo[e.id].hasOwnProperty(prop)) { - winfowText1 += (prop + "���" + sensorInfo[e.id][prop] + "</br>"); + winfowText1 +='<h4 style="background-color: #CD5C5C;color:white">������������������</h4>'; + for (var prop in monitorDataCoincide) { + if (monitorDataCoincide.hasOwnProperty(prop)) { + winfowText1 += (prop + "���" + monitorDataCoincide[prop] + "</br>"); + } + } + winfowText1 +='<h4 style="background-color: #66CD00;color:white">������������������</h4>'; + for (var prop in flyingDataCoincide) { + if (flyingDataCoincide.hasOwnProperty(prop)) { + winfowText1 += (prop + "���" + flyingDataCoincide[prop] + "</br>"); } } winfowText1 += "</div>"; - var infoWindow1 = new BMap.InfoWindow(winfowText1, opts); + var optsCoincideChild = { + width: 220, + title: '<h4>���������'+sensorInfo[e.id].������+'</h4>', // ������������������ + enableMessage: false, //��������������������������������� + } + var infoWindow1 = new BMap.InfoWindow(winfowText1, optsCoincideChild); //������������������ map.openInfoWindow(infoWindow1, point); } @@ -299,6 +334,28 @@ function openInfoWindow() { map.openInfoWindow.apply(map, arguments); //������������������ } + + function monitorDataSort(sensorMap,monitorData,monitorParameters) { + for(var j = 0; j < monitorParameters.length; j++) { + $.map(sensorMap,function(value,key){ + if (monitorParameters[j]==key) { + monitorData[key]=sensorMap[key]; + } + }); + } + return monitorData; + } + + function flyingDataSort(sensorMap,flyingData,flyingParameters) { + for(var k = 0; k < flyingParameters.length; k++) { + $.map(sensorMap,function(value,key){ + if (flyingParameters[k]==key) { + flyingData[key]=sensorMap[key]; + } + }); + } + return flyingData; + } if (count > 0) { var lab; @@ -320,6 +377,17 @@ }); map.addOverlay(lab); } + if(count==0){ + var lab=new BMap.Label(count + 1, {position: startPoint, offset: new BMap.Size(-7,-22)}); + lab.setStyle({ + color: "#fff", + fontSize: "16px", + backgroundColor: "1", + border: "0", + fontWeight: "bold" + }); + map.addOverlay(lab); + } map.addOverlay(marker); } } -- Gitblit v1.8.0