| | |
| | |
|
| | | <title><s:text name="HomePage"></s:text></title>
|
| | | <meta name="renderer" content="webkit">
|
| | | <meta name="viewport" content="initial-scale=1.0, user-scalable=no" />
|
| | | <!-- 导入百度地图API -->
|
| | | <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>
|
| | | <link rel="stylesheet" href="http://api.map.baidu.com/library/SearchInfoWindow/1.5/src/SearchInfoWindow_min.css" />
|
| | | <script type="text/javascript" src="js/AreaRestriction_min.js"></script>
|
| | | <link href="css/basic.css" type="text/css" rel="stylesheet" />
|
| | | <link href="css/common.css" type="text/css" rel="stylesheet" />
|
| | | <link href="css/index_layout.css" type="text/css" rel="stylesheet" />
|
| | |
| | | <link rel="stylesheet" href="src/css/layui.css">
|
| | | <link rel="stylesheet" href="pages/css/mylayui.css">
|
| | | <style type="text/css">
|
| | | #map .explain-header:hover {
|
| | | .explain-header:hover {
|
| | | cursor: pointer;
|
| | | background-color: #84ABFA !important;
|
| | | color: #D6D1D1
|
| | |
| | | }
|
| | | </style>
|
| | | <script type="text/javascript" src="js/jquery-1.8.3.js"></script>
|
| | | |
| | | <script type="text/javascript" src="js/echarts.js"></script>
|
| | | <script type="text/javascript" src="js/createTab.js"></script>
|
| | |
|
| | |
| | | <jsp:include page="nav.jsp" flush="true"/>
|
| | | <!--导航结束-->
|
| | | <div id="content">
|
| | | <!-- <div id="mapStatusOpts" class="map-status-container">
|
| | | <div class="layui-form layui-form-pane">
|
| | | <label class="layui-form-label">机房类型</label>
|
| | | <div class="layui-input-inline">
|
| | | <select name="warnType" id="warnType">
|
| | | <option value="0">全部</option>
|
| | | <option value="1">落后</option>
|
| | | <option value="2">告警</option>
|
| | | <option value="3">延时</option>
|
| | | <option value="4">正常</option>
|
| | | </select>
|
| | | |
| | | <div class="nav-map small">
|
| | | <!-- 地图内容筛选 -->
|
| | | <div class="map-info-panel-left w300">
|
| | | <div class="map-info-panel-content">
|
| | | <div class="map-info" id="showMapInfoDetail">
|
| | | <span>地图工具</span>
|
| | | <span class="map-info-btn-icon" title="详情"><i class="fa fa-angle-double-down"></i></span>
|
| | | </div>
|
| | | <div class="map-info-detail">
|
| | | <div class="layui-collapse" lay-filter="test" lay-accordion="">
|
| | | <div class="layui-colla-item">
|
| | | <h2 class="layui-colla-title">定位机房</h2>
|
| | | <div class="layui-colla-content layui-show">
|
| | | <table>
|
| | | <tbody>
|
| | | <tr>
|
| | | <td class="w5em alg-c f-bold">机房名称:</td>
|
| | | <td><input type="text" id="mapToolSearch"></td>
|
| | | </tr>
|
| | | <tr>
|
| | | <td colspan="2" class="alg-r btn-container">
|
| | | <button type="button" value="搜索" id="mapToolSearchBtn" class="mrr8">搜索</button>
|
| | | </td>
|
| | | </tr>
|
| | | </tbody>
|
| | | </table>
|
| | | </div>
|
| | | </div>
|
| | | <div class="layui-colla-item" id="permitAddHome">
|
| | | <h2 class="layui-colla-title">添加机房</h2>
|
| | | <div class="layui-colla-content">
|
| | | <table id="mapToolAddHome">
|
| | | <tbody>
|
| | | <tr>
|
| | | <td class="w4em alg-c f-bold">经度:</td>
|
| | | <td><input type="text" class="lng"></td>
|
| | | </tr>
|
| | | <tr>
|
| | | <td class="w4em alg-c f-bold">纬度:</td>
|
| | | <td><input type="text" class="lat"></td>
|
| | | </tr>
|
| | | <tr>
|
| | | <td class="w4em alg-c f-bold">类型:</td>
|
| | | <td>
|
| | | <input type="radio" class="pointStyle" name="pointStyle" value="0" checked><span class="mrr8">GPS</span>
|
| | | <input type="radio" class="pointStyle" name="pointStyle" value="1"><span class="mrr8">百度</span>
|
| | | <input type="radio" class="pointStyle" name="pointStyle" value="2"><span class="mrr8">腾讯/高德</span>
|
| | | </td>
|
| | | </tr>
|
| | | <tr>
|
| | | <td colspan="2" class="alg-r btn-container">
|
| | | <button type="button" value="添加" id="mapToolAddHomeBtn" class="mrr8">添加</button>
|
| | | </td>
|
| | | </tr>
|
| | | </tbody>
|
| | | </table>
|
| | | </div>
|
| | | </div>
|
| | | </div>
|
| | | </div>
|
| | | </div>
|
| | | </div>
|
| | | </div> -->
|
| | | <div class="nav-map small">
|
| | | <!-- 电池分布图 -->
|
| | | <div class="china-map" id="map">
|
| | | <div class="img-change" style="display:none;">
|
| | |
| | | </div>
|
| | | </div>
|
| | | <input type="hidden" id="user_logo" value="<%=user_logo %>">
|
| | | <div id="homeInfoIframeData"></div>
|
| | | <!--清除浮动-->
|
| | | <div class="clear"></div>
|
| | | <script type="text/javascript" src="pages/js/base.js"></script>
|
| | | <script type="text/javascript" src="pages/js/common.js"></script>
|
| | | <script type="text/javascript" src="pages/js/pages/siderbar.js"></script>
|
| | | <script type="text/javascript" src="pages/js/pages/index-common.js"></script>
|
| | | <script type="text/javascript" src="pages/js/GPS.js"></script>
|
| | | <script type="text/javascript" src="js/panel.js"></script>
|
| | | <script type="text/javascript" src="js/search.js"></script>
|
| | | <script type="text/javascript" src="js/changePinYin.js"></script>
|
| | |
| | | <script type="text/javascript" src="js/myConfirm.js"></script>
|
| | | <script type="text/javascript" src="js/loading.js"></script>
|
| | | <script type="text/javascript" src="src/layui.js"></script>
|
| | | <script type="text/javascript" src="src/layui.all.js"></script>
|
| | | <script type="text/javascript" src="pages/js/pages/homeInfo.js"></script>
|
| | | <script type="text/javascript">
|
| | | var permits;
|
| | | <% Object obj=session.getAttribute("permits");
|
| | |
| | | var search;
|
| | | var warnOpts;
|
| | | //console.info(BMap);
|
| | | var mapDefults = new Image().src = 'image/mapDefault.gif';
|
| | | var mapImages = getMapImageUrl();
|
| | | // 定义省-市资源内容
|
| | | var area = [
|
| | |
| | | });
|
| | |
|
| | | $(function() { // 显示和隐藏图标说明
|
| | | $('#map').on('click', '.explain-header', function() {
|
| | | $('#map .explain-list').fadeToggle();
|
| | | $('.nav-map').on('click', '.explain-header', function() {
|
| | | $('.explain-list').fadeToggle();
|
| | | });
|
| | |
|
| | | $('#map').on('dblclick', '.explain-header', function() {
|
| | | return false;
|
| | | });
|
| | | |
| | | $('.nav-map').on('click', '.explain-list input', function() {
|
| | | setMapImgStyles();
|
| | | });
|
| | | });
|
| | |
|
| | |
| | | centerMapByPoint(map); // 根据当前用户设定的位置显示中心点
|
| | | map.enableScrollWheelZoom();
|
| | | map.disableDoubleClickZoom();
|
| | | map.setMapStyle({style: 'grayscale'}); // 设置地图的风格
|
| | | //map.setMapStyle({style: 'grayscale'}); // 设置地图的风格
|
| | | // 添加地图类型控件
|
| | | map.addControl(new BMap.MapTypeControl());
|
| | | // 给地图添加工具条(地图-卫星-三维)和比例尺控件
|
| | |
| | | var menu = new BMap.ContextMenu();
|
| | | var txtMenuItem = [
|
| | | {
|
| | | text: '设置中心点',
|
| | | callback: function(e) {
|
| | | myConfirm.show({
|
| | | title: '设置地图默认显示位置',
|
| | | content: '是否确认修改地图默认中心坐标',
|
| | | enfun:updateMapCenterPoint,
|
| | | enparams:[e]
|
| | | });
|
| | | }
|
| | | },
|
| | | {
|
| | | text: '搜索地址',
|
| | | callback: function(e) {
|
| | | search.showSearch();
|
| | |
| | | smallMap();
|
| | | }
|
| | | },
|
| | | |
| | | {
|
| | | text: '设置中心点',
|
| | | callback: function(e) {
|
| | | myConfirm.show({
|
| | | title: '设置地图默认显示位置',
|
| | | content: '是否确认修改地图默认中心坐标',
|
| | | enfun:updateMapCenterPoint,
|
| | | enparams:[e]
|
| | | });
|
| | | text: '返回中心点',
|
| | | callback: function(e){
|
| | | centerMapByPoint(map); // 根据当前用户设定的位置显示中心点
|
| | | }
|
| | | }
|
| | | ];
|
| | |
| | | });
|
| | |
|
| | | $(window).resize(function() {
|
| | | console.log(123);
|
| | | getMapHt();
|
| | | });
|
| | | // 改变div的大小
|
| | |
| | |
|
| | | changeMapImgDesc(iconExplain, 'normal');
|
| | |
|
| | | mapEle.prepend(iconExplain);
|
| | | mapEle.parent().append(iconExplain);
|
| | | |
| | | // 设置地图图标种类
|
| | | setMapImgStyles();
|
| | | }
|
| | | |
| | | // 切换地图图标说明
|
| | | function changeMapImgDesc(iconExplain, type) {
|
| | | iconExplain.find('.explain-list').remove();
|
| | |
| | | function mapImgDescNormal(iconExplain) {
|
| | | // 机房落后
|
| | | var iconList = $('<div class="explain-list" style="padding: 4px 6px; border-bottom: 1px slid #ccc; display:block"></div>');
|
| | | var icon = $('<img src="'+mapImages.behind+'" style="float:left">');
|
| | | var span = $('<span style="line-height: 30px; text-align:center; margin-left: 4px">电池组落后机房</span>');
|
| | | iconList.append(icon);
|
| | | var input = $('<input type="checkbox" data-img="item-behind" checked="checked">');
|
| | | var icon = $('<img src="'+mapImages.behind+'">');
|
| | | var span = $('<span>电池组落后机房</span>');
|
| | | iconList.append(input);
|
| | | iconList.append(span);
|
| | | iconList.append(icon);
|
| | | iconExplain.append(iconList);
|
| | |
|
| | | // 机房告警
|
| | | var iconList = $('<div class="explain-list" style="padding: 4px 6px; border-bottom: 1px slid #ccc; display:block"></div>');
|
| | | var icon = $('<img src="'+mapImages.warn+'" style="float:left;">');
|
| | | var span = $('<span style="line-height: 30px; text-align:center; margin-left: 4px">电池组告警机房</span>');
|
| | | iconList.append(icon);
|
| | | var input = $('<input type="checkbox" data-img="item-warn" checked="checked">');
|
| | | var icon = $('<img src="'+mapImages.warn+'">');
|
| | | var span = $('<span>电池组告警机房</span>');
|
| | | iconList.append(input);
|
| | | iconList.append(span);
|
| | | iconList.append(icon);
|
| | | iconList.append('<div class="clear"></div>');
|
| | | iconExplain.append(iconList);
|
| | |
|
| | | |
| | | |
| | | // 机房延时
|
| | | var iconList = $('<div class="explain-list" style="padding: 4px 6px; border-bottom: 1px slid #ccc; display:block"></div>');
|
| | | var icon = $('<img src="'+mapImages.timeout+'" style="float:left">');
|
| | | var span = $('<span style="line-height: 30px; text-align:center; margin-left: 4px">电池组放电延时机房</span>');
|
| | | iconList.append(icon);
|
| | | var input = $('<input type="checkbox" data-img="item-timeout" checked="checked">');
|
| | | var icon = $('<img src="'+mapImages.timeout+'">');
|
| | | var span = $('<span>电池组放电延时机房</span>');
|
| | | iconList.append(input);
|
| | | iconList.append(span);
|
| | | iconList.append(icon);
|
| | | iconExplain.append(iconList);
|
| | | |
| | | // 停电机房
|
| | | var iconList = $('<div class="explain-list" style="padding: 4px 6px; border-bottom: 1px slid #ccc; display:block"></div>');
|
| | | var input = $('<input type="checkbox" data-img="item-poff" checked="checked">');
|
| | | var icon = $('<img src="'+mapImages.powercut+'">');
|
| | | var span = $('<span>停电机房</span>');
|
| | | iconList.append(input);
|
| | | iconList.append(span);
|
| | | iconList.append(icon);
|
| | | iconExplain.append(iconList);
|
| | |
|
| | | // 正常机房
|
| | | var iconList = $('<div class="explain-list" style="padding: 4px 6px; border-bottom: 1px slid #ccc; display:block"></div>');
|
| | | var icon = $('<img src="'+mapImages.normal+'" style="float:left">');
|
| | | var span = $('<span style="line-height: 30px; text-align:center; margin-left: 4px">正常机房</span>');
|
| | | iconList.append(icon);
|
| | | var input = $('<input type="checkbox" data-img="item-normal" checked="checked">');
|
| | | var icon = $('<img src="'+mapImages.normal+'">');
|
| | | var span = $('<span>正常机房</span>');
|
| | | iconList.append(input);
|
| | | iconList.append(span);
|
| | | iconList.append(icon);
|
| | | iconExplain.append(iconList);
|
| | | }
|
| | |
|
| | |
| | | var iconList = $('<div class="explain-list" style="padding: 4px 6px; border-bottom: 1px slid #ccc; display:block"></div>');
|
| | | var icon = $('<img src="'+mapImages.nuclear+'" style="float:left">');
|
| | | var span = $('<span style="line-height: 30px; text-align:center; margin-left: 4px">核容/停电放电</span>');
|
| | | iconList.append(icon);
|
| | | iconList.append(span);
|
| | | iconList.append(icon);
|
| | | iconExplain.append(iconList);
|
| | |
|
| | | // 告警
|
| | | var iconList = $('<div class="explain-list" style="padding: 4px 6px; border-bottom: 1px slid #ccc; display:block"></div>');
|
| | | var icon = $('<img src="'+mapImages.devalarm+'" style="float:left;">');
|
| | | var span = $('<span style="line-height: 30px; text-align:center; margin-left: 4px">61850设备告警</span>');
|
| | | iconList.append(icon);
|
| | | iconList.append(span);
|
| | | iconList.append(icon);
|
| | | iconList.append('<div class="clear"></div>');
|
| | | iconExplain.append(iconList);
|
| | |
|
| | |
| | | var iconList = $('<div class="explain-list" style="padding: 4px 6px; border-bottom: 1px slid #ccc; display:block"></div>');
|
| | | var icon = $('<img src="'+mapImages.precharge+'" style="float:left">');
|
| | | var span = $('<span style="line-height: 30px; text-align:center; margin-left: 4px">61850预充电</span>');
|
| | | iconList.append(icon);
|
| | | iconList.append(span);
|
| | | iconList.append(icon);
|
| | | iconExplain.append(iconList);
|
| | |
|
| | | // 在线浮充
|
| | | var iconList = $('<div class="explain-list" style="padding: 4px 6px; border-bottom: 1px slid #ccc; display:block"></div>');
|
| | | var icon = $('<img src="'+mapImages.float+'" style="float:left">');
|
| | | var span = $('<span style="line-height: 30px; text-align:center; margin-left: 4px">61850在线浮充</span>');
|
| | | iconList.append(icon);
|
| | | iconList.append(span);
|
| | | iconList.append(icon);
|
| | | iconExplain.append(iconList);
|
| | | }
|
| | |
|
| | |
| | | }
|
| | |
|
| | | // 生成地图图标
|
| | | function createMapDot(map, dotList) {
|
| | | function createMapDot(map, dotList, isTop) {
|
| | | // 清空覆盖物和对应的mk点
|
| | | mkList = [];
|
| | | |
| | | // 遍历查询内容生成对应的图标
|
| | | for(var i = 0; i < dotList.length; i++) {
|
| | | for(var i = 0; i<dotList.length; i++) {
|
| | | var isShow = checkMapImgStyle(dotList[i].msg);
|
| | | 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点
|
| | | |
| | | // 删除指定的点(该点会在本函数后面重新创建)
|
| | | deletePoint(map, dotList[i].title);
|
| | |
|
| | |
| | | //showMapPanel(target, dotList);
|
| | | searchPanelInfo(target);
|
| | | });
|
| | | |
| | | if(isTop) {
|
| | | mk.setTop(true);
|
| | | }
|
| | | |
| | | mkList.push(mk);
|
| | | // 向地图添加覆盖物
|
| | | map.addOverlay(mk);
|
| | | if(isShow) {
|
| | | map.addOverlay(mk);
|
| | | }
|
| | | }
|
| | | }
|
| | | |
| | | // 更新地图图标
|
| | | function updateMapDotIcon(map, dotList, isTop) {
|
| | | // 遍历查询内容生成对应的图标
|
| | | for(var i = 0; i<dotList.length; i++) {
|
| | | var isShow = checkMapImgStyle(dotList[i].msg);
|
| | | var dotIcon = new BMap.Icon(getMapStateImg(mapImages, dotList[i].msg), new BMap.Size(36, 30)); // 设置图片
|
| | | var mk = getMapMarker(map, dotList[i].title);
|
| | | if(mk) {
|
| | | // 设置地图图标
|
| | | mk.setIcon(dotIcon);
|
| | | |
| | | // 将已经安装的显示在顶部
|
| | | if(isTop) {
|
| | | mk.setTop(true);
|
| | | }
|
| | | |
| | | // 隐藏marker点
|
| | | isShow?mk.show():mk.hide();
|
| | | }
|
| | | }
|
| | | }
|
| | | |
| | | // 获取地图图标
|
| | | function getMapMarker(map, msg) {
|
| | | var rs = false;
|
| | | var allOverlay = map.getOverlays();
|
| | | for (var i = 0; i < allOverlay.length; i++){
|
| | | try{
|
| | | if(allOverlay[i].getLabel().content == msg){
|
| | | rs = allOverlay[i];
|
| | | return rs;
|
| | | }
|
| | | }catch(e) {
|
| | | |
| | | }
|
| | | |
| | | }
|
| | | |
| | | return rs;
|
| | | |
| | | }
|
| | |
|
| | | // 删除地图上的指定点
|
| | | function deletePoint(map, msg){
|
| | | var allOverlay = map.getOverlays();
|
| | | for (var i = 0; i < allOverlay.length -1; i++){
|
| | | for (var i = 0; i < allOverlay.length; i++){
|
| | | try{
|
| | | if(allOverlay[i].getLabel().content == msg){
|
| | | map.removeOverlay(allOverlay[i]);
|
| | |
| | | }
|
| | | }
|
| | |
|
| | | // 获取地图需要显示图标的类型
|
| | | var magImgStyles = [];
|
| | | |
| | | function setMapImgStyles() {
|
| | | var ipts = $('#mapImgDesc .explain-list input');
|
| | | magImgStyles = [];
|
| | | ipts.each(function(i) {
|
| | | var imgStyle = $(this).data('img');
|
| | | if($(this).is(':checked')) {
|
| | | magImgStyles.push(imgStyle);
|
| | | }
|
| | | });
|
| | | magImgStyles.push('');
|
| | | // 根据当前内容更新地图图标
|
| | | //searchStation();
|
| | | }
|
| | | |
| | | // 检测当前图标是否符合
|
| | | function checkMapImgStyle(imgStyle) {
|
| | | var isShow = false;
|
| | | for(var i=0; i<magImgStyles.length; i++) {
|
| | | if(magImgStyles[i] == imgStyle) {
|
| | | isShow = true;
|
| | | break;
|
| | | }
|
| | | }
|
| | | |
| | | return isShow;
|
| | | }
|
| | | // 创建告警点
|
| | | function createWarnDot(map, warnDotList) {
|
| | | for(var i = 0; i < warnDotList.length; i++) {
|
| | |
| | | function getAddHomeInfo() {
|
| | | var lng = $('.add-panel .lng').text(); // 获取经度
|
| | | var lat = $('.add-panel .lat').text(); // 获取纬度
|
| | | var wgsPoint = GPS.bd2wgs(lat, lng); // 百度地图坐标转化为GPS
|
| | | |
| | | var addr = $('.add-panel .addr').text(); // 获取地址
|
| | | var homeName = $('.add-panel select option:selected').text(); // 机房名称
|
| | | var homeId = $('.add-panel select option:selected').val(); // 机房ID
|
| | |
| | | StationId:homeId, //机房编号
|
| | | StationName:homeName, //机房名称
|
| | | Address:addr, //机房物理信息
|
| | | longitude:lng, // 经度
|
| | | latitude:lat, // 纬度
|
| | | longitude: wgsPoint.lon, // 经度
|
| | | latitude: wgsPoint.lat, // 纬度
|
| | | information:"", //备注
|
| | | };
|
| | | var json = JSON.stringify(temp);
|
| | |
| | | // 根据可视范围显示坐标点
|
| | | var dots = [];
|
| | | var currMarkers = {};
|
| | | |
| | | // 初始化
|
| | | function init() {
|
| | | dots = [];
|
| | | currMarkers = {};
|
| | | }
|
| | | // init函数绑定到GLOBAL.BMap下
|
| | | gl.BMap.init = init;
|
| | | |
| | | |
| | | // 查询当前范围内容的图标
|
| | | function queryInRect(map, callback) {
|
| | | var cp = map.getBounds(); // 返回map可视区域,以地理坐标表示
|
| | |
| | |
|
| | | var allStation = [];
|
| | | var mapPages = {
|
| | | pageSize:1000, // 每页的行数
|
| | | pageSize:50, // 每页的行数
|
| | | 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 = [];
|
| | | behindCellList = [];
|
| | | var init = bmap.init;
|
| | | //init();
|
| | | // 查询后台
|
| | | $.ajax({
|
| | | type: "post",
|
| | | //url: "BattMap_informationAction!searchAll",
|
| | |
| | | // 设置分页信息
|
| | | mapPages.pageAll = list.length;
|
| | | setMapPages();
|
| | | |
| | | //console.log(123);
|
| | | // 遍历查询结果
|
| | | for(var i=0;i<list.length;i++){
|
| | | var _list = list[i];
|
| | | allStation.push(formatAllStation(_list));
|
| | | }
|
| | | |
| | | // 显示区域的图标
|
| | | bmap.setDots(allStation);
|
| | | bmap.queryInRect(map, createMapDot);
|
| | | updateStation();
|
| | | |
| | | // 更新小工具搜索机房功能
|
| | | updateSearchSource(allStation);
|
| | | |
| | | // 是否第一次执行
|
| | | if(setRect) {
|
| | | map.addEventListener("moveend", bmap.queryInRect.bind({},map, createMapDot)); // 拖动
|
| | | map.addEventListener("zoomend", bmap.queryInRect.bind({},map, createMapDot)); // 缩放
|
| | | updateStation();
|
| | | |
| | | }
|
| | | }
|
| | | }
|
| | |
| | | // 格式化查询结果
|
| | | function formatAllStation(list) {
|
| | | var obj = new Object();
|
| | | // GPS坐标转化为百度坐标
|
| | | var point = GPS.wgs2bd(list.latitude, list.longitude);
|
| | | // 构造结果集
|
| | | obj.lng = list.longitude;
|
| | | obj.lat = list.latitude;
|
| | | obj.lng = point.lon;
|
| | | obj.lat = point.lat;
|
| | | obj.title = list.StationName;
|
| | | obj.sId = list.StationId;
|
| | | obj.fbsId = list.FBSDeviceId;
|
| | |
| | | data: "json="+JSON.stringify(mapPages),
|
| | | success: function(result) {
|
| | | var data = JSON.parse(result.result);
|
| | | console.log(data);
|
| | | //console.log(data);
|
| | | for(var i=0; i<data.length; i++) {
|
| | | var _data = data[i];
|
| | | var _list = formatUpdateStation(_data);
|
| | |
| | | }
|
| | | }
|
| | |
|
| | | createMapDot(map, updateStationData);
|
| | | |
| | | updateMapDotIcon(map, updateStationData, true);
|
| | | // 更新分页信息
|
| | | mapPages.pageCurr++;
|
| | | if(mapPages.pageCurr>mapPages.pageNum) {
|
| | | if(mapPages.pageCurr>mapPages.pageNum || updateStationData.length<mapPages.pageSize) {
|
| | | mapPages.pageCurr=1;
|
| | | mapPages.pageNew=false;
|
| | | }
|
| | |
|
| | | setTimeout(updateStation, 4000);
|
| | | |
| | | }
|
| | | });
|
| | | }
|
| | |
| | | function formatUpdateStation(list) {
|
| | | var obj = {};
|
| | | var data = list.data;
|
| | | //console.log(list);
|
| | | // GPS坐标转化为百度坐标
|
| | | var point = GPS.wgs2bd(data.latitude, data.longitude);
|
| | | // 构造结果集
|
| | | obj.lng = data.longitude;
|
| | | obj.lat = data.latitude;
|
| | | obj.lng = point.lon;
|
| | | obj.lat = point.lat;
|
| | | obj.title = data.StationName;
|
| | | obj.sId = data.StationId;
|
| | | obj.fbsId = data.FBSDeviceId;
|
| | |
| | | return obj;
|
| | | }
|
| | |
|
| | | // 根据allStation的值去更新内容
|
| | | function updateMapByAllStation() {
|
| | | var bmap = GLOBAL.BMap; // BMap的命名空间
|
| | | var init = bmap.init; // 初始化内容
|
| | | |
| | | // 初始化地图内容
|
| | | init();
|
| | | |
| | | // 显示区域的图标
|
| | | bmap.setDots(allStation);
|
| | | bmap.queryInRect(map, createMapDot);
|
| | | }
|
| | | |
| | | // 查询机房面板信息
|
| | | function searchPanelInfo(data) {
|
| | | var point = data.point;
|
| | | var point = new BMap.Point(data.point.lng, data.point.lat);
|
| | | var stationInfo = getStaionByPoint(point);
|
| | | if(!stationInfo) {
|
| | | alert('面板信息查询失败!');
|
| | |
| | | var rs = JSON.parse(result.result);
|
| | | if(rs.length != 0) {
|
| | | var data = rs[0];
|
| | | console.info(data);
|
| | | //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"><a href="javascript:loadToRealTime();">实时数据</a><a style="margin-left: 20px" href="javascript:loadToOldTime();">历史数据</a>'+
|
| | | '<a style="margin-left: 20px" href="javascript:showHomeInfo('+data.data.StationId+');">基站信息</a></div>'+
|
| | | '<div style="padding:6px;"><span>地址:</span>'+data.data.Address+'</div>'+
|
| | | '<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 = {
|
| | |
| | | var home = $('.ipt-hide.home').val();
|
| | | var province = $('.ipt-hide.province').val();
|
| | | var city = $('.ipt-hide.city').val();
|
| | | window.open('control.jsp?province='+province+'&city='+city+'&home='+home);
|
| | | var county = $('.ipt-hide.county').val();
|
| | | var url = skipUrl('control.jsp',province,city,county,home);
|
| | | window.open(url);
|
| | | //window.open('control.jsp?province='+province+'&city='+city+'&home='+home);
|
| | | }
|
| | |
|
| | | // 定位到历史数据页面
|
| | |
| | | var home = $('.ipt-hide.home').val();
|
| | | var province = $('.ipt-hide.province').val();
|
| | | var city = $('.ipt-hide.city').val();
|
| | | window.open('charge-test.jsp?province='+province+'&city='+city+'&home='+home);
|
| | | var county = $('.ipt-hide.county').val();
|
| | | var url = skipUrl('charge-test.jsp',province,city,county,home);
|
| | | window.open(url);
|
| | | //window.open('charge-test.jsp?province='+province+'&city='+city+'&home='+home);
|
| | | }
|
| | |
|
| | | //定位到告警页面
|
| | | function loadToWarnPage() {
|
| | | var home = $('.ipt-hide.home').val();
|
| | | var province = $('.ipt-hide.province').val();
|
| | | var city = $('.ipt-hide.city').val();
|
| | | var county = $('.ipt-hide.county').val();
|
| | | var url = skipUrl('elewarn.jsp',province,city,county,home);
|
| | | window.open(url);
|
| | | // console.info($('.ipt-hide').val());
|
| | | var stationId = $('.ipt-hide').eq(1).val();
|
| | | window.open('elewarn.jsp?stationId='+stationId);
|
| | | //var stationId = $('.ipt-hide').eq(1).val();
|
| | | //window.open('elewarn.jsp?stationId='+stationId);
|
| | | }
|
| | |
|
| | | // 定位到落后单体页面
|
| | | function loadToBehindPage() {
|
| | | var home = $('.ipt-hide.home').val();
|
| | | var province = $('.ipt-hide.province').val();
|
| | | var city = $('.ipt-hide.city').val();
|
| | | var county = $('.ipt-hide.county').val();
|
| | | var url = skipUrl('taskplan.jsp',province,city,county,home);
|
| | | window.open(url);
|
| | | // console.info($('.ipt-hide').val());
|
| | | var stationId = $('.ipt-hide').eq(1).val();
|
| | | window.open('taskplan.jsp?stationId='+stationId);
|
| | | //var stationId = $('.ipt-hide').eq(1).val();
|
| | | //window.open('taskplan.jsp?stationId='+stationId);
|
| | | }
|
| | |
|
| | | // 定位到放电延时页面
|
| | | function loadToDischargeDelay() {
|
| | | var stationId = $('.ipt-hide').eq(1).val();
|
| | | window.open('dischargeplan.jsp?stationId='+stationId);
|
| | | var home = $('.ipt-hide.home').val();
|
| | | var province = $('.ipt-hide.province').val();
|
| | | var city = $('.ipt-hide.city').val();
|
| | | var county = $('.ipt-hide.county').val();
|
| | | var url = skipUrl('dischargeplan.jsp',province,city,county,home);
|
| | | window.open(url);
|
| | | |
| | | //var stationId = $('.ipt-hide').eq(1).val();
|
| | | //window.open('dischargeplan.jsp?stationId='+stationId);
|
| | | }
|
| | |
|
| | | // 定位到机房详细信息页面
|
| | |
| | | rs.devalarm = "User_ChartAction!serchByInfo?json={Chart_file:'"+user_logo+"',Chart_name:chart_dev_alarm}"; // 设备告警
|
| | | rs.precharge = "User_ChartAction!serchByInfo?json={Chart_file:'"+user_logo+"',Chart_name:chart_pre_charge}"; // 预充电
|
| | | rs.float = "User_ChartAction!serchByInfo?json={Chart_file:'"+user_logo+"',Chart_name:chart_online_charge}"; // 浮充
|
| | | rs.powercut = "User_ChartAction!serchByInfo?json={Chart_file:'"+user_logo+"',Chart_name:chart_poff}";
|
| | | rs.defaults = "User_ChartAction!serchByInfo?json={Chart_file:'"+user_logo+"',Chart_name:chart_install}";
|
| | | return rs;
|
| | | }
|
| | | /* $(function(){
|
| | | setTimeout(function(){
|
| | | var _script = document.createElement('script'); |
| | | _script.type = "text/javascript"; |
| | | _key = "55UbnVOR7XovezZC4jFvTqNDPAamsuoo";//百度地图可以申请到 |
| | | _script.src = "http://api.map.baidu.com/location/ip?ak="+_key+"&coor=bd09ll&ip=&callback=f";//拼接URL |
| | | document.head.appendChild(_script); |
| | | |
| | | }, 2000);
|
| | | |
| | | });
|
| | | var pointX; |
| | | var pointY; |
| | | function f(data){ |
| | | pointX = data.content.point.x; |
| | | pointY = data.content.point.y; |
| | | console.info("你所在城市:"+data.content.address); |
| | | console.info("你城市经度:"+pointX); |
| | | console.info("你的城市纬度:"+pointY);
|
| | | var point = new BMap.Point(pointX, pointY);
|
| | | map.centerAndZoom(point, 10); // 用城市名设置地图中心点 |
| | | } */
|
| | | |
| | | |
| | | /* $(document).ready(function(){
|
| | | //页面加载时查询维护区中的枢纽类型
|
| | | $.post("User_battgroup_baojigroup_battgroupAction!serchStationName1InGroup",null,function(data){
|
| | | data=data.result;
|
| | | data=eval("("+data+")");
|
| | | //console.info(data);
|
| | | if(data.code==1 && data.data.length>0){
|
| | | var $select = $("#station_name1");
|
| | | $select.text('');
|
| | | for(var i=0;i<=data.data.length;i++){
|
| | | $option=$("<option></option>");
|
| | | if(i==0){
|
| | | $option.html("<s:text name='All'/>(<s:text name='Common'/>"+data.data.length+"<s:text name='Species'/>)"); |
| | | $option.attr("value", ""); |
| | | }else{
|
| | | $option.text(data.data[i-1]);
|
| | | $option.attr("value",data.data[i-1]); |
| | | } |
| | | $select.append($option);
|
| | | }
|
| | | }else{
|
| | | $("#station_name1").text('').html('<option>暂无可测维护区</option>');
|
| | | }
|
| | | findStationNamebyStationname1(); |
| | | });
|
| | | });
|
| | |
|
| | | //当维护区的值变换时更新机房站点
|
| | | $('#station_name1').change(function(){
|
| | | findStationNamebyStationname1();
|
| | | });
|
| | | |
| | | //根据维护区查询站点
|
| | | function findStationNamebyStationname1(){
|
| | | var user = {
|
| | | UNote:$("#station_name1 option:selected").val()
|
| | | };
|
| | | //var selectvalue=$("#station_name1 option:selected").val();
|
| | | //alert(selectvalue);
|
| | | $.post("User_battgroup_baojigroup_battgroupAction!serchStationNameInGroup","json="+JSON.stringify(user),function(data){
|
| | | //console.info(data);
|
| | | data=data.result;
|
| | | data=eval("("+data+")");
|
| | | if(data.code==1 && data.data.length>0){
|
| | | var $select = $("#station_name");
|
| | | $select.text('');
|
| | | for(var i=0;i<=data.data.length;i++){
|
| | | var $option=$("<option></option>");
|
| | | if(i==0){
|
| | | $option.html("<s:text name='All'/>(<s:text name='Common'/>"+data.data.length+"<s:text name='Species'/>)"); |
| | | $option.attr("value", ""); |
| | | }else{
|
| | | $option.text(data.data[i-1]);
|
| | | $option.attr("value",data.data[i-1]); |
| | | } |
| | | $select.append($option);
|
| | | }
|
| | | }else{
|
| | | $("#station_name").text('').html('<option>暂无可测机房站点</option>');
|
| | | }
|
| | | findserchByBattGroupNamebystationname();
|
| | | });
|
| | | } */
|
| | | |
| | | //查询所有的维护区
|
| | | function searchAllProvince(){
|
| | | $.ajax({
|
| | |
| | | function getMapStateImg(imgs, cla) {
|
| | | var rs = imgs.normal;
|
| | | switch(cla) {
|
| | | case 'item-normal':
|
| | | rs = imgs.normal;
|
| | | break
|
| | | case 'item-warn': // 告警
|
| | | rs = imgs.warn;
|
| | | break;
|
| | |
| | | break;
|
| | | case 'item-timeout': // 延时
|
| | | rs = imgs.timeout;
|
| | | break;
|
| | | case 'item-poff': // 停电
|
| | | rs = imgs.powercut;
|
| | | break;
|
| | | case 'item-dev_alarm': // 61850告警
|
| | | rs = imgs.devalarm;
|
| | |
| | | break;
|
| | | case 'item-pre_charge': // 61850预充电
|
| | | rs = imgs.precharge;
|
| | | break;
|
| | | default:
|
| | | rs = imgs.defaults;
|
| | | break;
|
| | | }
|
| | |
|
| | |
| | | });
|
| | | });
|
| | |
|
| | | layui.use(['form', 'layer', 'laytpl'], function() {
|
| | | layui.use(['form', 'layer', 'laytpl', 'element'], function() {
|
| | | var form = layui.form;
|
| | | var layer = layui.layer;
|
| | | var laytpl = layui.laytpl;
|
| | | var element = layui.element;
|
| | |
|
| | | // 点击饼状图配置
|
| | | $('#faCog').click(function() {
|
| | |
| | | });
|
| | | }
|
| | |
|
| | | // 根据权限更新地图工具内容
|
| | | var permitAddHome = getPermit('batt_map_edit_permit', permits); // 添加机房的权限
|
| | | // 没有添加机房的权限
|
| | | if(!permitAddHome) {
|
| | | $('#permitAddHome').remove();
|
| | | }
|
| | | |
| | | // 地图左上方面板模块-点击面板上方的小图标显示设定信息
|
| | | $('#showMapInfoDetail').click(function() {
|
| | | $('.map-info-detail').slideToggle();
|
| | | });
|
| | | |
| | | // 点击隐藏
|
| | | $('.map-info-detail .map-panel-hide').click(function() {
|
| | | $('.map-info-detail').slideUp();
|
| | | });
|
| | | |
| | | // 内容改变初始话$('#mapToolSearchBtn').data('homeInfo')的值
|
| | | $( "#mapToolSearch" ).on('input propertychange', function(){
|
| | | $('#mapToolSearchBtn').data('homeInfo', 0);
|
| | | });
|
| | | // 定义机房查询信息
|
| | | $( "#mapToolSearch" ).autocomplete({
|
| | | source: [],
|
| | | select: function(event, ui) {
|
| | | $('#mapToolSearchBtn').data('homeInfo', ui.item); // 设置机房信息内容
|
| | | }
|
| | | });
|
| | | |
| | | // 点击查看homeInfo的值
|
| | | $('#mapToolSearchBtn').click(function() {
|
| | | var homeInfo = $(this).data('homeInfo');
|
| | | if(homeInfo) {
|
| | | searchPanelInfo(homeInfo);
|
| | | $(this).data('homeInfo', 0);
|
| | | $( "#mapToolSearch" ).val('');
|
| | | }else {
|
| | | layer.msg('请重新输入机房信息!');
|
| | | $( "#mapToolSearch" ).val("");
|
| | | }
|
| | | });
|
| | | |
| | | /* 地图工具添加地图图标 */
|
| | | var mapToolAddHome = $('#mapToolAddHome');
|
| | | var mapToolAddHomeBtn = $('#mapToolAddHomeBtn');
|
| | | |
| | | // 点击地图工具添加地图按钮
|
| | | mapToolAddHomeBtn.click(function() {
|
| | | var lng = mapToolAddHome.find('.lng').val().trim();
|
| | | var lat = mapToolAddHome.find('.lat').val().trim();
|
| | | var pointStyles = mapToolAddHome.find('.pointStyle');
|
| | | var pointStyle = 0;
|
| | | pointStyles.each(function() {
|
| | | if($(this).is(':checked')) {
|
| | | pointStyle = $(this).val();
|
| | | }
|
| | | });
|
| | | if(lng && lat) {
|
| | | var point = getBaiduPoint(lng, lat, pointStyle);
|
| | | var pt = new BMap.Point(point.lon, point.lat);
|
| | | addCommonDot(map, pt);
|
| | | map.centerAndZoom(pt, 18); // 用城市名设置地图中心点
|
| | | }else {
|
| | | layer.msg('请输入经纬度');
|
| | | }
|
| | | |
| | | });
|
| | | |
| | | // 获取百度地图的经纬度
|
| | | function getBaiduPoint(lng, lat, type) {
|
| | | var point = {};
|
| | | lng = Number(lng);
|
| | | lat = Number(lat);
|
| | | var _type = Number(type);
|
| | | switch(_type) {
|
| | | case 0: // GPS原始坐标
|
| | | point = GPS.wgs2bd(lat, lng);
|
| | | break;
|
| | | case 1: // 百度地图坐标
|
| | | point = {
|
| | | lon: lng,
|
| | | lat: lat
|
| | | };
|
| | | break;
|
| | | case 2: // 腾讯/高德
|
| | | point = GPS.bd_encrypt(lat, lng);
|
| | | break;
|
| | | }
|
| | | |
| | | return point;
|
| | | }
|
| | | });
|
| | | |
| | | // 更新地图工具搜索机房
|
| | | function updateSearchSource(data) {
|
| | | var homeSource = [];
|
| | | for(var i=0; i<data.length; i++) {
|
| | | var _data = data[i];
|
| | | var tmp = {
|
| | | label: _data.title+'('+_data.sId+')',
|
| | | point: {
|
| | | lng: _data.lng,
|
| | | lat: _data.lat
|
| | | }
|
| | | };
|
| | | homeSource.push(tmp);
|
| | | }
|
| | | |
| | | $( "#mapToolSearch" ).autocomplete('option', 'source', homeSource);
|
| | | }
|
| | | </script>
|
| | | </html>
|