From b6e8fdb6f9bb50d29aeb29aa62b19a75c9a1ef9d Mon Sep 17 00:00:00 2001 From: hdw <496960745@qq.com> Date: 星期五, 02 十一月 2018 17:31:23 +0800 Subject: [PATCH] Merge branch 'dev_lxw' of https://whychdw@gitlab.com/whyclxw1/gx_tieta.git into dev_lxw --- gx_tieta/WebRoot/index.jsp | 139 ++++++++++++++++++++++++++++++++++++---------- 1 files changed, 109 insertions(+), 30 deletions(-) diff --git a/gx_tieta/WebRoot/index.jsp b/gx_tieta/WebRoot/index.jsp index 41ac7e9..0ec2bf7 100644 --- a/gx_tieta/WebRoot/index.jsp +++ b/gx_tieta/WebRoot/index.jsp @@ -136,8 +136,6 @@ <td> <select name="mapIconStyleSel" id="mapIconStyleSel"> <option>鍏ㄩ儴</option> - <option>宸插畨瑁�</option> - <option>鏈畨瑁�</option> </select> </td> </tr> @@ -371,6 +369,7 @@ <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> @@ -544,6 +543,10 @@ $('#map').on('dblclick', '.explain-header', function() { return false; + }); + + $('.nav-map').on('click', '.explain-list input', function() { + setMapImgStyles(); }); }); @@ -1512,7 +1515,8 @@ mapEle.parent().append(iconExplain); - + // 璁剧疆鍦板浘鍥炬爣绉嶇被 + setMapImgStyles(); } // 鍒囨崲鍦板浘鍥炬爣璇存槑 function changeMapImgDesc(iconExplain, type) { @@ -1531,7 +1535,7 @@ function mapImgDescNormal(iconExplain) { // 鏈烘埧钀藉悗 var iconList = $('<div class="explain-list" style="padding: 4px 6px; border-bottom: 1px slid #ccc; display:block"></div>'); - var input = $('<input type="checkbox" checked="checked">'); + var input = $('<input type="checkbox" data-img="item-behind" checked="checked">'); var icon = $('<img src="'+mapImages.behind+'">'); var span = $('<span>鐢垫睜缁勮惤鍚庢満鎴�</span>'); iconList.append(input); @@ -1541,7 +1545,7 @@ // 鏈烘埧鍛婅 var iconList = $('<div class="explain-list" style="padding: 4px 6px; border-bottom: 1px slid #ccc; display:block"></div>'); - var input = $('<input type="checkbox" checked="checked">'); + var input = $('<input type="checkbox" data-img="item-warn" checked="checked">'); var icon = $('<img src="'+mapImages.warn+'">'); var span = $('<span>鐢垫睜缁勫憡璀︽満鎴�</span>'); iconList.append(input); @@ -1550,9 +1554,11 @@ 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" checked="checked">'); + var input = $('<input type="checkbox" data-img="item-timeout" checked="checked">'); var icon = $('<img src="'+mapImages.timeout+'">'); var span = $('<span>鐢垫睜缁勬斁鐢靛欢鏃舵満鎴�</span>'); iconList.append(input); @@ -1560,9 +1566,19 @@ 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); + // 姝e父鏈烘埧 var iconList = $('<div class="explain-list" style="padding: 4px 6px; border-bottom: 1px slid #ccc; display:block"></div>'); - var input = $('<input type="checkbox" checked="checked">'); + var input = $('<input type="checkbox" data-img="item-normal" checked="checked">'); var icon = $('<img src="'+mapImages.normal+'">'); var span = $('<span>姝e父鏈烘埧</span>'); iconList.append(input); @@ -1656,14 +1672,13 @@ 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); @@ -1695,14 +1710,16 @@ mkList.push(mk); // 鍚戝湴鍥炬坊鍔犺鐩栫墿 - map.addOverlay(mk); + if(isShow) { + map.addOverlay(mk); + } } } // 鍒犻櫎鍦板浘涓婄殑鎸囧畾鐐� 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]); @@ -1715,6 +1732,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++) { @@ -1953,6 +1999,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 @@ -1961,8 +2009,8 @@ StationId:homeId, //鏈烘埧缂栧彿 StationName:homeName, //鏈烘埧鍚嶇О Address:addr, //鏈烘埧鐗╃悊淇℃伅 - longitude:lng, // 缁忓害 - latitude:lat, // 绾害 + longitude: wgsPoint.lon, // 缁忓害 + latitude: wgsPoint.lat, // 绾害 information:"", //澶囨敞 }; var json = JSON.stringify(temp); @@ -2045,6 +2093,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鍙鍖哄煙锛屼互鍦扮悊鍧愭爣琛ㄧず @@ -2170,16 +2228,15 @@ 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", @@ -2198,21 +2255,22 @@ // 璁剧疆鍒嗛〉淇℃伅 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(); + // 鏄惁绗竴娆℃墽琛� if(setRect) { map.addEventListener("moveend", bmap.queryInRect.bind({},map, createMapDot)); // 鎷栧姩 map.addEventListener("zoomend", bmap.queryInRect.bind({},map, createMapDot)); // 缂╂斁 - updateStation(); + } } } @@ -2222,9 +2280,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; @@ -2265,9 +2325,7 @@ } } - //console.log(updateStationData); createMapDot(map, updateStationData, true); - // 鏇存柊鍒嗛〉淇℃伅 mapPages.pageCurr++; if(mapPages.pageCurr>mapPages.pageNum || updateStationData.length<mapPages.pageSize) { @@ -2276,6 +2334,7 @@ } setTimeout(updateStation, 4000); + } }); } @@ -2284,9 +2343,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; @@ -2294,6 +2356,19 @@ obj.msg = list.msg; obj.num = list.num; return obj; + } + + // 鏍规嵁allStation鐨勫�煎幓鏇存柊鍐呭 + function updateMapByAllStation() { + var bmap = GLOBAL.BMap; // BMap鐨勫懡鍚嶇┖闂� + var init = bmap.init; // 鍒濆鍖栧唴瀹� + + // 鍒濆鍖栧湴鍥惧唴瀹� + init(); + + // 鏄剧ず鍖哄煙鐨勫浘鏍� + bmap.setDots(allStation); + bmap.queryInRect(map, createMapDot); } // 鏌ヨ鏈烘埧闈㈡澘淇℃伅 @@ -2318,7 +2393,7 @@ 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>'+ @@ -2916,7 +2991,8 @@ 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.defaults = mapDefults; + 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(){ @@ -3207,6 +3283,9 @@ case 'item-timeout': // 寤舵椂 rs = imgs.timeout; break; + case 'item-poff': // 鍋滅數 + rs = imgs.powercut; + break; case 'item-dev_alarm': // 61850鍛婅 rs = imgs.devalarm; break; -- Gitblit v1.9.1