D:/workspace/chenjingjing/git/gx_tieta/gx_tieta/.gitignore
2019-01-18 2fe250ece8de95b3f70172fe5b45793ab6a3084a
gx_tieta/WebRoot/mobil/map.html
@@ -14,6 +14,62 @@
   <link rel="stylesheet" href="http://api.map.baidu.com/library/SearchInfoWindow/1.5/src/SearchInfoWindow_min.css" />
   <script type="text/javascript" src="http://api.map.baidu.com/api?v=2.0&ak=QAerSFEiGDCx1oHPB7Z5XYcBHI6R3qwx"></script>
    <script type="text/javascript" src="http://api.map.baidu.com/library/SearchInfoWindow/1.5/src/SearchInfoWindow_min.js"></script>
   <style>
      .map-panel-btn {
         /*初始化按钮*/
         font-size: 12px;
         text-decoration: none!important;
         font-family: Helvetica, Arial, sans serif;
         padding: 4px 12px;
         border-radius: 3px;
         -moz-border-radius: 3px;
         box-shadow: inset 0px 0px 2px #fff;
         -o-box-shadow: inset 0px 0px 2px #fff;
         -webkit-box-shadow: inset 0px 0px 2px #fff;
         -moz-box-shadow: inset 0px 0px 2px #fff;
         /*定义颜色和样式*/
         color: #41788c;
         border: 1px solid #6fb1c7;
         background-image: -moz-linear-gradient(#aae5f7, #73d0f1);
         background-image: -webkit-gradient(linear, 0% 0%, 0% 100%, from(#73d0f1), to(#aae5f7));
         background-image: -webkit-linear-gradient(#aae5f7, #73d0f1);
         background-image: -o-linear-gradient(#aae5f7, #73d0f1);
         text-shadow: 1px 1px 1px #bfeafb;
         background-color: #73d0f1;
         /* 定义位置 */
         margin-left: 200px;
      }
      .map-panel-seen-btn {
         font-size: 12px;
         text-decoration: none!important;
         font-family: Helvetica, Arial, sans serif;
         padding: 4px 12px;
         border-radius: 3px;
         -moz-border-radius: 3px;
         box-shadow: inset 0px 0px 2px #fff;
         -o-box-shadow: inset 0px 0px 2px #fff;
         -webkit-box-shadow: inset 0px 0px 2px #fff;
         -moz-box-shadow: inset 0px 0px 2px #fff;
         /*定义颜色和样式*/
         color: #41788c;
         border: 1px solid #6fb1c7;
         background-image: -moz-linear-gradient(#aae5f7, #73d0f1);
         background-image: -webkit-gradient(linear, 0% 0%, 0% 100%, from(#73d0f1), to(#aae5f7));
         background-image: -webkit-linear-gradient(#aae5f7, #73d0f1);
         background-image: -o-linear-gradient(#aae5f7, #73d0f1);
         text-shadow: 1px 1px 1px #bfeafb;
         background-color: #73d0f1;
      }
      .map-panel-btn:hover, .map-panel-seen-btn:hover {
         border: 1px solid #4690ad;
         background-image: -moz-linear-gradient(#73d0f1, #aae5f7);
         background-image: -webkit-gradient(linear, 0% 0%, 0% 100%, from(#aae5f7), to(#73d0f1));
         background-image: -webkit-linear-gradient(#73d0f1, #aae5f7);
         background-image: -o-linear-gradient(#73d0f1, #aae5f7);
         background-color: #aae5f7;
      }
   </style>
</head>
<body class="full-height">
    <div class="abs">
@@ -21,17 +77,24 @@
            <div class="page-header bg-gay3">
                <div class="layui-row h40">
                    <div class="layui-col-xs3 layui-col-md1 full-height">
                        <button class="layui-btn layui-btn-primary layui-btn-sm mrt5 mrl8"><i class="fa fa-reply mrr4"></i>返回</button>
                        <a href="index.html" class="layui-btn layui-btn-primary layui-btn-sm mrt5 mrl8"><i class="fa fa-reply mrr4"></i>返回</a>
                    </div>
                    <div class="layui-col-xs6 layui-col-md10 full-height line-height40">机房定位</div>
                    <div class="layui-col-xs3 layui-col-md1 full-height line-height40 t-align-right t-align-right">
                        <button class="layui-btn layui-btn-primary layui-btn-sm mrr8" id="homeInfo"><i class="fa fa fa-bars mrr4"></i>功能</button>
                        <!-- <button class="layui-btn layui-btn-primary layui-btn-sm mrr8" id="homeInfo"><i class="fa fa fa-bars mrr4"></i>功能</button> -->
                    </div>
                </div>
            </div>
            <div class="page-content abs abs-top40">
                <div class="rel-full">
                    <div id="map" class="full-height"></div>
                    <div id="tempMapContainer" class="temp-map-container">
                       <div class="temp-map-container-rel">
                          <div class="temp-map-container-close"><i class="fa fa-close"></i></div>
                          <div id="changeMapMarker" class="temp-map"></div>
                       </div>
                    </div>
                    <div id="mapSearch" class="map-search-container">
                        <div class="layui-form layui-form-pane" action="">
                            <div class="layui-form-item">
@@ -42,13 +105,22 @@
                            </div>
                        </div>
                    </div>
                    <div id="mapLocationLogo" class="map-location-logo"></div>
                    <div id="mapLocationLogo" class="map-location-logo">
                       <div class="map-location-logo-container default"></div>
                    </div>
                </div>
            </div>
        </div>
    </div>
    <!-- 存储机房信息列表 -->
    <div id="searchHomeIframe"></div>
    <!-- 机房定位 -->
    <div id="homeLocation"></div>
    <!-- 存在机房信息 -->
    <div id="homeInfoIframe"></div>
    <script src="js/jquery-1.8.3.js"></script>
    <script src="src/layui.js"></script>
    <script src="src/layui.all.js"></script>
    <script src="../pages/js/GPS.js"></script>
    <script>
        //  百度地图模块
        var map = new BMap.Map('map');
@@ -58,51 +130,766 @@
        map.disableDoubleClickZoom();
        // 给地图添加工具条(地图-卫星-三维)和比例尺控件
        map.addControl(new BMap.MapTypeControl({anchor: BMAP_ANCHOR_BOTTOM_RIGHT}));
      // 百度地图临时模块
      var tmpMap = new BMap.Map('changeMapMarker');
      var point = new BMap.Point(125.3192,43.8090);
        tmpMap.centerAndZoom(point, 11);   // 用城市名设置地图中心点
        tmpMap.enableScrollWheelZoom();
        tmpMap.disableDoubleClickZoom();
        // 给地图添加工具条(地图-卫星-三维)和比例尺控件
        tmpMap.addControl(new BMap.MapTypeControl({anchor: BMAP_ANCHOR_BOTTOM_RIGHT}));
        // 浏览器定位(前提是有网络和开启GPS权限)
        var geolocation = new BMap.Geolocation();
        // 点击定位按钮
        $('#mapLocationLogo .map-location-logo-container').click(function() {
           $(this).removeClass('default loading success').addClass('loading');
           var _this = $(this);
           geolocation.getCurrentPosition(function(r){
                if(this.getStatus() == BMAP_STATUS_SUCCESS){
                   delMkByLabel('新机房');
                   _this.removeClass('default loading success').addClass('success');
                   var mk = new BMap.Marker(r.point);
                   var label = new BMap.Label("新机房",{offset:new BMap.Size(20,-10)});
                   label.setStyle({display: 'none', padding: '4px 2px'});
                   mk.enableDragging();      // 设置可拖动
                   map.addOverlay(mk);         // 将覆盖物添加到地图中
                   mk.setLabel(label);         // 给覆盖物添加label提示
               map.panTo(r.point);      // 将地图移动到添加的点位置
               map.setZoom(20);         // 设置地图的缩放等级
               // 给maker点绑定点击事件
               mk.addEventListener('click', function(e) {
                  var target = e.target;
                  showAddMapPanel(target);
               });
                }else {
                   layer.msg('定位失败,请检查GPS或网络!');
                }
          });
        });
      // 删除
      function delMkByLabel(str) {
         var allOverlay = map.getOverlays();
         for (var i = 0; i < allOverlay.length -1; i++){
            if(allOverlay[i].getLabel) {
               if(allOverlay[i].getLabel()) {
                  if(allOverlay[i].getLabel().content == str){
                     map.removeOverlay(allOverlay[i]);
                     return false;
                  }
               }
            }
         }
      }
      // 添加增加机房的面板
      function showAddMapPanel(target) {
         var geoc = new BMap.Geocoder();
         var searchInforWin = null;
         var pt = target.point;
        // 添加定位控件
        var geolocationControl = new BMap.GeolocationControl();
        map.addControl(geolocationControl);
        // layui模块
        layui.use(['layer'], function() {
            var layer = layui.layer;      // 获取layer模块
            var iframePopup;
            // 点击筛选弹出内容
            $('#homeInfo').click(function() {
                iframePopup = layer.open({
                    type: 2
                    ,closeBtn: 0
                    ,title: false
                    ,area: ['100%', '100%']
                    ,full: true
                    ,anim: 4
                    ,content: 'iframe/homeinfo.html'
                });
         var opts = {
            title  : '设置站点位置',      //标题
            width  : 290,             //宽度
            height : 150,              //高度
            panel  : "panel",         //检索结果面板
            enableAutoPan : true,     //自动平移
            searchTypes   :[
               // BMAPLIB_TAB_SEARCH,   //周边检索
               // BMAPLIB_TAB_TO_HERE,  //到这里去
               // BMAPLIB_TAB_FROM_HERE //从这里出发
            ]
         };
         geoc.getLocation(pt, function(rs){
            var addComp = rs.addressComponents;
            $.ajax({
                 type: "post",
                 url: "BattMap_informationAction!serchNotInBattMap",
                 async:true,
                 dataType:'text',
                 data:null,
                 success: function(data){
                    //console.info(data);
                  data = eval('('+data+')');
                  var model = eval('('+data.result+')');
                  //console.info(model);
                  var options = "";
                  if(model.code == 1){
                     for(var i=0;i<model.data.length;i++){
                        options+= '<option value="'+model.data[i].StationId+'">'+model.data[i].StationName+'</option>';
                     }
                  }else{
                     options = "<option value='0'>暂无可设站点</option>";
                  }
                  var content = '<div class="add-panel">'+
                     '<div style="padding: 6px 4px"><span>地址:</span>'+
                     '<span class="addr">'+addComp.province+'-'+addComp.city+'-'+addComp.district+'-'+addComp.street+'</span></div>'+
                     '<div style="padding: 6px 4px">经度:<span class="lng">'+rs.point.lng+'</span>,纬度:<span class="lat">'+rs.point.lat+'</span></div>'+
                     '<div style="padding: 6px 4px"><span>设置站点名:</span>'+'<select style="border: 1px solid #ccc; width: 180px">'+options+'</select></div>'+
                     '<div style="padding: 6px 4px; margin-top: 20px">'+
                     '<a href="javascript:showHomeInfo();" class="map-panel-btn">确定</a></div>'
                  +'</div>';
                  searchInforWin = new BMapLib.SearchInfoWindow(map, content, opts);
                  searchInforWin.open(rs.point);
                  $('.BMapLib_sendToPhone').hide();
                 }
            });
         });
      }
      // 显示机房详细信息
      var iframePopup;
      function showHomeInfo() {
         var lng = $('.add-panel .lng').text();                     // 获取经度
         var lat = $('.add-panel .lat').text();                     // 获取纬度
         var addr = $('.add-panel .addr').text();                  // 获取地址
         var homeId = $('.add-panel select option:selected').val();      // 机房Id
         var homeName = $('.add-panel select option:selected').text();   // 机房名称
         var temp = {
            homeId: homeId
            ,homeName: homeName
            ,addr: addr
            ,lng: lng
            ,lat: lat
         }
         // 显示暂无可设站点
         if(homeId == 0) {
            layer.msg(homeName);
            return;
         }
         // 存储值
         $('#homeInfoIframe').data('homeInfo', temp);
         iframePopup = layer.open({
                type: 2
                ,closeBtn: 0
                ,title: false
                ,area: ['100%', '100%']
                ,full: true
                ,anim: 4
                ,content: 'iframe/homeinfo.html'
            });
            // 搜索机房获取焦点
            $('#searchInput').on('focus', function() {
                $(this).blur();
                iframePopup = layer.open({
                    type: 2
                    ,closeBtn: 0
                    ,title: false
                    ,area: ['100%', '100%']
                    ,full: true
                    ,anim: 5
                    ,content: 'iframe/searchHome.html'
                });
            layer.full(iframePopup);
      }
        // 点击筛选弹出内容
        $('#homeInfo').click(function() {
            iframePopup = layer.open({
                type: 2
                ,closeBtn: 0
                ,title: false
                ,area: ['100%', '100%']
                ,full: true
                ,anim: 4
                ,content: 'iframe/homeinfo.html'
            });
            layer.full(iframePopup);
        });
        // 搜索机房获取焦点
        $('#searchInput').on('focus', function() {
            $(this).blur();
            iframePopup = layer.open({
                type: 2
                ,closeBtn: 0
                ,title: false
                ,area: ['100%', '100%']
                ,full: true
                ,anim: 5
                ,content: 'iframe/searchHome.html'
            });
            layer.full(iframePopup);
        });
        // 查询机房
        findHome();
      function findHome() {
         var tmp = {
            StationName1:'',
            StationName2: '',
            StationName5:''
         };
         // 查询将信息
         $.post("BattInfAction!serchStationName3","json="+JSON.stringify(tmp),function(result){
            var rs = JSON.parse(result.result);
            if(rs.code==1){
               homeSource = [];
               var data = rs.data;
               for(var i=0; i<data.length; i++) {
                  var _data = data[i];
                  var tmp = {
                     label: _data.StationName+'('+_data.StationId+')',
                     province: _data.StationName1,
                     city: _data.StationName2,
                     county: _data.StationName5,
                     home: _data.StationName,
                     homeid: _data.StationId
                  };
                  // 添加到资源
                  homeSource.push(tmp);
               }
               //console.log(homeSource)
               // 设置资源内容
               $('#searchHomeIframe').data('homeSource', homeSource);
            }
         });
      }
      // 显示地图图标
      var allStation = [];
      function searchStation(){
         var temp = createSearchParam();
         var json = JSON.stringify(temp);
         var load = layer.load(1);
         // 查询后台
         $.ajax({
              type: "post",
              url: "BattMap_informationAction!searchUserManageStation",
              async: true,
              dataType:'text',
              data:"json="+json,
              success: function(data){
                 data = eval('('+data+')');
                 // 获取结果集
               var rs = JSON.parse(data.result);
               var list = rs.data;
               // console.log(list);
               allStation = new Array();
               if(list!=undefined && list.length>0){
                  // 遍历查询结果
                  for(var i=0;i<list.length;i++){
                     var _list = list[i];
                     allStation.push(formatAllStation(_list));
                  }
                  createMapDot(map, allStation);
                  queryInRect(map);
                  map.addEventListener("moveend", queryInRect.bind({},map));  // 拖动
                  map.addEventListener("zoomend", queryInRect.bind({},map)); // 缩放
               }
              },
              complete:function() {
                 layer.close(load);
              }
          });
      }
      //构造查询条件
      function createSearchParam(){
         var bmd = {
            adata:{
               alm_cleared_type:$('#alarm-station').length == 0?0:$('#alarm-station').is(":checked")?0:100,
               alm_id:$('#low-station').length==0?1:$('#low-station').is(":checked")?1:100,
            },
            bplan:{
               discharge_reason:$('#delayed-station').length==0?3:$('#delayed-station').is(":checked")?3:100,
            }
         };
         return bmd;
      }
      // 格式化查询结果
      function formatAllStation(list) {
         var obj = new Object();
         // GPS坐标转化为百度坐标
         var point = GPS.wgs2bd(list.latitude, list.longitude);
         // 构造结果集
         obj.lng = point.lon;
         obj.lat = point.lat;
         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 createMapDot(map, dotList) {
         // 遍历查询内容生成对应的图标
         for(var i = 0; i<dotList.length; i++) {
            var pt = new BMap.Point(dotList[i].lng, dotList[i].lat);
            var mk = new BMap.Marker(pt);   // 定义marker点
            // 向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.setLabel(home_name);      // 设置label
            mk.addEventListener('click', function(e) {
               var target = e.target;
               //showMapPanel(target, dotList);
               searchPanelInfo(target.point);
            });
            map.addOverlay(mk);         // 添加覆盖物
            mk.hide();
         }
      }
      // 查询机房面板信息
      function searchPanelInfo(param) {
         var point = new BMap.Point(param.lng, param.lat);
         var stationInfo = getStaionByPoint(point);
         if(!stationInfo) {
            alert('面板信息查询失败!');
            return;
         }
         var temp = {
            StationId: stationInfo.sId
         };
         var load = layer.load(1);
         // 查询面板信息
         $.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 0; width:50%; float:left;"><span>蓄电池组告警数目:</span>'+data.code+'</div>'+
                        '<div style="padding:6px 0; width:50%; float:left;"><span>蓄电池组落后数目:</span>'+data.sum+'</div>'+
                        '<div style="clear:both"></div>'+
                        '<div style="padding: 6px 4px">经度:<span class="lng">'+data.data.longitude+'</span>,纬度:<span class="lat">'+data.data.latitude+'</span></div>'+
                        '<div style="padding:6px;"><span>地址:</span>'+data.data.Address+'</div>'+
                        '<br>'+
                        '<div class="t-align-right">'+
                           '<a href="javascript:seenHomeInfo();" class="map-panel-seen-btn mrl8">查看</a>'+
                           '<a href="javascript:editHomeInfo();" class="map-panel-seen-btn mrl8">修改</a>'+
                           '<a href="javascript:showTempMap();" class="map-panel-seen-btn mrl8">重新定位</a>'+
                           '<a href="javascript:delHomeInfo();" class="map-panel-seen-btn mrl8">删除</a>'+
                        '</div>'+
                        '<input type="hidden" class="ipt-hide lng" value="'+data.data.longitude+'">'+
                        '<input type="hidden" class="ipt-hide lat" value="'+data.data.latitude+'">'+
                        '<input type="hidden" class="ipt-hide addr" value="'+data.data.Address+'">'+
                        '<input type="hidden" class="ipt-hide home" value="'+data.data.StationName+'">'+
                        '<input type="hidden" class="ipt-hide province" value="'+data.data.stationName1+'">'+
                        '<input type="hidden" class="ipt-hide county" value="'+data.data.stationName5+'">'+
                        '<input type="hidden" class="ipt-hide sid" value="'+data.data.StationId+'">'+
                        '<input type="hidden" class="ipt-hide city" value="'+data.data.stationName2+'">';
                  var list = {
                     title: data.data.StationName,
                     content: content
                  };
                  showMapPanelByPoint(point, list);
               }
            },
            complete: function() {
               layer.close(load);
            }
         });
      }
      // 修改机房信息面板
      function editHomeInfo() {
         var lng = $('.ipt-hide.lng').val();                     // 获取经度
         var lat = $('.ipt-hide.lat').val();                     // 获取纬度
         var addr = $('.ipt-hide.addr').val();                  // 获取地址
         var homeId = $('.ipt-hide.sid').val();                  // 机房Id
         var homeName = $('.ipt-hide.home').val();               // 机房名称
         var temp = {
            homeId: homeId
            ,homeName: homeName
            ,addr: addr
            ,lng: lng
            ,lat: lat
         }
         // 显示暂无可设站点
         if(homeId == 0) {
            layer.msg(homeName);
            return;
         }
         // 存储值
         $('#homeInfoIframe').data('homeInfo', temp);
         iframePopup = layer.open({
                type: 2
                ,closeBtn: 0
                ,title: false
                ,area: ['100%', '100%']
                ,full: true
                ,anim: 4
                ,content: 'iframe/homeinfo.html'
            });
            layer.full(iframePopup);
      }
      // 删除地图图标
      function delHomeInfo() {
         layer.msg('暂无权限删除!')
      }
      // 显示重新定位机房面板
      function showTempMap() {
         var lng = $('.ipt-hide.lng').val();                     // 获取经度
         var lat = $('.ipt-hide.lat').val();                     // 获取纬度
         var addr = $('.ipt-hide.addr').val();                  // 获取地址
         var homeId = $('.ipt-hide.sid').val();                  // 机房Id
         var homeName = $('.ipt-hide.home').val();               // 机房名称
         console.log(lng+"***"+lat);
         var baiduPoint = GPS.wgs2bd(Number(lat), Number(lng));      // 将原始坐标转化为百度坐标
         console.log(baiduPoint);
         var temp = {
            homeId: homeId
            ,homeName: homeName
            ,addr: addr
            ,lng: lng
            ,lat: lat
         };
         tmpMap.clearOverlays();
            $('#tempMapContainer').addClass('temp-map-container-show');      // 显示面板
            //  坐标集合
            var points = [];
            // 旧机房的位置
         var oldPoint = new BMap.Point(baiduPoint.lon, baiduPoint.lat);
         points.push(oldPoint);
         var oldLabel = new BMap.Label("原始机房位置",{offset:new BMap.Size(20,-10)});
         var oldMk = new BMap.Marker(oldPoint);
         oldMk.disableDragging();      // 设置不可拖动
         tmpMap.addOverlay(oldMk);      // 将覆盖物添加到地图中
             oldMk.setLabel(oldLabel);      // 给覆盖物添加label提示
             // tmpMap.panTo(oldPoint);         // 定位到位置
            var load = layer.load(1);
         geolocation.getCurrentPosition(function(r){
            layer.close(load);
                if(this.getStatus() == BMAP_STATUS_SUCCESS){
                   // 新机房的位置
               points.push(r.point);
                   var mk = new BMap.Marker(r.point);
                   var label = new BMap.Label("新机房位置",{offset:new BMap.Size(20,-10)});
                   mk.enableDragging();      // 设置可拖动
                   tmpMap.addOverlay(mk);         // 将覆盖物添加到地图中
                   mk.setLabel(label);         // 给覆盖物添加label提示
               // 将坐标定位到最新坐标
               tmpMap.setViewport(points);      // 将地图移动到添加的点位置
               // 给maker点绑定点击事件
               mk.addEventListener('click', function(e) {
                  var target = e.target;
                  console.log(target);
                  showChangeMkPanle(target, homeId, homeName, addr);
               });
                }else {
                   layer.msg('定位失败,请检查GPS或网络!');
                }
          });
      }
      // 显示修改面板
      function showChangeMkPanle(target, id, name, addr) {
         var searchInforWin = null;
         var pt = target.point;
         var opts = {
            title  : '设置站点位置',      //标题
            width  : 290,             //宽度
            height : 150,              //高度
            panel  : "panel",         //检索结果面板
            enableAutoPan : true,     //自动平移
            searchTypes   :[
               // BMAPLIB_TAB_SEARCH,   //周边检索
               // BMAPLIB_TAB_TO_HERE,  //到这里去
               // BMAPLIB_TAB_FROM_HERE //从这里出发
            ]
         };
         var content = '<div class="add-panel">'+
                     '<div style="padding: 6px 4px"><span>地址:</span>'+
                     '<span class="addr">'+addr+'</span></div>'+
                     '<div style="padding: 6px 4px">经度:<span class="lng">'+pt.lng+'</span>,纬度:<span class="lat">'+pt.lat+'</span></div>'+
                     '<div style="padding: 6px 4px"><span>设置站点名:</span>'+'<span class="home-name">'+name+'</span></div>'+
                     '<input type="hidden" class="home-id" value="'+id+'">'+
                     '<div style="padding: 6px 4px; margin-top: 20px">'+
                     '<a href="javascript:replaceHomePoint();" class="map-panel-btn">确定</a></div>'
                  +'</div>';
         searchInforWin = new BMapLib.SearchInfoWindow(tmpMap, content, opts);
         searchInforWin.open(pt);
         $('.BMapLib_sendToPhone').hide();
      }
      // 替换最新位置
      function replaceHomePoint() {
         var addr = $('.add-panel .addr').text();
         var lng = $('.add-panel .lng').text();
         var lat = $('.add-panel .lat').text();
         var homeName = $('.add-panel .home-name').text();
         var homeId = $('.add-panel .home-id').val();
         var wgsPoint = GPS.bd2wgs(lat, lng);         // 百度地图坐标转化为GPS
         layer.confirm('是否确定重新定位', {icon:3, title: '提示'}, function(index) {
            layer.close(index);
            var temp = {
               StationId: homeId,         //机房编号
               StationName: homeName,      //机房名称
               Address: addr,            //机房物理信息
               longitude: wgsPoint.lon,   // 经度
               latitude: wgsPoint.lat,      // 纬度
               information:"",            //备注
            };
            // 请求后台
            var json = JSON.stringify(temp);
            //console.info(json);
            $.ajax({
                 type: "post",
                 url: "BattMap_informationAction!replace",
                 async:true,
                 dataType:'text',
                 data:"json="+json,
                 success: function(data){
                  data = eval('('+data+')');
                  var model = eval('('+data.result+')');
                  if(model.code == 1){
                     alert("修改成功");
                     $('#tempMapContainer').removeClass('temp-map-container-show');      // 隐藏面板
                     addNewMapMark(homeName, lng, lat);
                  }else{
                     alert("修改失败");
                  }
                 }
            });
         });
      }
      // 删除map的图标然后添加一个新的图标
      function addNewMapMark(name, lng, lat) {
         delMkByLabel(name);      // 删除mk点
         var pt = new BMap.Point(lng, lat);
         var mk = new BMap.Marker(pt);   // 定义marker点
         // 向mk点添加label
         var home_name = new BMap.Label(name, {offset:new BMap.Size(20,-10)});
         home_name.setStyle({display: 'none', padding: '4px 2px'});   // 设置不可见
         mk.setLabel(home_name);      // 设置label
         mk.addEventListener('click', function(e) {
            var target = e.target;
            //showMapPanel(target, dotList);
            searchPanelInfo(target.point);
         });
         map.addOverlay(mk);         // 添加覆盖物
         // 更新内容
         updateAllStationData(name, lng, lat);
         locationByHomeName(map, name);
      }
      // 关闭重新定位机房面板
      $('#tempMapContainer .temp-map-container-close').click(function() {
         $('#tempMapContainer').removeClass('temp-map-container-show');      // 关闭面板
      });
      // 查看机房信息
      function seenHomeInfo() {
         var lng = $('.ipt-hide.lng').val();                     // 获取经度
         var lat = $('.ipt-hide.lat').val();                     // 获取纬度
         var addr = $('.ipt-hide.addr').val();                  // 获取地址
         var homeId = $('.ipt-hide.sid').val();                  // 机房Id
         var homeName = $('.ipt-hide.home').val();               // 机房名称
         var temp = {
            homeId: homeId
            ,homeName: homeName
            ,addr: addr
            ,lng: lng
            ,lat: lat
         }
         // 显示暂无可设站点
         if(homeId == 0) {
            layer.msg(homeName);
            return;
         }
         // 存储值
         $('#homeInfoIframe').data('homeInfo', temp);
         iframePopup = layer.open({
                type: 2
                ,closeBtn: 0
                ,title: false
                ,area: ['100%', '100%']
                ,full: true
                ,anim: 4
                ,content: 'iframe/seenhomeinfo.html'
            });
            layer.full(iframePopup);
      }
      // 显示地图提示面板
      function showMapPanelByPoint(point, dataList) {
         var searchInforWin = null;
         var opts = {
            title  : dataList.title+'<a href="javascript:loadToHomeInfo();" style="margin-left: 1em;text-decoration:none;cursor:not-allowed">详情>></a>',      //标题未开启
            width  : '290',             //宽度
            height : 150,              //高度
            panel  : "panel",         //检索结果面板
            enableAutoPan : true,     //自动平移
            enableSendToPhone:false,
            searchTypes   :[
               // BMAPLIB_TAB_SEARCH,   //周边检索
               // BMAPLIB_TAB_TO_HERE,  //到这里去
               // BMAPLIB_TAB_FROM_HERE //从这里出发
            ]
         };
         searchInforWin = new BMapLib.SearchInfoWindow(map, dataList.content, opts);
         searchInforWin.open(point);
      }
      // 根据经纬度获取机房的信息
      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 queryInRect(map) {
         var cp = map.getBounds(); // 返回map可视区域,以地理坐标表示
           var sw = cp.getSouthWest(); // 返回矩形区域的西南角
           var ne = cp.getNorthEast(); // 返回矩形区域的东北角
           var mkList = map.getOverlays();
           var zoom = map.getZoom(); //当前缩放级别
           showDotList(mkList, sw, ne, zoom);
      }
      // 获取dots的集合
      function showDotList(mkList, sw, ne, zoom) {
         var rs = [];
            swlng=sw.lng,
               swlat=sw.lat,
               nelng=ne.lng,
               nelat=ne.lat;
               var maxLng = sw.lng>ne.lng?sw.lng:ne.lng;
               var minLng = sw.lng<ne.lng?sw.lng:ne.lng;
               var maxLat = sw.lat>ne.lat?sw.lat:ne.lat;
               var minLat = sw.lat<ne.lat?sw.lat:ne.lat;
               for(var i=0; i<mkList.length; i++) {
                  var mk = mkList[i];
                  var point = mk.getPosition?mk.getPosition():null;
                  if(point) {
                     var lat = point.lat;
                     var lng = point.lng;
                     // 判断当前的maker点是否显示
                     if(lng<maxLng && lng>minLng && lat<maxLat && lat>minLat && zoom>10) {
                        // console.log(123)
                        mk.show();
                     }else {
                        mk.hide();
                     }
                  }
               }
               return rs;
      }
      // 根据后台数据显示地图的中心坐标
      centerMapByPoint(map);
      function centerMapByPoint(map) {
         // 请求后台根据数据更改地图中心坐标
         $.ajax({
              type: "post",
              url: "Positiomap_usrAction!serchByCondition",
              async:true,
              dataType:'text',
              data:null,
              success: function(rs){
                 rs = eval('('+rs+')');
                 var model =  eval('('+rs.result+')');
                 if(model.code == 1) {
                    var data = model.data[0];
                    var _point = new BMap.Point(data.map_longitude,data.map_latitude);
                    map.centerAndZoom(_point, data.map_level);   // 用城市名设置地图中心点
                 }
                 searchStation();
                }
         });
      }
      // 机房定位面板
      $('#homeLocation').on('click', function() {
         var homeInfo = $(this).data('homeInfo');
         locationByHomeName(map, homeInfo.home);
      });
      // 根据机房名称定位机房
      function locationByHomeName(map, name) {
         var mkList = map.getOverlays();
         // console.log(mkList);
         for(var i=0; i<mkList.length; i++) {
            var mk = mkList[i];
            var _label = mk.getLabel?mk.getLabel()?mk.getLabel().content:'':'';
            // 判断机房名称
            if(_label == name) {
               var point = mk.getPosition();
               map.panTo(point);      // 将地图移动到添加的点位置
               map.setZoom(20);         // 设置地图的缩放等级
               searchPanelInfo(point);
            }
         }
      }
        //拦截安卓回退按钮
        history.pushState(null, null, location.href);
        window.addEventListener('popstate', function(event) {
            history.pushState(null, null, location.href );
            //此处加入回退时你要执行的代码
        });
        // 更新所有机房的信息
        function updateAllStationData(name, lng, lat) {
           console.log(allStation);
           for(var i=0; i<allStation.length; i++) {
              var _data = allStation[i];
              if(_data.title == name) {
                 _data.lng = lng;
                 _data.lat = lat;
              }
           }
        }
    </script>
</body>
</html>