From 1a779120d9bcd4a50fe02ca792cb87c98ccf775b Mon Sep 17 00:00:00 2001 From: hdw <496960745@qq.com> Date: 星期一, 26 十一月 2018 10:31:55 +0800 Subject: [PATCH] 修改内容 --- gx_tieta/WebRoot/index.jsp | 718 +++++++++++++++++++++++++++++++++++++++++++++-------------- 1 files changed, 540 insertions(+), 178 deletions(-) diff --git a/gx_tieta/WebRoot/index.jsp b/gx_tieta/WebRoot/index.jsp index eb12531..e7640d6 100644 --- a/gx_tieta/WebRoot/index.jsp +++ b/gx_tieta/WebRoot/index.jsp @@ -24,10 +24,12 @@ <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" /> @@ -37,7 +39,7 @@ <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 @@ -94,7 +96,6 @@ } </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> @@ -108,21 +109,72 @@ <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">姝e父</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"><span class="mrl8">鏈烘埧鍚嶇О:</span></td> + <td><input type="text" id="mapToolSearch"></td> + <td class="w54 btn-container"> + <button type="button" value="鎼滅储" id="mapToolSearchBtn" class="mrr8"><i class="fa fa-search page-link"></i></button> + </td> + </tr> + <tr> + <td colspan="3" class="btn-container"> + <span class="mrl8">宸插畨瑁呰澶囨暟/璁惧鎬绘暟锛�<span id="installnum">12/600</span><i id="installnumbtn" class="fa fa-refresh mrl8 page-link" title="鍒锋柊"></i></span> + </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;"> @@ -167,12 +219,12 @@ <i class="fa fa-cog"></i> </a> </div> + <!--鐢垫睜鏁呴殰淇鍥�--> + <div class="repair-pie module"></div> <!-- 鐢垫睜鏁呴殰楗肩姸鍥� --> <div class="brdn-pie module"></div> <!-- 鐢垫睜鍛婅楗肩姸鍥� --> <div class="warn-pie module"></div> - <!--鐢垫睜鏁呴殰淇鍥�--> - <div class="repair-pie module"></div> <!--鐢垫睜鍋ュ悍楗肩姸鍥�--> <div class="health-pie module"></div> <!--娓呴櫎娴姩--> @@ -338,12 +390,14 @@ </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> @@ -351,6 +405,8 @@ <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"); @@ -370,6 +426,7 @@ var search; var warnOpts; //console.info(BMap); + var mapDefults = new Image().src = 'image/mapDefault.gif'; var mapImages = getMapImageUrl(); // 瀹氫箟鐪�-甯傝祫婧愬唴瀹� var area = [ @@ -510,12 +567,16 @@ }); $(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(); }); }); @@ -597,7 +658,7 @@ centerMapByPoint(map); // 鏍规嵁褰撳墠鐢ㄦ埛璁惧畾鐨勪綅缃樉绀轰腑蹇冪偣 map.enableScrollWheelZoom(); map.disableDoubleClickZoom(); - map.setMapStyle({style: 'grayscale'}); // 璁剧疆鍦板浘鐨勯鏍� + //map.setMapStyle({style: 'grayscale'}); // 璁剧疆鍦板浘鐨勯鏍� // 娣诲姞鍦板浘绫诲瀷鎺т欢 map.addControl(new BMap.MapTypeControl()); // 缁欏湴鍥炬坊鍔犲伐鍏锋潯(鍦板浘-鍗槦-涓夌淮)鍜屾瘮渚嬪昂鎺т欢 @@ -638,6 +699,17 @@ 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(); @@ -652,21 +724,17 @@ } }, { - text: '鎭㈠姝e父', + text: '閫�鍑哄叏灞忔樉绀�', callback: function(e) { // console.info(e); smallMap(); } }, + { - text: '璁剧疆涓績鐐�', - callback: function(e) { - myConfirm.show({ - title: '璁剧疆鍦板浘榛樿鏄剧ず浣嶇疆', - content: '鏄惁纭淇敼鍦板浘榛樿涓績鍧愭爣', - enfun:updateMapCenterPoint, - enparams:[e] - }); + text: '杩斿洖涓績鐐�', + callback: function(e){ + centerMapByPoint(map); // 鏍规嵁褰撳墠鐢ㄦ埛璁惧畾鐨勪綅缃樉绀轰腑蹇冪偣 } } ]; @@ -891,6 +959,8 @@ Almarr.push(/*{ name:"<s:text name='Capacity'/><s:text name='Alarm'/><s:text name='Alarm'/>",val:parseInt(data.BattGroupId) // 瀹归噺鍛婅鍛婅 } ,*/{ + name:"<s:text name='On-line_voltage'/>",val:parseInt(data.Record_Id), // 鍦ㄧ嚎鐢靛帇 + },{ name:"<s:text name='Group_voltage'/>",val:parseInt(data.MonNum), // 缁勭鐢靛帇 },{ name:"<s:text name='Charging_current'/>",val:parseInt(data.alm_id), // 鍏呯數鐢垫祦 @@ -935,6 +1005,15 @@ //鍒涘缓鐢垫睜鍛婅楗肩姸鍥� var warnTle="<s:text name='Battery_alarm_rate'/>"; /* 鐢垫睜鍛婅鐜� */ createPie(warnPie,warnTle,Almarr); + warnPie.on('click', function(param) { + // 0:鍦ㄧ嚎鐢靛帇 1:缁勭鐢靛帇 2:鍏呯數鐢垫祦 3:鏀剧數鐢垫祦 4:鍗曚綋鐢靛帇 5:瀹归噺鍛婅 + if(param.dataIndex == 5) { + + }else { + window.open('elewarn.jsp?warntype='+param.dataIndex+'&warntxt='+param.name); + } + + }); } }); } @@ -1014,7 +1093,8 @@ } $.ajax({ type: "post", - url: "BattPower_offAction!serchPowerOff", + //url: "BattPower_offAction!serchPowerOff", + url: "Bts_station_stateAction_action_serchPowerOff", async:true, dataType:'text', data:null, @@ -1025,10 +1105,12 @@ //console.info(model); if((model.sum>=0) && (model.newsum>=0) && (model.newsum>=model.sum)){ repairObj=[{name:"<s:text name='Computer_room'/><s:text name='Power_cut'/>",val:model.sum,color:'#FF0000'}, /*宸插仠鐢垫満鎴�*/ - {name:"<s:text name='Computer_room'/><s:text name='Not'/><s:text name='Power_cut'/>",val:model.newsum-model.sum,color:'#31CB36'}]; /* 鏈仠鐢垫満鎴� */ + {name:"<s:text name='Computer_room'/><s:text name='Not'/><s:text name='Power_cut'/>",val:model.newsum-model.sum,color:'#31CB36'}, /* 鏈仠鐢垫満鎴� */ + {name:"鏈烘埧鎺夌珯", val: model.code}]; }else{ repairObj=[{name:"<s:text name='Computer_room'/><s:text name='Power_cut'/>",val:0,color:'#FF0000'}, /* 宸插仠鐢垫満鎴� */ - {name:"<s:text name='Computer_room'/><s:text name='Not'/><s:text name='Power_cut'/>",val:model.sum,color:'#31CB36'}]; /* '鏈慨澶�' */ + {name:"<s:text name='Computer_room'/><s:text name='Not'/><s:text name='Power_cut'/>",val:model.sum,color:'#31CB36'}, + {name:"鏈烘埧鎺夌珯", val: model.code}]; /* '鏈慨澶�' */ } var repairTle="<s:text name='Computer_room'/><s:text name='Power_cut'/>"; /* '鏈烘埧鍋滅數' */ if(powercut_isNew){ @@ -1036,7 +1118,7 @@ powercut_isNew = false; createPie(repairPie,repairTle,repairObj); repairPie.on('click', function() { - window.open('powercut.jsp?power_state=0'); + window.open('batt-state-manage.jsp'); }); }else{ var opt = getOpt(repairTle, repairObj); @@ -1084,6 +1166,11 @@ } //鍒涘缓鐢垫睜鏁呴殰楗肩姸鍥� createPie(healthPie,healthTle,healthObj); + + // 鐐瑰嚮楗肩姸鍥捐繘琛岃烦杞� + healthPie.on('click', function(param) { + window.open('taskplan.jsp'); // 璺宠浆鍒拌惤鍚庡崟浣撴煡璇� + }); }); } } @@ -1371,6 +1458,7 @@ }); $(window).resize(function() { + console.log(123); getMapHt(); }); // 鏀瑰彉div鐨勫ぇ灏� @@ -1474,9 +1562,11 @@ changeMapImgDesc(iconExplain, 'normal'); - mapEle.prepend(iconExplain); + mapEle.parent().append(iconExplain); + + // 璁剧疆鍦板浘鍥炬爣绉嶇被 + setMapImgStyles(); } - // 鍒囨崲鍦板浘鍥炬爣璇存槑 function changeMapImgDesc(iconExplain, type) { iconExplain.find('.explain-list').remove(); @@ -1492,39 +1582,103 @@ // 鏅�氭満鎴挎弿杩� 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 span = $('<span>鐢垫睜钀藉悗鏈烘埧</span>'); + var icon = $('<img src="'+mapImages.behind+'">'); + var badge = $('<a href="javascript:;" class="layui-badge-rim mrr8 badge-behind">0</a>'); + iconList.append(input); iconList.append(span); + iconList.append(icon); + iconList.append(badge); 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 span = $('<span>鐢垫睜鍛婅鏈烘埧</span>'); + var icon = $('<img src="'+mapImages.warn+'">'); + var badge = $('<a href="javascript:;" class="layui-badge-rim mrr8 badge-warn">0</a>'); + iconList.append(input); iconList.append(span); + iconList.append(icon); + iconList.append(badge); 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 input = $('<input type="checkbox" data-img="item-down" checked="checked">'); + var icon = $('<img src="'+mapImages.timeout+'">'); + var span = $('<span>鎺夌珯鏈烘埧</span>'); + var badge = $('<a href="javascript:;" class="layui-badge-rim mrr8 badge-down">0</a>'); + iconList.append(input); + iconList.append(span); + iconList.append(icon); + iconList.append(badge); + //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>'); + var badge = $('<a href="javascript:;" class="layui-badge-rim mrr8 badge-powercut">0</a>'); + iconList.append(input); + iconList.append(span); + iconList.append(icon); + iconList.append(badge); iconExplain.append(iconList); // 姝e父鏈烘埧 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">姝e父鏈烘埧</span>'); - iconList.append(icon); + var input = $('<input type="checkbox" data-img="item-normal" checked="checked">'); + var icon = $('<img src="'+mapImages.normal+'">'); + var span = $('<span>姝e父鏈烘埧</span>'); + var badge = $('<a href="javascript:;" class="layui-badge-rim mrr8 badge-normal">0</a>'); + iconList.append(input); iconList.append(span); + iconList.append(icon); + iconList.append(badge); iconExplain.append(iconList); + + // 缁埅涓嶈冻3灏忔椂鏈烘埧 + 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-weak" checked="checked">'); + var icon = $('<img src="'+mapImages.normal+'">'); + var span = $('<span>缁埅涓嶈冻3灏忔椂鏈烘埧</span>'); + var badge = $('<a href="javascript:;" class="layui-badge-rim mrr8 badge-weak">0</a>'); + iconList.append(input); + iconList.append(span); + iconList.append(icon); + iconList.append(badge); + //iconExplain.append(iconList); + + } + + // 鏇存柊鍦板浘鍥炬爣badge鐨勫�� + function updateMapIconBadge() { + var mapImgDesc = $('#mapImgDesc'); + var behind = mapImgDesc.find('.badge-behind'); // 鐢垫睜钀藉悗鏈烘埧 + var warn = mapImgDesc.find('.badge-warn'); // 鐢垫睜鍛婅鏈烘埧 + var down = mapImgDesc.find('.badge-down'); // 鎺夌珯鏈烘埧 + var powercut = mapImgDesc.find('.badge-powercut'); // 鍋滅數鏈烘埧 + var normal = mapImgDesc.find('.badge-normal'); // 姝e父鏈烘埧 + var weak = mapImgDesc.find('.badge-weak'); // 缁埅涓嶈冻3灏忔椂鏈烘埧 + } + // 61850鎻忚堪 function mapImgDesc61850(iconExplain) { @@ -1532,16 +1686,16 @@ 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); @@ -1549,16 +1703,16 @@ 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); } @@ -1608,17 +1762,16 @@ } // 鐢熸垚鍦板浘鍥炬爣 - function createMapDot(map, dotList) { + function createMapDot(map, dotList, isTop) { // 娓呯┖瑕嗙洊鐗╁拰瀵瑰簲鐨刴k鐐� 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); @@ -1643,16 +1796,65 @@ //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]); @@ -1665,6 +1867,35 @@ } } + // 鑾峰彇鍦板浘闇�瑕佹樉绀哄浘鏍囩殑绫诲瀷 + 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++) { @@ -1903,6 +2134,8 @@ function getAddHomeInfo() { var lng = $('.add-panel .lng').text(); // 鑾峰彇缁忓害 var lat = $('.add-panel .lat').text(); // 鑾峰彇绾害 + var wgsPoint = GPS.bd2wgs(lat, lng); // 鐧惧害鍦板浘鍧愭爣杞寲涓篏PS + var addr = $('.add-panel .addr').text(); // 鑾峰彇鍦板潃 var homeName = $('.add-panel select option:selected').text(); // 鏈烘埧鍚嶇О var homeId = $('.add-panel select option:selected').val(); // 鏈烘埧ID @@ -1911,8 +2144,8 @@ StationId:homeId, //鏈烘埧缂栧彿 StationName:homeName, //鏈烘埧鍚嶇О Address:addr, //鏈烘埧鐗╃悊淇℃伅 - longitude:lng, // 缁忓害 - latitude:lat, // 绾害 + longitude: wgsPoint.lon, // 缁忓害 + latitude: wgsPoint.lat, // 绾害 information:"", //澶囨敞 }; var json = JSON.stringify(temp); @@ -1995,6 +2228,16 @@ // 鏍规嵁鍙鑼冨洿鏄剧ず鍧愭爣鐐� var dots = []; var currMarkers = {}; + + // 鍒濆鍖� + function init() { + dots = []; + currMarkers = {}; + } + // init鍑芥暟缁戝畾鍒癎LOBAL.BMap涓� + gl.BMap.init = init; + + // 鏌ヨ褰撳墠鑼冨洿鍐呭鐨勫浘鏍� function queryInRect(map, callback) { var cp = map.getBounds(); // 杩斿洖map鍙鍖哄煙锛屼互鍦扮悊鍧愭爣琛ㄧず @@ -2114,22 +2357,21 @@ 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", @@ -2148,21 +2390,25 @@ // 璁剧疆鍒嗛〉淇℃伅 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(); + } } } @@ -2172,9 +2418,11 @@ // 鏍煎紡鍖栨煡璇㈢粨鏋� 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; @@ -2203,7 +2451,7 @@ 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); @@ -2215,16 +2463,16 @@ } } - 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); + } }); } @@ -2233,9 +2481,12 @@ 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; @@ -2245,9 +2496,22 @@ 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('闈㈡澘淇℃伅鏌ヨ澶辫触锛�'); @@ -2267,14 +2531,17 @@ 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 = { @@ -2416,7 +2683,10 @@ 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); } // 瀹氫綅鍒板巻鍙叉暟鎹〉闈� @@ -2424,27 +2694,49 @@ 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); } // 瀹氫綅鍒版満鎴胯缁嗕俊鎭〉闈� @@ -2865,96 +3157,11 @@ 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({ @@ -3143,6 +3350,9 @@ function getMapStateImg(imgs, cla) { var rs = imgs.normal; switch(cla) { + case 'item-normal': + rs = imgs.normal; + break case 'item-warn': // 鍛婅 rs = imgs.warn; break; @@ -3151,6 +3361,9 @@ break; case 'item-timeout': // 寤舵椂 rs = imgs.timeout; + break; + case 'item-poff': // 鍋滅數 + rs = imgs.powercut; break; case 'item-dev_alarm': // 61850鍛婅 rs = imgs.devalarm; @@ -3163,6 +3376,9 @@ break; case 'item-pre_charge': // 61850棰勫厖鐢� rs = imgs.precharge; + break; + default: + rs = imgs.defaults; break; } @@ -3343,10 +3559,11 @@ }); }); - 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() { @@ -3485,6 +3702,151 @@ }); } + // 鏍规嵁鏉冮檺鏇存柊鍦板浘宸ュ叿鍐呭 + 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; + } + // 鐐瑰嚮璁惧瀹夎鐘舵�佺殑鍒锋柊鎸夐挳 + $('#installnumbtn').click(function() { + getInstallNum(true); + }); + + // 缁熻璁惧瀹夎鎯呭喌 + getInstallNum(); + // 鑾峰彇褰撳墠宸茬粡瀹夎鐨勮澶囨暟鐩� + function getInstallNum(isLoad) { + var load; + // 鏌ヨ鍚庡彴鏁版嵁 + $.ajax({ + type: 'post', + async:true, + url: 'BattInfAction!serchDevice', + data: null, + dataType: 'json', + beforeSend: function(xhr) { + if(isLoad) { + load = layer.load(1); + } + + }, + complete: function(xhr) { + layer.close(load); + }, + success: function(result) { + // 鏍煎紡鍖栨暟鎹� + var rs = JSON.parse(result.result); + var txt = rs.newsum+'/'+rs.sum; + + // 鏇存柊鏂囨湰鍊� + $('#installnum').text(txt); + } + }); + }; }); + + // 鏇存柊鍦板浘宸ュ叿鎼滅储鏈烘埧 + 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> -- Gitblit v1.9.1