| | |
| | | .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>
|
| | |
|
| | |
| | | });
|
| | | });
|
| | |
|
| | | // 点击地图的搜索按钮定位地址
|
| | | $(function() {
|
| | | $('#map').on('click', '.search .search-btn', function() {
|
| | | var posTxt = $('#map .search .pos-txt').val();
|
| | | addrAnalyze(posTxt);
|
| | | });
|
| | | });
|
| | | |
| | | |
| | | $(window).resize(function() {
|
| | | getMapHt();
|
| | | });
|
| | |
| | |
|
| | | // 遍历查询内容生成对应的图标
|
| | | for(var i = 0; i < dotList.length; i++) {
|
| | | var dotIcon = new BMap.Icon(getMapStateImg(mapImages, dotList[0].msg), new BMap.Size(36, 30)); // 设置图片
|
| | | var dotIcon = new BMap.Icon(getMapStateImg(mapImages, dotList[i].msg), new BMap.Size(36, 30)); // 设置图片
|
| | | var pt = new BMap.Point(dotList[i].lng, dotList[i].lat);
|
| | |
|
| | | var mk = new BMap.Marker(pt, {icon: dotIcon}); // 定义marker点
|
| | | addMenu(mk, mapDel);
|
| | | |
| | | // 删除指定的点(该点会在本函数后面重新创建)
|
| | | deletePoint(map, dotList[i].title);
|
| | | |
| | | // 给点右键菜单添加删除按钮
|
| | | addMenu(mk, mapDel);
|
| | | |
| | | // 向mk点添加label
|
| | | var home_name = new BMap.Label(dotList[i].title, {offset:new BMap.Size(20,-10)});
|
| | | home_name.setStyle({display: 'none', padding: '4px 2px'});
|
| | |
| | |
|
| | | mk.addEventListener('click', function(e) {
|
| | | var target = e.target;
|
| | | showMapPanel(target, dotList);
|
| | | //showMapPanel(target, dotList);
|
| | | searchPanelInfo(target);
|
| | | });
|
| | | mkList.push(mk);
|
| | | // 向地图添加覆盖物
|
| | | map.addOverlay(mk);
|
| | | }
|
| | | }
|
| | | |
| | | |
| | | |
| | | |
| | | // |
| | |
|
| | | // 删除地图上的指定点
|
| | | function deletePoint(map, msg){
|
| | |
| | |
|
| | | 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) {
|
| | |
| | | function showMapPanelByPoint(point, dataList) {
|
| | | var searchInforWin = null;
|
| | | var opts = {
|
| | | //title : warnList[i].title+'<a href="javascript:loadToHomeInfo();" style="margin-left: 1em;text-decoration:none">详情>></a>', //标题
|
| | | title : dataList.title+'<a href="javascript:loadToHomeInfo();" style="margin-left: 1em;text-decoration:none;cursor:not-allowed">详情>></a>', //标题未开启
|
| | | width : '290', //宽度
|
| | | height : 140, //高度
|
| | |
| | | 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);
|
| | |
|
| | | // 未被添加过
|
| | |
| | | function setDots(data) {
|
| | | dots = data;
|
| | | }
|
| | | |
| | | // 将变量绑定到命名空间下
|
| | | gl.BMap.setDots = setDots;
|
| | | |
| | | // 更新dots集合的数据
|
| | | function updateDots(data) {
|
| | | for(var i=0; i<dots.length; i++) {
|
| | | var _dots = dots[i];
|
| | | if(_dots.sId == data.sId) {
|
| | | _dots.msg = data.msg;
|
| | | }
|
| | | }
|
| | | }
|
| | | |
| | | // 将变量绑定到命名空间下
|
| | | gl.BMap.updateDots = updateDots;
|
| | |
|
| | | // 将函数绑定到命名空间下
|
| | | gl.BMap.queryInRect = queryInRect;
|
| | | })(jQuery, window, document, GLOBAL);
|
| | |
|
| | | searchStation(true);
|
| | | var allStation;
|
| | | |
| | | // 地图机房搜索模块
|
| | | ;(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的值返回home列表
|
| | | 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 = [];
|
| | | var mapPages = {
|
| | | pageSize:100, // 每页的行数
|
| | | pageCurr:1, // 当前页码数
|
| | | pageAll:1, // 数目
|
| | | pageNum: 0,
|
| | | pageNew: true
|
| | | };
|
| | | //查询机房
|
| | | 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 = [];
|
| | |
| | | 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();
|
| | | |
| | | // 遍历查询结果
|
| | | 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));
|
| | | }
|
| | | |
| | | // 显示区域的图标
|
| | | GLOBAL.BMap.setDots(allStation);
|
| | | GLOBAL.BMap.queryInRect(map,createMapDot);
|
| | | // 是否设置拖到和缩放
|
| | | bmap.setDots(allStation);
|
| | | bmap.queryInRect(map, createMapDot);
|
| | | // 是否第一次执行
|
| | | if(setRect) {
|
| | | map.addEventListener("moveend", GLOBAL.BMap.queryInRect.bind({},map, createMapDot)); // 拖动
|
| | | map.addEventListener("zoomend", GLOBAL.BMap.queryInRect.bind({},map, createMapDot)); // 缩放
|
| | | 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 = "";
|
| | | obj.num = list.num;
|
| | | return obj;
|
| | | }
|
| | | |
| | | // 设置分页的信息
|
| | | function setMapPages() {
|
| | | var pageNum = Math.ceil(mapPages.pageAll/mapPages.pageSize);
|
| | | mapPages.pageNum = pageNum;
|
| | | mapPages.pageNew= true;
|
| | | }
|
| | | |
| | | // 轮询更新地图的点查询
|
| | | function updateStation() {
|
| | | var bmap = GLOBAL.BMap; // BMap的命名空间
|
| | | 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];
|
| | | var _list = formatUpdateStation(_data);
|
| | | updateStationData.push(_list);
|
| | | //_list.msg = 'item-nuclear_cap';
|
| | | // 判断是否更新
|
| | | if(mapPages.pageNew) {
|
| | | bmap.updateDots(_list);
|
| | | }
|
| | | }
|
| | | |
| | | 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;
|
| | | obj.num = list.num;
|
| | | return obj;
|
| | | }
|
| | | |
| | | // 查询机房面板信息
|
| | | function searchPanelInfo(data) {
|
| | | var point = data.point;
|
| | | var stationInfo = getStaionByPoint(point);
|
| | | if(!stationInfo) {
|
| | | alert('面板信息查询失败!');
|
| | | return;
|
| | | }
|
| | | |
| | | var temp = {
|
| | | StationId: stationInfo.sId
|
| | | };
|
| | | // 查询面板信息
|
| | | $.ajax({
|
| | | type: 'post',
|
| | | async: true,
|
| | | url: 'BattMap_informationAction!searchUserManageStation3',
|
| | | data: 'json='+JSON.stringify(temp),
|
| | | dataType: 'json',
|
| | | success: function(result) {
|
| | | var rs = JSON.parse(result.result);
|
| | | if(rs.length != 0) {
|
| | | var data = rs[0];
|
| | | console.info(data);
|
| | | var content = '<div style="padding:6px;"><span>蓄电池组告警数目:</span>'+data.code+'<a style="margin-left: 14px" href="javascript:loadToWarnPage();">详情>></a></div>'+
|
| | | '<div style="padding:6px;"><span>蓄电池组落后数目:</span>'+data.sum+'<a style="margin-left: 14px" href="javascript:loadToBehindPage();">详情>></a></div>'+
|
| | | '<div style="padding:6px;"><span>蓄电池组延时数目:</span>'+data.newsum+'<a style="margin-left: 14px" href="javascript:loadToDischargeDelay();">详情>></a></div>'+
|
| | | '<div style="padding:6px"><a href="javascript:loadToRealTime();">实时数据</a><a style="margin-left: 20px" href="javascript:loadToOldTime();">历史数据</a></div>'+
|
| | | '<div style="padding:6px;"><span>地址:</span>'+data.data.Address+'</div>'+
|
| | | '<input type="hidden" class="ipt-hide" value="">'+
|
| | | '<input type="hidden" class="ipt-hide" value="'+data.data.StationId+'">';
|
| | | |
| | | var list = {
|
| | | title: data.data.StationName,
|
| | | content: content
|
| | | };
|
| | | |
| | | showMapPanelByPoint(point, list);
|
| | | }
|
| | | |
| | | }
|
| | | }); |
| | | }
|
| | | |
| | | |
| | | // 根据经纬度获取机房的信息
|
| | | function getStaionByPoint(point) {
|
| | | var stationInfo = false;
|
| | | // 遍历所有机房
|
| | | for(var i=0; i<allStation.length; i++) {
|
| | | var info = allStation[i];
|
| | | if(info.lng == point.lng && info.lat == point.lat) {
|
| | | stationInfo = info;
|
| | | }
|
| | | }
|
| | | return stationInfo;
|
| | | }
|
| | | function setAllStation(obj,allstation){
|
| | | //console.info(allstation);
|
| | | var flag = false;
|
| | | var index = 0;
|
| | | for(var i = 0;i < allstation.length;i++){
|
| | | for(var i = 0;i < allStation.length;i++){
|
| | | //console.info(obj.binformation.num + "==" + allstation[i].binformation.num);
|
| | | if(obj.binformation.num == allstation[i].binformation.num){
|
| | | flag = true;
|
| | |
| | | text: '删除',
|
| | | callback: function(e) {
|
| | | //console.info(allStation);
|
| | | console.info(mk);
|
| | | console.info(allStation);
|
| | | var temp = getStationMap(allStation, mk.point);
|
| | | if(confirm("确认从地图上删除'"+temp.StationName+"'的位置信息吗?")){
|
| | | if(confirm("确认从地图上删除'"+temp.title+"'的位置信息吗?")){
|
| | | if(temp != undefined){
|
| | | //console.info(temp);
|
| | | var json = JSON.stringify(temp);
|
| | | $.ajax({
|
| | | type: "post",
|
| | |
| | | function getStationMap(list,localposi){
|
| | | if(list != undefined){
|
| | | for(var i = 0 ; i < list.length ; i++){
|
| | | if(list[i].binformation.latitude == localposi.lat && list[i].binformation.longitude == localposi.lng){
|
| | | return list[i].binformation;
|
| | | if(list[i].lat == localposi.lat && list[i].lng == localposi.lng){
|
| | | return list[i];
|
| | | }
|
| | | }
|
| | | }
|
| | |
| | | img.attr('src', navImg);
|
| | | }
|
| | | }
|
| | | |
| | | // 点击地图的搜索按钮定位地址
|
| | | $(function() {
|
| | | $('#map').on('click', '.search .search-btn', function() {
|
| | | var posTxt = $('#map .search .pos-txt').val();
|
| | | addrAnalyze(posTxt);
|
| | | });
|
| | | });
|
| | | </script>
|
| | | </html>
|