<%@ page language="java" import="java.util.*" pageEncoding="utf-8"%>
|
<%
|
String path = request.getContextPath();
|
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
|
%>
|
|
<!DOCTYPE HTML>
|
<html>
|
<head>
|
<base href="<%=basePath%>">
|
<%@ taglib uri="/struts-tags" prefix="s"%>
|
<meta charset="UTF-8">
|
<meta http-equiv="X-UA-Compatible" content="IE=EmulateIE10" />
|
<title><s:text name="Equip_usage_statistics"/></title> <!-- 设备用电量统计查询 -->
|
<link rel="stylesheet" type="text/css" href="css/basic.css" />
|
<link rel="stylesheet" type="text/css" href="css/BrdwDeal.css" />
|
<link href="css/loading.css" type="text/css" rel="stylesheet" />
|
<style type="text/css">
|
.tbl-container {
|
float: left;
|
width: 70%;
|
}
|
.echarts-con {
|
float: right;
|
width: 30%;
|
background-color: #fff;
|
}
|
#lineGraph {
|
width: 100%;
|
}
|
#tbHead table {
|
width: 100%;
|
}
|
#tbBrdw table {
|
width: 100%;
|
}
|
#bigLineGraph {
|
position: fixed;
|
left: 0;
|
top: -99999px;
|
width: 100%;
|
background-color: #fff;
|
z-index: 999999;
|
}
|
#bigLineGraph .graph {
|
width: 100%;
|
height: 200px;
|
}
|
</style>
|
</head>
|
<body>
|
<!--头部内容开始-->
|
<jsp:include page="Top.jsp" flush="true"/>
|
<!--头部内容结束-->
|
<!--导航开始-->
|
<jsp:include page="nav.jsp" flush="true"/>
|
<!--导航结束-->
|
<!-- 主体内容 -->
|
<div id="main">
|
|
<div id="eleInfor">
|
<span class="summary"><s:text name="Equip_usage_statistics"/>--><s:text name=""/><s:text name="Show/hide_the_query_conditions"/><!-- 显示或隐藏查询条件 --></span>
|
<div class="checkCon">
|
<form id="search_form" method="post">
|
<input type="hidden" value="1" name="bup.page.pageCurr" id="pageCurr" />
|
<input type="hidden" value="10" name="bup.page.pageSize" id="pageSize" />
|
<table>
|
<tr class="fWeight">
|
<td>省</td> <!-- 省 -->
|
<td>市</td> <!-- 市 -->
|
<td><s:text name="Computer_site"/></td> <!-- 机房站点(或机房设备) -->
|
<td><s:text name ="Statistical"/><s:text name ="Parameter"/></td> <!-- 统计参数 -->
|
|
<td colspan="2" class="FixedLen"><s:text name="Statistical_period"/></td> <!-- 统计时间段 -->
|
<td class="timebill"><s:text name="Statistical_period"/></td> <!-- 统计方式 -->
|
<td class="year-list" style="display:none"><s:text name="Year"/></td> <!-- 年份 -->
|
</tr>
|
<tr>
|
<td>
|
<select id="station_name1">
|
</select>
|
</td>
|
<td>
|
<select id="city">
|
</select>
|
</td>
|
<td>
|
<select id="station_name">
|
</select>
|
</td>
|
<td>
|
<select id="perindex" name=""></select>
|
</td>
|
|
<td class="FixedLen"><input type="text" readonly="readonly" id="startime" value="2000-01-01" onfocus="showCalendar(this)"></td>
|
<td class="FixedLen"><input type="text" readonly="readonly" id="endtime" onfocus="showCalendar(this)"></td>
|
<td class="timebill">
|
<select id="statistical-type">
|
<option value="3"><s:text name="According_annual_statistical"/></option> <!-- 按年度统计 -->
|
<option value="2"><s:text name="Quarterly_statistics"/></option> <!-- 按季度统计 -->
|
<option value="1" selected="selected"><s:text name="Month_statistical"/></option> <!-- 按月份统计 -->
|
</select>
|
</td>
|
<td class="year-list" style="display:none">
|
<select id="search-year"></select>
|
</td>
|
</tr>
|
</table>
|
</form>
|
<form id="exportable" action="ExportTable.servlet" method="post">
|
<input type="hidden" name="PageName" value="equipment.jsp"/>
|
<input type="hidden" name="table_th_arr" id="table_th_arr"/>
|
<input type="hidden" name="table_td_arr" id="table_td_arr"/>
|
</form>
|
</div>
|
</div>
|
<div class="tbl-container">
|
<!-- 表格固定的头部 -->
|
<div id="tbHead">
|
<!-- <table class="tbFixed">这里是表格固定头部的内容</table> -->
|
</div>
|
<!-- 表格滚动的部分 -->
|
<div id="tbBrdw">
|
<!-- <table class="tbScroll">这里是表格滚动的内容</table> -->
|
</div>
|
</div>
|
<div class="echarts-con">
|
<!-- 折现图 -->
|
<div id="lineGraph"></div>
|
</div>
|
|
<!-- 清除浮动 -->
|
<div class="clear"></div>
|
<!-- 分页内容 -->
|
<div id="paging">
|
<a href="javascript:" class="search"><s:text name="Search"/><!-- 查询 --></a>
|
<a href="javascript:" id="export_table"><s:text name="Export"/><!-- 导出 --></a>
|
</div>
|
</div>
|
<div id="bigLineGraph">
|
<div class="graph"></div>
|
</div>
|
<div id="allTransShade"></div>
|
<!--清除浮动-->
|
<div class="clear"></div>
|
</body>
|
<script type="text/javascript" src="js/echarts.js"></script>
|
<script type="text/javascript" src="js/loading.js"></script>
|
<script type="text/javascript" src="js/createTab.js"></script>
|
<script type="text/javascript">
|
var arr_all; //所有数据的数组
|
var totalNum=0; //总记录数
|
|
var Page = {
|
pageCurr:1,
|
pageSize:50
|
};
|
|
// 定义全局的图表x轴和y轴数据
|
var globalxData = new Array(); // x轴数据
|
var globalyData = [
|
[],
|
[],
|
[],
|
]; // y轴数据
|
|
// 定义折线统计图
|
var breakLineGraph;
|
//页面的全局变量
|
var ArrTh=new Array(); //记录表格头部数据
|
var ArrTd=new Array(); //记录表格滚动部分的数据
|
var ArrTemp=new Array(); //定义空数组用于初始化表格
|
//手动定义表格头部数据
|
$(function(){
|
//var PerArr=['电压','电流','功率','电度'];
|
var PerArr=['<s:text name="Voltage"/>','<s:text name="Current"/>','<s:text name="Power"/>','<s:text name="Electrical_degree"/>'];
|
$('.timebill').hide();
|
for(var i=0;i<PerArr.length;i++){
|
$('#perindex').append('<option value="'+(i+1)+'"></option>').find('option').eq(i).text(PerArr[i]);
|
}
|
$('#perindex').change(function(){
|
if($('#perindex option:selected').text()=='<s:text name="Electrical_degree"/>'){
|
$('.timebill').show();
|
hideOrShow();
|
}else{
|
$('.timebill').hide();
|
$('.year-list').hide();
|
$('.FixedLen').show();
|
}
|
});
|
|
$('#statistical-type').change(function() {
|
hideOrShow();
|
});
|
});
|
|
//ArrTh=['设备ID','设备名', '时间' ,'移动','电信','联通'];
|
ArrTh=['<s:text name="Equipment"/>ID','<s:text name="Device_name"/>', '<s:text name="Time"/>' ,'<s:text name="Mobile"/>','<s:text name="Telecom"/>','<s:text name="Unicom"/>'];
|
//console.log(ArrTh);
|
//通过头部数据定义表格滚动数据(后期用后台数据替换)
|
for(var i=0;i<100;i++) //i记录行号
|
{
|
for(var k=0;k<ArrTh.length;k++) //k为列号
|
{
|
var n=i*ArrTh.length+k;
|
ArrTd[n]=ArrTh[k]+i;
|
}
|
}
|
//初始化表格页面加载后只显示表头部分
|
createTable('tbHead','tbFixed',ArrTh.length,ArrTh,ArrTemp);
|
createTable('tbBrdw','tbScroll',ArrTh.length,ArrTh,ArrTemp);
|
setTblWidth($('#tbHead'), $('#tbBrdw'));
|
|
//页面点击事件
|
$(document).ready(function(){
|
//点击故障信息统计查询显示和隐藏查询条件
|
var checkConHei=$('#eleInfor .checkCon').height(); //获取条件选择容器的高度
|
var tbBrdwHei=$('#tbBrdw').height(); //获取滚动表格容器的初始高度
|
// 点击条件选择隐藏条件选择内容
|
$('#eleInfor .summary').click(function() {
|
$('#eleInfor .checkCon').slideToggle(function() {
|
setTblConHt();
|
breakLineGraph.resize();
|
});
|
});
|
|
//将透明遮罩随着屏幕滚动而滚动
|
$(document).scroll(function(){
|
var scrollY=$(this).scrollTop();
|
$('#allTransShade').css('top',scrollY+'px');
|
});
|
//表格的头部和tbody同步左右滚动
|
$('#tbBrdw').scroll(function(){
|
var scrollX=$(this).scrollLeft(); //左右滚动的距离
|
$('#tbHead .tbFixed').css('left',-scrollX+'px');
|
});
|
});
|
|
|
$(document).ready(function(){
|
//页面加载时初始化时间
|
$("#endtime").attr("value",new Date().format("yyyy-MM-dd"));
|
});
|
|
//点击导出触发事件
|
$('#export_table').click(function(){
|
exprotTable($('#tbBrdw .tbScroll thead th'),$('#tbBrdw .tbScroll tbody td'),$('#exportable'),$('#table_th_arr'),$('#table_td_arr'));
|
});
|
|
//获取表格中的数据并提交数据
|
function exprotTable(eleTh,eleTd,eleform,eleTh_Text,eleTd_Text){
|
//alert("导出");
|
var ArrTh=new Array();
|
for(var i=0;i<eleTh.length;i++)
|
{
|
ArrTh[i]=eleTh.eq(i).text();
|
}
|
var ArrTd="";
|
for(var i=0;i<eleTd.length;i++)
|
{
|
ArrTd+=eleTd.eq(i).text()+"&";
|
}
|
eleTh_Text.attr('value',ArrTh);
|
eleTd_Text.attr('value',ArrTd);
|
//console.info(ArrTh);
|
//console.info(ArrTd);
|
eleform.submit();
|
}
|
|
//首页
|
$('#home').click(function(){
|
var currentPage=$('#pageCurr').attr('value');
|
if(currentPage!=1){
|
$("#pageCurr").attr("value",1);
|
$("#paging .search").eq(0).click();
|
}
|
});
|
|
//点击上一页
|
$("#pre").click(function(){
|
var currentPage=$('#pageCurr').attr('value');
|
if(currentPage>1){
|
$("#pageCurr").attr("value",currentPage-1);
|
$("#paging .search").eq(0).click();
|
}
|
});
|
|
//点击下一页
|
$("#next_p").click(function(){
|
if(totalNum>0){
|
var currentPage=$('#pageCurr').attr('value');
|
//console.info(currentPage);
|
var PageSize=$('#pageSize').attr('value');
|
var totalPage=Math.ceil(totalNum/PageSize);
|
if(currentPage<totalPage){
|
$("#pageCurr").attr("value",parseInt(currentPage)+1);
|
$("#paging .search").eq(0).click();
|
}
|
}
|
});
|
|
//尾页
|
$('#last').click(function(){
|
var PageSize=$('#pageSize').attr('value');
|
var pageNum=Math.ceil(totalNum/PageSize);
|
var currPage=$('#pageCurr').attr('value');
|
if(currPage<pageNum){
|
$('#pageCurr').attr('value',pageNum);
|
$("#paging .search").eq(0).click();
|
}
|
});
|
|
//设置每页行数
|
$('#number').blur(function(){
|
var value=$('#number').attr("value");
|
//当输入的数大于0时
|
if(value>0){
|
value=parseInt(value);
|
$('#number').attr('value',value);
|
$('#pageSize').attr('value',value);
|
}else{
|
//当输入非法数字时
|
alert("请输入合法的数字"); /* 请输入合法的整数 */
|
var PageSize=$('#pageSize').attr('value');
|
$('#number').attr('value',PageSize);
|
}
|
});
|
|
//填写完跳转到指定页
|
$('#page_num').blur(function(){
|
var tarpage=$('#page_num').attr('value');
|
if(tarpage>0){
|
|
}else{
|
alert("请输入合法的数字");
|
var currentPage=$('#pageCurr').attr('value');
|
$('#page_num').attr('value',currentPage);
|
}
|
});
|
|
//点击跳转
|
$('#go').click(function(){
|
var tarpage=$('#page_num').attr('value');
|
tarpage=parseInt(tarpage);
|
if(totalNum>0){
|
var PageSize=$('#pageSize').attr('value');
|
var pageNum=Math.ceil(totalNum/PageSize);
|
if(tarpage>pageNum){
|
tarpage=pageNum;
|
$('#page_num').attr('value',pageNum);
|
}
|
$('#pageCurr').attr('value',tarpage);
|
$("#paging .search").eq(0).click();
|
}else{
|
$('#pageCurr').attr('value',$('#pageCurr').attr('value'));
|
}
|
});
|
|
// 定义折线统计图
|
var breakLineGraph;
|
var bigBreakLineGraph;
|
$(function() {
|
// 页面的初始化
|
setTblConHt();
|
|
var lineGraph = $('#lineGraph').get(0); // 折线统计图容器
|
breakLineGraph = echarts.init(lineGraph); // 初始化echarts对象
|
|
/* var bigLineGraph = $('#bigLineGraph .graph').get(0);
|
bigBreakLineGraph = echarts.init(bigLineGraph); */
|
|
//console.info(breakLineGraph);
|
//var lname = ['移动', '电信', '联通'];
|
var lname = ['<s:text name="Mobile"/>', '<s:text name="Telecom"/>', '<s:text name="Unicom"/>'];
|
var xData = [1, 2, 3, 4, 5, 6, 7];
|
var sData = [];
|
creatLineGraph(breakLineGraph, lname, xData, sData, 'V');
|
//creatLineGraph(bigBreakLineGraph, lname, xData, sData, 'V');
|
|
$('#perindex').change(function() {
|
searchDevData();
|
});
|
|
$('#statistical-type').change(function(){
|
searchDevData();
|
});
|
|
// 双击折线图放大
|
var eConWidth = $('.echarts-con').width();
|
var eConHt = $('.echarts-con').height();
|
var isBig = true;
|
$('#lineGraph').dblclick(function() {
|
var winHt = $(window).height();
|
if(isBig) {
|
$('.echarts-con').css({
|
'position':'relative',
|
'float': 'right',
|
'z-index': 999999,
|
'width': '30%',
|
'height': eConHt +'px'
|
});
|
$('#lineGraph').animate({'height': eConHt+'px'}, function(){
|
breakLineGraph.resize();
|
});
|
isBig = false;
|
}else {
|
$('.echarts-con').css({
|
'position':'fixed',
|
'top': 0,
|
'left': 0,
|
'z-index': 999999,
|
'width': '100%',
|
'height': winHt +'px'
|
});
|
$('#lineGraph').animate({'height': winHt+'px'}, function(){
|
breakLineGraph.resize();
|
});
|
isBig = true;
|
}
|
});
|
|
// 双击放大折线图隐藏
|
/* $('#bigLineGraph').dblclick(function() {
|
$('#bigLineGraph').animate({top: '-99999px'});
|
}); */
|
|
$(window).resize(function() {
|
// 页面的初始化
|
setTblConHt();
|
breakLineGraph.resize();
|
setTblWidth($('#tbHead'), $('#tbBrdw'));
|
});
|
});
|
|
// 初始化页面的高度
|
function setTblConHt() {
|
var winHt = $(window).height(); // 获取屏幕可视区域的高度
|
var bodyHt = $('body').height(); // 获取body的高度
|
var tblConHt = $('#tbBrdw').height(); // 获取表格容器当前高度
|
|
// 获取屏幕和body的高度差
|
var shiftHt = winHt - bodyHt - 32;
|
|
if(tblConHt> 300 || shiftHt > 0) {
|
$('#tbBrdw').height(tblConHt + shiftHt);
|
}else {
|
$('#tbBrdw').height(300);
|
}
|
|
var leftHt = $('.tbl-container').height();
|
$('#lineGraph').height(leftHt);
|
}
|
|
// 创建折线统计图
|
function creatLineGraph(breakLine, lname, xdata, sdata, unit) {
|
var option={
|
tooltip:{
|
//show:true,
|
trigger: 'axis',
|
|
},
|
dataZoom: [
|
{
|
show: true,
|
realtime: true,
|
start: 30,
|
end: 70,
|
},
|
{
|
type: 'inside',
|
realtime: true,
|
start: 30,
|
end: 70,
|
}
|
],
|
legend: {
|
data: lname
|
},
|
grid: {
|
top:'6%',
|
left: '1%',
|
right: '5%',
|
bottom: '10%',
|
containLabel: true
|
},
|
calculable : true,
|
xAxis:{
|
data:xdata
|
},
|
yAxis:[{
|
type:'value',
|
axisLabel:{
|
formatter:function(value){
|
//解决原点处带符号问题
|
if(value==0)
|
{
|
return value;
|
}else{
|
return value +unit;
|
}
|
}
|
}
|
}],
|
series:function(){
|
var serie=[];
|
for( var i=0;i<sdata.length;i++){
|
var oItem={
|
type:'line',
|
symbol:'pin',
|
name:lname[i],
|
tooltip:{
|
show:true,
|
trigger:'axis',
|
showContent:true
|
},
|
data:sdata[i]
|
};
|
serie.push(oItem);
|
}
|
return serie;
|
}()
|
};
|
// 使用刚指定的配置项和数据显示图表。
|
//console.info(option);
|
breakLine.setOption(option);
|
}
|
|
/**
|
生成柱状图
|
@param barObj echarts对象
|
@param xdata 柱状图x轴的数据 类型:array
|
@param barList 柱状图y轴数据结构为[{lname:str,data:arr},{lname:str,data:arr}...]
|
*/
|
|
function createBar(barObj, xdata, barList) {
|
var option = {
|
tooltip : {
|
trigger: 'axis',
|
axisPointer : { // 坐标轴指示器,坐标轴触发有效
|
type : 'shadow' // 默认为直线,可选为:'line' | 'shadow'
|
}
|
},
|
legend: function() {
|
var item = new Object();
|
var lname = new Array();
|
for(var i = 0; i < barList.length; i++) {
|
lname.push(barList[i].lname);
|
}
|
item.data = lname;
|
return item;
|
}(),
|
grid: {
|
left: '3%',
|
right: '4%',
|
bottom: '3%',
|
containLabel: true
|
},
|
xAxis: [
|
{
|
type : 'category',
|
data : xdata
|
}
|
],
|
yAxis : [
|
{
|
type : 'value',
|
name : 'kW·h'
|
}
|
],
|
series : function() {
|
var serie = new Array();
|
for(var i = 0; i < barList.length; i++) {
|
var Item = {
|
name:barList[i].lname,
|
type:'bar',
|
data:barList[i].data
|
};
|
serie.push(Item);
|
}
|
return serie;
|
}()
|
};
|
barObj.setOption(option);
|
}
|
|
// 设置表格的宽度一致
|
function setTblWidth(tblHt, tblBd) {
|
var tblBdWidth = tblBd.find('table').width();
|
tblHt.find('table').width(tblBdWidth);
|
}
|
|
// 通过统计参数改变页面内容
|
function changePageContent(num, echa) {
|
var _num = parseInt(num);
|
switch(_num) {
|
case 1: {
|
showEcharts($('#lineGraph'), echa);
|
break;
|
}
|
case 2: {
|
showEcharts($('#lineGraph'), echa);
|
break;
|
}
|
case 3: {
|
showEcharts($('#lineGraph'), echa);
|
break;
|
}
|
case 4: {
|
hideEcharts($('#lineGraph'), echa);
|
break;
|
}
|
}
|
}
|
|
function hideEcharts(ele, echa) {
|
var eleWidth = ele.width();
|
if(eleWidth < 10) {
|
return;
|
}
|
ele.animate({'width': 0}, function() {
|
echa.resize();
|
$('.tbl-container').animate({'width': '100%'}, function() {
|
setTblWidth($('#tbHead'), $('#tbBrdw'));
|
});
|
});
|
}
|
|
function showEcharts(ele, echa) {
|
var eleWidth = ele.width();
|
if(eleWidth > 10) {
|
return;
|
}
|
$('.tbl-container').animate({'width': '70%'}, function() {
|
setTblWidth($('#tbHead'), $('#tbBrdw'));
|
ele.animate({'width': '30%'}, function() {
|
echa.resize();
|
});
|
});
|
}
|
|
$('#paging .search').click(function(){
|
searchDevData();
|
});
|
|
//根据条件查询数据
|
function searchDevData(){
|
$('#tbBrdw').scrollTop(0); // 切换查询条件返回到顶部
|
var select = $("#perindex").val();
|
//console.info(select);
|
if(select == 4){
|
//查询电度
|
searchDiandu();
|
}else{
|
//查询其他
|
searchElse();
|
}
|
}
|
|
//查询电度
|
function searchDiandu(){
|
loading.showLoading();
|
Page.pageCurr = 1; // 初始化当前页为1
|
// 初始化x轴和y轴数据
|
globalxData = new Array(); // x轴数据
|
globalyData = []; // y轴数据
|
//console.info("查询电度");
|
var type = $("#statistical-type").val();
|
var xdata = getXData(type);
|
var ydata = new Array();
|
var temp = createSearchParam();
|
var json = JSON.stringify(temp);
|
|
var yarr = {lname:"<s:text name='Mobile'/>",data:new Array()};
|
var larr = {lname:"<s:text name='Unicom'/>",data:new Array()};
|
var darr = {lname:"<s:text name='Telecom'/>",data:new Array()};
|
|
ArrTd = new Array();
|
$.ajax({
|
type: "post",
|
url: "Batt_electricityAction!serchByCondition",
|
async:true,
|
dataType:'text',
|
data:"json="+json,
|
success: function(data){
|
Page.pageCurr++; // 查询成功page页加1
|
data = eval('('+data+')');
|
var model = eval('('+data.result+')');
|
console.info(model);
|
if(model.length > 0){
|
|
for(var i=0;i<model.length;i++){
|
|
if(type == 3){
|
//按年统计
|
xdata.push(model[i].code);
|
|
yarr.data.push((model[i].lowCA).toFixed(1)); //移动
|
darr.data.push((model[i].lowCH).toFixed(1)); //电信
|
larr.data.push((model[i].lowRA).toFixed(1)); //联通
|
}else{
|
//按月份统计和按季度统计
|
if(xdata.length >= model[i].sum){
|
yarr.data[model[i].sum-1] = ((model[i].lowCA).toFixed(1));
|
darr.data[model[i].sum-1] = ((model[i].lowCH).toFixed(1));
|
larr.data[model[i].sum-1] = ((model[i].lowRA).toFixed(1));
|
}
|
|
}
|
|
|
ArrTd.push(model[i].newsum); //设备ID
|
ArrTd.push(model[i].msg); //设备名称
|
ArrTd.push(model[i].msgN); //时间
|
ArrTd.push((model[i].lowCA).toFixed(1)); //移动电度
|
ArrTd.push((model[i].lowCH).toFixed(1)); //电信电度
|
ArrTd.push((model[i].lowRA).toFixed(1)); //联通电度
|
|
|
}
|
ydata.push(yarr);
|
ydata.push(darr);
|
ydata.push(larr);
|
|
//console.info(yarr);
|
//console.info(larr);
|
//console.info(darr);
|
}
|
// 清除折线图
|
breakLineGraph.clear();
|
//bigBreakLineGraph.clear();
|
|
createBar(breakLineGraph, xdata, ydata);
|
//createBar(bigBreakLineGraph, xdata, ydata);
|
globalxData = xdata;
|
globalyData = ydata;
|
|
|
createTable('tbHead','tbFixed',ArrTh.length,ArrTh,ArrTd);
|
createTable('tbBrdw','tbScroll',ArrTh.length,ArrTh,ArrTd);
|
setTblWidth($('#tbHead'), $('#tbBrdw'));
|
loading.hideLoading();
|
},
|
error:function(){
|
noContent.showNoContent("查询失败,请检查网络连接!");
|
loading.hideLoading();
|
}
|
});
|
}
|
|
|
function searchElse(){
|
loading.showLoading();
|
Page.pageCurr = 1; // 初始化当前页为1
|
//console.info("查询电压电流功率");
|
var statis_type = $('#perindex').val();
|
var temp = createSearchParam();
|
var json = JSON.stringify(temp);
|
var xdata = new Array();
|
var ydata = new Array();
|
ArrTd = new Array();
|
$.ajax({
|
type: "post",
|
url: "Batt_DevdischargeAction!serchByCondition",
|
async:true,
|
dataType:'text',
|
data:"json="+json,
|
success: function(data){
|
Page.pageCurr++; // 查询成功page页加1
|
data = eval('('+data+')');
|
var model = eval('('+data.result+')');
|
console.info(model);
|
var yidong = new Array();
|
var liantong = new Array();
|
var dianxin = new Array();
|
if(model.code > 0){
|
for(var i=0;i<model.data.length;i++){
|
ArrTd.push(model.data[i].bd_CM.dev_id); //设备ID
|
ArrTd.push(model.data[i].bd_CM.dev_name); //设备名称
|
ArrTd.push(model.data[i].bd_CM.dev_recordtime); //时间
|
xdata.push(model.data[i].bd_CM.dev_recordtime);
|
var CM_value = 0;
|
var CT_value = 0;
|
var CU_value = 0;
|
if(statis_type == 1){
|
//电压
|
CM_value = parseFloat(model.data[i].bd_CM.dev_vol == undefined?0:model.data[i].bd_CM.dev_vol).toFixed(1);
|
CT_value = parseFloat(model.data[i].bd_CT.dev_vol == undefined?0:model.data[i].bd_CT.dev_vol).toFixed(1);
|
CU_value = parseFloat(model.data[i].bd_CU.dev_vol == undefined?0:model.data[i].bd_CU.dev_vol).toFixed(1);
|
}else if(statis_type == 2){
|
//电流
|
CM_value = parseFloat(model.data[i].bd_CM.dev_curr == undefined?0:model.data[i].bd_CM.dev_curr).toFixed(1);
|
CT_value = parseFloat(model.data[i].bd_CT.dev_curr == undefined?0:model.data[i].bd_CT.dev_curr).toFixed(1);
|
CU_value = parseFloat(model.data[i].bd_CU.dev_curr == undefined?0:model.data[i].bd_CU.dev_curr).toFixed(1);
|
}else{
|
//功率
|
CM_value = parseFloat(model.data[i].bd_CM.dev_power == undefined?0:model.data[i].bd_CM.dev_power).toFixed(1);
|
CT_value = parseFloat(model.data[i].bd_CT.dev_power == undefined?0:model.data[i].bd_CT.dev_power).toFixed(1);
|
CU_value = parseFloat(model.data[i].bd_CU.dev_power == undefined?0:model.data[i].bd_CU.dev_power).toFixed(1);
|
}
|
|
yidong.push(CM_value);
|
dianxin.push(CT_value);
|
liantong.push(CU_value);
|
|
|
ArrTd.push(CM_value); //移动电度
|
ArrTd.push(CT_value); //电信电度
|
ArrTd.push(CU_value); //联通电度
|
|
}
|
ydata.push(yidong);
|
ydata.push(dianxin);
|
ydata.push(liantong);
|
}else{
|
noContent.showNoContent();
|
}
|
//console.info(ydata);
|
createTable('tbHead','tbFixed',ArrTh.length,ArrTh,ArrTd);
|
createTable('tbBrdw','tbScroll',ArrTh.length,ArrTh,ArrTd);
|
setTblWidth($('#tbHead'), $('#tbBrdw'));
|
|
// 清除折线图
|
breakLineGraph.clear();
|
//bigBreakLineGraph.clear();
|
var lname = ['<s:text name="Mobile"/>', '<s:text name="Telecom"/>', '<s:text name="Unicom"/>'];
|
var value = $('#perindex').val();
|
changeEcharts(breakLineGraph, lname, xdata, ydata, value);
|
|
globalxData = xdata;
|
globalyData = ydata;
|
|
//changeEcharts(bigBreakLineGraph, lname, xdata, ydata, value);
|
loading.hideLoading();
|
},
|
error:function(){
|
noContent.showNoContent("查询失败,请检查网络连接!");
|
loading.hideLoading();
|
}
|
});
|
}
|
// 省-市-机房-电池组
|
$(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>');
|
}
|
findCity();
|
});
|
});
|
|
// 根据维护区的内容查询市
|
function findCity() {
|
var data = {
|
StationName1: $("#station_name1").val()
|
};
|
// 请求获取当前省下的市
|
$.ajax({
|
type: "post",
|
url: "BattInfAction!serchStationName2",
|
async:true,
|
dataType:'json',
|
data:"json = "+JSON.stringify(data),
|
success: function(data){
|
var rs = JSON.parse(data.result);
|
var $select = $("#city");
|
if(rs.code == 1) {
|
var _data= rs.data;
|
// 根据数据构造生成下拉列表的数据
|
var optsList = [];
|
for(var i=0;i<_data.length;i++){
|
var __data = _data[i];
|
var tmp = getOptionsData(__data.StationName2, __data.StationName2, __data);
|
optsList.push(tmp);
|
}
|
// 根据数据生成下拉列表
|
createOptions($select, optsList, true);
|
}else {
|
$select.text('').html('<option>暂无可测市</option>');
|
}
|
findStationNamebyStationname1();
|
}
|
});
|
}
|
|
//当维护区的值变换时更新市
|
$('#station_name1').change(function(){
|
findCity();
|
});
|
|
//当维护区的值变换时更新机房站点
|
$('#city').change(function(){
|
findStationNamebyStationname1();
|
});
|
|
//根据省,市查询站点
|
function findStationNamebyStationname1(){
|
var tmp = {
|
StationName1:$("#station_name1").val(),
|
StationName2:$("#city").val()
|
};
|
//var selectvalue=$("#station_name1 option:selected").val();
|
//alert(selectvalue);
|
$.post("BattInfAction!serchStationName3","json="+JSON.stringify(tmp),function(data){
|
var rs = JSON.parse(data.result);
|
if(rs.code==1){
|
var _data = rs.data;
|
var $select = $("#station_name");
|
// 根据数据构造生成下拉列表的数据
|
var optsList = [];
|
for(var i=0;i<_data.length;i++){
|
var __data = _data[i];
|
var _attr = {
|
StationId: __data.StationId
|
};
|
var tmp = getOptionsData(__data.StationName3, __data.StationName, __data, _attr);
|
optsList.push(tmp);
|
}
|
|
// 根据数据生成下拉列表
|
createOptions($select, optsList);
|
}else{
|
$("#station_name").text('').html('<option>暂无可测机房站点</option>');
|
}
|
});
|
}
|
|
// 查询信息
|
function createSearchParam(){
|
var temp = {
|
StationId:$('#station_name').val(),
|
StationName1:$('#station_name1').val(),
|
StationName2:$('#city').val(),
|
BattProductDate:$('#startime').val()+" 00:00:00",
|
BattProductDate1:$('#endtime').val()+" 23:59:59",
|
MonCount:Page.pageCurr,
|
MonNum:Page.pageSize,
|
SignalName:$('#statistical-type').val(),
|
};
|
var target = $('#perindex').val();
|
var statisticaltype = $('#statistical-type').val();
|
if(target == 4 && statisticaltype <3){
|
temp.BattProductDate = $('#search-year').val()+"-01-01 00:00:00";
|
temp.BattProductDate1 = $('#search-year').val()+"-12-31 23:59:59";
|
}
|
//console.info(temp);
|
return temp;
|
}
|
|
// 更改折线统计图内容
|
function changeEcharts(breakLine, lname, xdata, sdata, num) {
|
var _num = parseInt(num);
|
switch(_num) {
|
case 1: {
|
creatLineGraph(breakLine, lname, xdata, sdata, 'V');
|
break;
|
}
|
case 2: {
|
creatLineGraph(breakLine, lname, xdata, sdata, 'A');
|
break;
|
}
|
case 3: {
|
creatLineGraph(breakLine, lname, xdata, sdata, 'W');
|
break;
|
}
|
}
|
}
|
|
//获取柱状图的横轴值
|
function getXData(value){
|
var arr = new Array();
|
//按季度统计
|
if(value == 2){
|
for(var i = 1 ;i<5;i++){
|
arr.push("第"+i+"季度");
|
}
|
//按月份统计
|
}else if(value == 1){
|
for(var i = 1 ;i<=12;i++){
|
arr.push(i+"月");
|
}
|
}
|
return arr;
|
}
|
|
// 根据统计方式显示和隐藏年份和统计时间段
|
function hideOrShow() {
|
var statType = $('#statistical-type').val();
|
if(statType != 3) {
|
$('.FixedLen').hide();
|
$('.year-list').show();
|
}else {
|
$('.FixedLen').show();
|
$('.year-list').hide();
|
}
|
}
|
|
// 滚动表格事件
|
var isCanAdd = true;
|
$(function() {
|
$('#tbBrdw').scroll(function() {
|
//whileScrollBottom($(this));
|
});
|
});
|
|
// 向电镀的表格添加行
|
function addContToDianDu() {
|
loading.showLoading();
|
//console.info("查询电度");
|
var type = $("#statistical-type").val();
|
var xdata = getXData(type);
|
var ydata = new Array();
|
var temp = createSearchParam();
|
var json = JSON.stringify(temp);
|
|
var yarr = {lname:"<s:text name='Mobile'/>",data:new Array()};
|
var larr = {lname:"<s:text name='Unicom'/>",data:new Array()};
|
var darr = {lname:"<s:text name='Telecom'/>",data:new Array()};
|
|
$.ajax({
|
type: "post",
|
url: "Batt_electricityAction!serchByCondition",
|
async:true,
|
dataType:'text',
|
data:"json="+json,
|
success: function(data){
|
isCanAdd = true;
|
Page.pageCurr++; // 查询成功page页加1
|
data = eval('('+data+')');
|
var model = eval('('+data.result+')');
|
console.info(model);
|
if(model.length > 0){
|
|
for(var i=0;i<model.length;i++){
|
var TrData = new Array();
|
if(type == 3){
|
//按年统计
|
xdata.push(model[i].code);
|
|
yarr.data.push((model[i].lowCA).toFixed(1)); //移动
|
darr.data.push((model[i].lowCH).toFixed(1)); //电信
|
larr.data.push((model[i].lowRA).toFixed(1)); //联通
|
}else{
|
//按月份统计和按季度统计
|
if(xdata.length >= model[i].sum){
|
yarr.data[model[i].sum-1] = ((model[i].lowCA).toFixed(1));
|
darr.data[model[i].sum-1] = ((model[i].lowCH).toFixed(1));
|
larr.data[model[i].sum-1] = ((model[i].lowRA).toFixed(1));
|
}
|
|
}
|
|
|
ArrTd.push(model[i].newsum); //设备ID
|
ArrTd.push(model[i].msg); //设备名称
|
ArrTd.push(model[i].msgN); //时间
|
ArrTd.push((model[i].lowCA).toFixed(1)); //移动电度
|
ArrTd.push((model[i].lowCH).toFixed(1)); //电信电度
|
ArrTd.push((model[i].lowRA).toFixed(1)); //联通电度
|
|
// 一行的数据
|
TrData.push(model[i].newsum); //设备ID
|
TrData.push(model[i].msg); //设备名称
|
TrData.push(model[i].msgN); //时间
|
TrData.push((model[i].lowCA).toFixed(1)); //移动电度
|
TrData.push((model[i].lowCH).toFixed(1)); //电信电度
|
TrData.push((model[i].lowRA).toFixed(1)); //联通电度
|
|
addFullTr($('#tbHead'), $('#tbBrdw'), ArrTh, TrData);
|
}
|
ydata.push(yarr);
|
ydata.push(darr);
|
ydata.push(larr);
|
|
}
|
addGlobalX(xdata);
|
addGlobalY(ydata);
|
// 清除折线图
|
breakLineGraph.clear();
|
//bigBreakLineGraph.clear();
|
createBar(breakLineGraph, globalxData, globalyData);
|
createBar(bigBreakLineGraph, globalxData, globalyData);
|
|
|
loading.hideLoading();
|
},
|
error:function(){
|
noContent.showNoContent("查询失败,请检查网络连接!");
|
loading.hideLoading();
|
}
|
});
|
}
|
|
// 向非电镀的表格内添加行
|
function addContToElse(){
|
loading.showLoading();
|
//console.info("查询电压电流功率");
|
var statis_type = $('#perindex').val();
|
//alert(Page.pageCurr);
|
var temp = createSearchParam();
|
var json = JSON.stringify(temp);
|
var xdata = new Array();
|
var ydata = new Array();
|
$.ajax({
|
type: "post",
|
url: "Batt_DevdischargeAction!serchByCondition",
|
async:true,
|
dataType:'text',
|
data:"json="+json,
|
success: function(data){
|
isCanAdd = true;
|
Page.pageCurr++; // 查询成功page页加1
|
data = eval('('+data+')');
|
var model = eval('('+data.result+')');
|
console.info(model);
|
var yidong = new Array();
|
var liantong = new Array();
|
var dianxin = new Array();
|
if(model.code > 0){
|
for(var i=0;i<model.data.length;i++){
|
TrData = new Array();
|
ArrTd.push(model.data[i].bd_CM.dev_id); //设备ID
|
ArrTd.push(model.data[i].bd_CM.dev_name); //设备名称
|
ArrTd.push(model.data[i].bd_CM.dev_recordtime); //时间
|
xdata.push(model.data[i].bd_CM.dev_recordtime);
|
var CM_value = 0;
|
var CT_value = 0;
|
var CU_value = 0;
|
if(statis_type == 1){
|
//电压
|
CM_value = parseFloat(model.data[i].bd_CM.dev_vol == undefined?0:model.data[i].bd_CM.dev_vol).toFixed(1);
|
CT_value = parseFloat(model.data[i].bd_CT.dev_vol == undefined?0:model.data[i].bd_CT.dev_vol).toFixed(1);
|
CU_value = parseFloat(model.data[i].bd_CU.dev_vol == undefined?0:model.data[i].bd_CU.dev_vol).toFixed(1);
|
}else if(statis_type == 2){
|
//电流
|
CM_value = parseFloat(model.data[i].bd_CM.dev_curr == undefined?0:model.data[i].bd_CM.dev_curr).toFixed(1);
|
CT_value = parseFloat(model.data[i].bd_CT.dev_curr == undefined?0:model.data[i].bd_CT.dev_curr).toFixed(1);
|
CU_value = parseFloat(model.data[i].bd_CU.dev_curr == undefined?0:model.data[i].bd_CU.dev_curr).toFixed(1);
|
}else{
|
//功率
|
CM_value = parseFloat(model.data[i].bd_CM.dev_power == undefined?0:model.data[i].bd_CM.dev_power).toFixed(1);
|
CT_value = parseFloat(model.data[i].bd_CT.dev_power == undefined?0:model.data[i].bd_CT.dev_power).toFixed(1);
|
CU_value = parseFloat(model.data[i].bd_CU.dev_power == undefined?0:model.data[i].bd_CU.dev_power).toFixed(1);
|
}
|
|
yidong.push(CM_value);
|
dianxin.push(CT_value);
|
liantong.push(CU_value);
|
|
|
ArrTd.push(CM_value); //移动电度
|
ArrTd.push(CT_value); //电信电度
|
ArrTd.push(CU_value); //联通电度
|
|
TrData.push(model.data[i].bd_CM.dev_id); //设备ID
|
TrData.push(model.data[i].bd_CM.dev_name); //设备名称
|
TrData.push(model.data[i].bd_CM.dev_recordtime); //时间
|
TrData.push(CM_value); //移动电度
|
TrData.push(CT_value); //电信电度
|
TrData.push(CU_value); //联通电度
|
addFullTr($('#tbHead'), $('#tbBrdw'), ArrTh, TrData);
|
}
|
ydata.push(yidong);
|
ydata.push(dianxin);
|
ydata.push(liantong);
|
}else{
|
noContent.showNoContent();
|
}
|
|
addGlobalX(xdata);
|
addGlobalY(ydata);
|
// 设置breakLindeGraph的内容
|
/* breakLineGraph.setOption({
|
xAxis: {
|
data: globalxData
|
},
|
series: [{
|
data: globalyData
|
}]
|
}); */
|
// 清除折线图
|
breakLineGraph.clear();
|
//bigBreakLineGraph.clear();
|
var lname = ['<s:text name="Mobile"/>', '<s:text name="Telecom"/>', '<s:text name="Unicom"/>'];
|
var value = $('#perindex').val();
|
changeEcharts(breakLineGraph, lname, globalxData, globalyData, value);
|
|
loading.hideLoading();
|
},
|
error:function(){
|
noContent.showNoContent("查询失败,请检查网络连接!");
|
loading.hideLoading();
|
}
|
});
|
}
|
|
// 根据当前选中的统计参数向表格中添加行
|
function addContByParam() {
|
isCanAdd = false;
|
var select = $("#perindex").val();
|
//console.info(select);
|
if(select == 4){
|
//向电度表格添加行
|
addContToDianDu();
|
}else{
|
//向其他表格添加行
|
addContToElse();
|
}
|
}
|
|
// 如果容器滚动到底部就触发的事件
|
function whileScrollBottom(ele) {
|
var _eleHt = ele.height();
|
var _tblHt = ele.find('table').height();
|
var _scrollTop = ele.scrollTop();
|
var bottom = _tblHt - _eleHt - _scrollTop;
|
console.info(bottom);
|
if((bottom == 0 || bottom < 0) && isCanAdd) {
|
//addContByParam();
|
}
|
}
|
|
// 改变全局变量globalxData的值
|
function addGlobalX(xdata) {
|
for(var i = 0; i < xdata.length; i++) {
|
globalxData.push(xdata[i]);
|
}
|
}
|
|
// 改变全局变量globalyDatad的值
|
function addGlobalY(ydata) {
|
for(var i = 0; i < globalyData.length; i++) {
|
for(var j = 0; j < ydata[i].length; j++) {
|
console.info(ydata[i][j]);
|
globalyData[i].push(ydata[i][j]);
|
}
|
}
|
}
|
</script>
|
</html>
|