gx_tieta/WebRoot/batt-traffic-statistics1.jsp | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
gx_tieta/WebRoot/css/index_layout.css | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
gx_tieta/WebRoot/index.jsp | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
gx_tieta/WebRoot/js/AreaRestriction_min.js | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
gx_tieta/WebRoot/pages/css/mylayui.css | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
gx_tieta/WebRoot/pages/js/common.js | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 |
gx_tieta/WebRoot/batt-traffic-statistics1.jsp
New file @@ -0,0 +1,397 @@ <%@ page language="java" import="java.util.*" pageEncoding="utf-8"%> <% String path = request.getContextPath(); String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/"; %> <%@ taglib uri="/struts-tags" prefix="s" %> <!DOCTYPE HTML> <html> <head> <base href="<%=basePath%>"> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1"> <meta http-equiv="pragma" content="no-cache"> <meta http-equiv="cache-control" content="no-cache"> <meta http-equiv="expires" content="0"> <meta http-equiv="keywords" content="keyword1,keyword2,keyword3"> <meta http-equiv="description" content="This is my page"> <title>流量统计</title> <!--流量统计--> <link rel="stylesheet" type="text/css" href="pages/css/base.css"> <link rel="stylesheet" type="text/css" href="jqueryui/jquery-ui.min.js"> <link rel="stylesheet" type="text/css" href="src/css/layui.css"> <link rel="stylesheet" type="text/css" href="pages/css/mylayui.css"> </head> <body> <!--头部内容开始--> <jsp:include page="Top.jsp" flush="true"/> <!--头部内容结束--> <!--导航开始--> <jsp:include page="nav.jsp" flush="true"/> <!-- 主体内容 --> <div class="layui-page-container"> <!-- 条件筛选 --> <div class="layui-page-filter"> <div class="page-filter-header layui-page-filter-fweight">流量统计</div> <div class="page-filter-content"> <table> <tr class="layui-page-filter-tbl-header layui-page-filter-fweight"> <td>省</td> <!-- 省 --> <td>市</td> <!-- 市 --> <td><s:text name="Computer_name"/></td> <!-- 机房名称 --> <td>统计方式</td> <td colspan="2">时间段</td> </tr> <tr> <td> <div class="layui-form" lay-filter="provinceFilter"> <div class="layui-form-item"> <div class="layui-input-block"> <select name="province" id="province" lay-filter="province"> <option value="">请选择省</option> </select> </div> </div> </div> </td> <td> <div class="layui-form" lay-filter="cityFilter"> <div class="layui-form-item"> <div class="layui-input-block"> <select name="city" id="city" lay-filter="city"> <option value="">请选择市/区</option> </select> </div> </div> </div> </td> <td> <div class="layui-form" lay-filter="homeFilter"> <div class="layui-form-item"> <div class="layui-input-block"> <select name="home" id="home" lay-filter="home"> <option value="">请选择机房</option> </select> </div> </div> </div> </td> <td> <div class="layui-form"> <div class="layui-form-item"> <div class="layui-input-block"> <select id="statistics" name="statistics" lay-filter="statistics"> <option value="3">按年统计</option> <option value="1">按月统计</option> <option value="2">按日统计</option> </select> </div> </div> </div> </td> <td class="w272"> <div class="layui-form"> <div class="layui-form-item"> <div class="layui-input-block"> <input type="text" class="layui-input" id="startTime" placeholder="yyyy-MM-dd HH:mm:ss"> </div> </div> </div> </td> <td class="w272"> <div class="layui-form"> <div class="layui-form-item"> <div class="layui-input-block"> <input type="text" class="layui-input" id="endTime" placeholder="yyyy-MM-dd HH:mm:ss"> </div> </div> </div> </td> </tr> </table> </div> </div> <!-- 页面主题内容 --> <div class="layui-page-content"> <!-- 表格内容 --> <table id="pageTbl" lay-filter="pageTbl"></table> </div> <!-- 分页内容 --> <div id="paging"> <a href="javascript:" class="search"><s:text name="Search"/><!-- 查询 --></a> <s:text name="Total_data"/><!-- 数据总量 --><span id="total" class="total">0</span> </div> </div> <!-- 整体灰色遮罩层 --> <div id="allShade"></div> <script type="text/javascript" src="js/jquery-1.8.3.js"></script> <script type="text/javascript" src="jqueryui/jquery-ui.min.js"></script> <script type="text/javascript" src="src/layui.js"></script> <script type="text/javascript" src="pages/js/mylayui.js"></script> <script type="text/javascript"> layui.use(['form', 'table', 'layer', 'laydate', 'element'], function() { var table = layui.table; // 获取表格模块 var form = layui.form; // 获取表单模块 var layer = layui.layer; // 获取弹出框模块 var laydate = layui.laydate; // 获取日期模块 // 定义时间模块 var date = new Date(); var today = date.format("yyyy-MM-dd")+" 23:59:59"; // 定义开始时间 laydate.render({ elem: '#startTime', type: 'datetime', value: '2000-01-01 00:00:00', btns: ['confirm'], max: today, min: '2000-01-01 00:00:00' }); // 定义结束时间 laydate.render({ elem: '#endTime', type: 'datetime', value: today, btns: ['confirm'], min: '2000-01-01 00:00:00', max: today }); // 查询省下拉框 searchProvince(); // 查询省 function searchProvince() { // 请求后台查询 $.ajax({ type:'post', async:true, url: 'User_battgroup_baojigroup_battgroupAction!serchStationName1InGroup', data: null, dataType: 'json', success:function(result) { var rs = JSON.parse(result.result); var list = []; // option结果集 var ele = $('#province'); // 目标select if(rs.code == 1) { var data = rs.data; list.push(getLayuiSelect('请选择省/直辖市', '', {}, undefined)); // 遍历查询结果 for(var i=0; i<data.length; i++) { var _data = data[i]; var _tmp = getLayuiSelect(_data, _data, {}, {}); list.push(_tmp); } }else { list.push(getLayuiSelect('暂无省/直辖市', '', {}, undefined)); } // 根据对象数组生成下拉列表 createLayuiSelect(ele, list); form.render('select', 'provinceFilter'); // 查询市 searchCity(); } }); } // 切换省-市 form.on('select(province)', function(data) { // 查询市 searchCity(); }); // 查询市 function searchCity() { // 构造查询条件 var tmp = { StationName1: $("#province").val() }; // 根据构造条件查询内容 $.ajax({ type: 'post', async: true, url: 'BattInfAction!serchStationName2', dataType: 'json', data: "json = "+JSON.stringify(tmp), success: function(result) { var rs = JSON.parse(result.result); var list = []; // option结果集 var ele = $('#city'); // 目标select if(rs.code == 1) { var data = rs.data; list.push(getLayuiSelect('请选择市/区', '', {}, undefined)); // 遍历查询结果 for(var i=0; i<data.length; i++) { var _data = data[i]; var _tmp = getLayuiSelect(_data.StationName2, _data.StationName2, {}, _data); list.push(_tmp); } }else { list.push(getLayuiSelect('暂无市/区', '', {}, undefined)); } // 根据对象数组生成下拉列表 createLayuiSelect(ele, list); form.render('select', 'cityFilter'); // 查询机房 searchHome(); } }); } // 切换市-机房 form.on('select(city)', function(data) { // 查询机房 searchHome(); }); // 查询机房 function searchHome() { // 构造查询条件 var tmp = { StationName1:$("#province").val(), StationName2:$("#city").val() }; // 根据构造条件查询内容 $.ajax({ type: 'post', async: true, url: 'BattInfAction!serchStationName3', dataType: 'json', data: "json = "+JSON.stringify(tmp), success: function(result) { var rs = JSON.parse(result.result); var list = []; // option结果集 var ele = $('#home'); // 目标select if(rs.code == 1) { var data = rs.data; list.push(getLayuiSelect('请选择机房', '', {StationId: '', dev_id: ''}, undefined)); // 遍历查询结果 for(var i=0; i<data.length; i++) { var _data = data[i]; var _attr = { StationId: _data.StationId, dev_id: _data.FBSDeviceId }; var _tmp = getLayuiSelect(_data.StationName, _data.StationName3, _attr, _data); list.push(_tmp); } }else { list.push(getLayuiSelect('暂无机房', '', {}, undefined)); } // 根据对象数组生成下拉列表 createLayuiSelect(ele, list); form.render('select', 'homeFilter'); } }); } // 表格模块 var tOptions = { elem: '#pageTbl' ,toolbar: false ,cellMinWidth: 80 ,cols: [[ {field:'timeSlot', title:'统计时间段', align:'center', width: 380} ,{field:'province', title:'省', align:'center'} ,{field:'city', title:'市', align:'center'} ,{field:'home', title:'机房名称', align:'center'} ,{field:'flowSize', title:'流量', align:'center'} ]] ,data:[] ,limit: 1000 ,page: false ,height: 'full-290' }; // 生成表格数据 table.render(tOptions); // 点击查询 $('#paging .search').click(function() { var temp = createSearchForm(); if(temp.dev_id) { sTblData(temp); }else { layer.msg('请选择机房!', {icon:0, shade: 0.1,shadeClose:true}); } }); // 查询表格数据 function sTblData(sData) { // 开启等待框 var loading = layer.load(); // 根据查询条件,查询内容 $.ajax({ type: 'post', async: true, url: 'StationtrafficAction!serchByCondition', data: "json="+JSON.stringify(sData), dataType: 'json', success: function(result) { // 关闭等待框 layer.close(loading); // 解析获取的json var rs = JSON.parse(result.result); // 初始化数据结果 tOptions.data = []; if(rs.code == 1) { // 遍历数据结果 var data = rs.data; for(var i=0; i<data.length; i++) { var _data = data[i]; var tmp = {}; tmp.timeSlot = _data.note; tmp.province = _data.stationName1; tmp.city = _data.stationName2; tmp.home = _data.stationName; tmp.flowSize = tranfficCount(_data.nowflow); tOptions.data.push(tmp); } }else { layer.msg('暂无数据!', {icon:0, shade: 0.1,shadeClose:true}); } var pageNum = tOptions.data.length; tOptions.limit = pageNum; // 设置分页信息 $('#total').text(pageNum); // 生成表格数据 table.render(tOptions); } }); } // 查询表格的构造条件 function createSearchForm(){ var dev_id = $('#home').find("option:selected").attr('dev_id'); var temp = { dev_id: dev_id?dev_id:0, record_time:$('#startTime').val(), record_time1:$('#endTime').val(), num:$('#statistics').val() }; return temp; } // 计算流量 function tranfficCount(value){ value = (value/1048576).toFixed(2); if(value>1024){ value = (value/1024).toFixed(2); return value + "G"; }else{ return value + "M"; } } }); </script> </body> </html> gx_tieta/WebRoot/css/index_layout.css
@@ -6,6 +6,7 @@ width:100%; } #content .nav-map { position: relative; display: table; width: 80%; height: 500px; @@ -34,7 +35,6 @@ /*显示中国和中国各省(行政区,直辖市)的地图*/ #content .china-map{ display: table-cell; width: auto; height:100%; min-height: 200px; @@ -517,3 +517,15 @@ background: #f4f4f4; color: #555; } #mapImgDesc span { line-height: 30px; margin-left: 6px; margin-right: 8px; } #mapImgDesc img{ width: 22px; height: 22px; margin-right: 8px; vertical-align: middle; } gx_tieta/WebRoot/index.jsp
@@ -39,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 @@ -109,16 +109,28 @@ <jsp:include page="nav.jsp" flush="true"/> <!--导航结束--> <div id="content"> <div class="nav-map small"> <!-- 地图内容筛选 --> <div class="map-info-panel-left"> <div class="map-info-panel-content"> <div class="map-info"> <span>限制显示区域: </span><span class="k-point red" id="mapVsArea">中国</span> <span class="mr5">机房显示类型:</span><span class="k-point red" id="mapIconStyle">全部</span> <span class="map-info-btn-icon" id="showMapInfoDetail" title="详情"><i class="fa fa-angle-double-down"></i></span> </div> <div class="map-info-detail"> <table> <tbody> <tr> <td class="w8em alg-c">限制显示区域:</td> <td> <select name="mapVsAreaSel" id="mapVsAreaSel"> <option>中国</option> <option>中国-广西</option> </select> </td> </tr> <tr> <td class="w8em alg-c">机房显示类型:</td> <td> @@ -138,7 +150,6 @@ </div> </div> </div> <div class="nav-map small"> <!-- 电池分布图 --> <div class="china-map" id="map"> <div class="img-change" style="display:none;"> @@ -527,8 +538,8 @@ }); $(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() { @@ -690,9 +701,9 @@ { text: '返回中心点', callback: function(e) { centerMapByPoint(map); centerMapByPoint(map); // 根据当前用户设定的位置显示中心点 } }, } ]; //console.info(getPermit('taskchange_edit_permit', permits)+"*******"); if(getPermit('batt_map_edit_permit', permits)) { @@ -1499,9 +1510,10 @@ changeMapImgDesc(iconExplain, 'normal'); mapEle.prepend(iconExplain); } mapEle.parent().append(iconExplain); } // 切换地图图标说明 function changeMapImgDesc(iconExplain, type) { iconExplain.find('.explain-list').remove(); @@ -1519,35 +1531,43 @@ 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" 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" 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" 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 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" checked="checked">'); var icon = $('<img src="'+mapImages.normal+'">'); var span = $('<span>正常机房</span>'); iconList.append(input); iconList.append(span); iconList.append(icon); iconExplain.append(iconList); } @@ -1557,16 +1577,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); @@ -1574,16 +1594,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); } @@ -3522,14 +3542,57 @@ } }); } var mapViewArea = GLOBAL.BMap.mapViewArea; // 地图左上方面板模块 var mapViewArea = GLOBAL.BMap.mapViewArea; // 地图显示区域的信息 // 点击面板上方的小图标显示设定信息 $('#showMapInfoDetail').click(function() { $('.map-info-detail').slideToggle(); }); // 点击隐藏 $('.map-info-detail .map-panel-hide').click(function() { $('.map-info-detail').slideUp(); }); // 遍历mapViewArea获取mapVsAreaSel下拉框的值 var mapVsAreaSel = $('#mapVsAreaSel'); var mapVsAreaSelOpts = []; for(var i=0; i<mapViewArea.length; i++) { var _data = mapViewArea[i]; var tmp = getOptionsData(_data.name, _data.area, _data); mapVsAreaSelOpts.push(tmp); } // 生成面板中的mapVsAreaSel createOptions(mapVsAreaSel, mapVsAreaSelOpts); // 显示默认区域-中国 setMapViewArea(mapViewArea[0]); centerMapByPoint(map); // 根据当前用户设定的位置显示中心点 // 点击面板确定按钮 $('#mapPanelEn').click(function() { var areaData = mapVsAreaSel.find('option:selected').data('attr'); // 设置头部可视区域的文本 $('#mapVsArea').text(areaData.name); // 设置可视区域 setMapViewArea(areaData); }); // 设置地图的可视区域 function setMapViewArea(data) { var left = new BMap.Point(data.left.lng, data.left.lat); var right = new BMap.Point(data.right.lng, data.right.lat); var b = new BMap.Bounds(left, right); var cLng = (data.left.lng+data.right.lng)/2; var cLat = (data.left.lat+data.right.lat)/2; var f = new BMap.Point(cLng, cLat); map.panTo(f, { noAnimation: "no" }); try { BMapLib.AreaRestriction.setBounds(map, b); } catch (e) { gx_tieta/WebRoot/js/AreaRestriction_min.js
@@ -22,7 +22,6 @@ if (d.containsBounds(c.getBounds())) { return } console.log(c.getBounds()); var i = c.getBounds(), h = i.getSouthWest(), g = i.getNorthEast(), gx_tieta/WebRoot/pages/css/mylayui.css
@@ -1,5 +1,53 @@ html, body { width: 100%; height: 100%; min-width: 1200px; overflow: hidden; overflow-x: auto; } .layui-table-view { margin: 0; } /* layui-page-filter */ .page-filter-header { line-height: 36px; background: url('../images/table_th_bg.gif') repeat-x; text-align:center; } .layui-page-filter-fweight { font-weight: bold; text-align: center; } .page-filter-content table{ width: 100%; } .page-filter-content table td { border: 1px solid #ccc; } .layui-page-filter-tbl-header td { font-size: 14px; padding: 6px 0; } .page-filter-content .layui-input, .page-filter-content .layui-select { border: 0; } .page-filter-content .layui-input { height: 30px; font-size: 14px; } .page-filter-content .layui-form-item { margin: 0; } .page-filter-content .layui-input-block { height: 30px; min-height: 30px; margin: 0; } .page-filter-content .layui-form-select dl { top: 34px; } .layui-table thead tr { color: #000; @@ -17,3 +65,37 @@ background-color: #4EABE3; color: #FFFFFF; } /*分页样式*/ #paging{ -webkit-user-select: none; -moz-user-select: none; -ms-user-select: none; user-select: none; padding:6px 0; font-size: 14px; background:url(../images/table_th_bg.gif) repeat-x; text-align: center; } #paging input{ width:28px; height:24px; border:1px solid #00FFFF; } #paging span.total { margin-left: 10px; } #paging span{ margin-left:20px; } #paging a{ margin-left:10px; } #paging .input_container{ width:100%; } /* width */ .w272 { width: 272px; } gx_tieta/WebRoot/pages/js/common.js
@@ -457,6 +457,7 @@ // 地图可视区域定义 var mapViewArea = [ {name: '中国',area:'中国' ,left: {lng:71.3822, lat:0.6212}, right: {lng: 139.526,lat:54.3093}}, {name: '中国-广西',area: '广西省' ,left: {lng:104.45675, lat:20.8744}, right: {lng: 112.068,lat:26.391}} ]; // 将变量mapView绑定到GLOBAL.BMap下