<%@ 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 http-equiv="X-UA-Compatible" content="IE=EmulateIE10" />
|
<meta charset="UTF-8">
|
<title><s:text name="Battery_maintenance_statistical"/></title>
|
<link rel="stylesheet" type="text/css" href="css/basic.css" />
|
<link rel="stylesheet" type="text/css" href="css/BrdwDeal.css" />
|
<script type="text/javascript" src="js/frame.js"></script>
|
<script type="text/javascript" src="js/jquery-1.8.3.js"></script>
|
<script type="text/javascript" src="js/base.js"></script>
|
|
|
</head>
|
<body>
|
<!--头部内容开始-->
|
<jsp:include page="Top.jsp" flush="true"/>
|
<!--头部内容结束-->
|
<!-- 主体内容 -->
|
<div id="main">
|
<!--导航开始-->
|
<jsp:include page="nav.jsp" flush="true"/>
|
<!--导航结束-->
|
<div id="eleInfor">
|
<span class="summary"><s:text name="Battery_maintenance_statistical"/>--><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><s:text name="Maintenance_area"/></td> <!-- 维护区 -->
|
<td><s:text name="Person_liable"/></td> <!-- 包机人 -->
|
<td><s:text name="Battery_brand"/></td> <!-- 电池品牌 -->
|
<td colspan="2"><s:text name="Statistical_period"/></td> <!-- 统计时间段 -->
|
<td><s:text name="Statistical_method"/></td> <!-- 统计方式 -->
|
</tr>
|
<tr>
|
<td>
|
<select name="bup.binf.stationName1" id="station_name1">
|
</select>
|
</td>
|
<td>
|
<select name="bup.binf.stationName" id="baojiren">
|
</select>
|
</td>
|
<td>
|
<select name="bup.binf.BattProducer" id="batt_producer">
|
</select>
|
</td>
|
<td class="FixedLen"><input type="text" readonly="readonly" id="startime" name="bup.binf.BattProductDate" onfocus="new Calendar().show(this)"></td>
|
<td class="FixedLen"><input type="text" readonly="readonly" id="endtime" name="bup.binf.BattProductDate1" onfocus="new Calendar().show(this)"></td>
|
<td>
|
<select name="bup.binf.DeviceName" id="DeviceName">
|
<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>
|
</tr>
|
</table>
|
</form>
|
<form id="exportable" action="ExportTable.servlet" method="post">
|
<input type="hidden" name="PageName" value="eleBrdwDeal.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 id="tbHead">
|
<!-- <table class="tbFixed">这里是表格固定头部的内容</table> -->
|
</div>
|
<!-- 表格滚动的部分 -->
|
<div id="tbBrdw">
|
<!-- <table class="tbScroll">这里是表格滚动的内容</table> -->
|
</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>
|
<s:text name="At_present"/><!-- 当前 --><span id="current">1/0</span>
|
<span><s:text name="Each_page"/><!-- 每页 --><input type="text" id="number" value="10"/><s:text name="Item"/><!-- 条 --></span>
|
<s:text name="Total_data"/><!-- 数据总量 --><span id="total">0</span>
|
<a href="javascript:" id="home"><s:text name="HomePage"/><!-- 首页 --></a>
|
<a href="javascript:" id="pre"><s:text name="Page_Up"/><!-- 上一页 --></a>
|
<a href="javascript:" id="next_p"><s:text name="Page_Down"/><!-- 下一页 --></a>
|
<a href="javascript:" id="last"><s:text name="End_Page"/><!-- 尾页 --></a>
|
<span id="cont">
|
<s:text name="Goto"/><!-- 转到 --><input type="text" id="page_num" value="1"/>
|
<a href="javascript:" id="go"><s:text name="Jump"/><!-- 跳转 --></a>
|
</span>
|
</div>
|
</div>
|
<div id="allTransShade"></div>
|
<!--清除浮动-->
|
<div class="clear"></div>
|
</body>
|
<script type="text/javascript" src="js/buildNav.js"></script>
|
<script type="text/javascript" src="js/createTab.js"></script>
|
<script type="text/javascript">
|
var permits;
|
<% Object obj=session.getAttribute("permits");
|
if(obj!=null){
|
String permits =obj.toString(); %>
|
permits=<%=permits%>;
|
//console.info(json);
|
<% } %>
|
|
var arr_all; //所有数据的数组
|
var totalNum=0; //总记录数
|
//页面初始化
|
$(document).ready(function(){
|
//setUserName();
|
|
//初始化页面高度
|
var screenHei=$(document).height(); //获取浏览器可以区域的高度
|
var bodyHei=$('body').height(); //获取body的高度
|
var tbBrdwHei=$('#tbBrdw').height(); //获取滚动表格容器的初始高度
|
//根据提供的数据调整高度
|
$('#tbBrdw').css('height',screenHei-bodyHei+tbBrdwHei+'px');
|
});
|
//页面的全局变量
|
var ArrTh=new Array(); //记录表格头部数据
|
var ArrTd=new Array(); //记录表格滚动部分的数据
|
var ArrTemp=new Array(); //定义空数组用于初始化表格
|
//手动定义表格头部数据 统计时间段 维护区 故障责任人 电池品牌 故障次数 电池故障率 故障超时率 未完成数量
|
ArrTh=['<s:text name="Statistical_period"/>','<s:text name="Maintenance_area"/>','<s:text name="Fault_responsibility"/>','<s:text name="Battery_brand"/>','<s:text name="Failure_frequency"/>','<s:text name="Battery_fail_rate"/>','<s:text name="Failure_rate_overtime"/>','<s:text name="Number_unfinished"/>'];
|
//通过头部数据定义表格滚动数据(后期用后台数据替换)
|
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);
|
$('#tbHead .tbFixed').css('width',$('#tbHead').width()-20+'px');
|
$('#tbBrdw .tbScroll').css('width',$('#tbBrdw').width()-20+'px');
|
|
//页面点击事件
|
$(document).ready(function(){
|
//点击故障信息统计查询显示和隐藏查询条件
|
var checkConHei=$('#eleInfor .checkCon').height(); //获取条件选择容器的高度
|
var tbBrdwHei=$('#tbBrdw').height(); //获取滚动表格容器的初始高度
|
var stateCheck=1; //记录查询条件的状态
|
$('#eleInfor .summary').click(function(){
|
if(stateCheck==1)
|
{
|
stateCheck=0;
|
$('#eleInfor .checkCon').slideUp(300);
|
setTimeout(function(){
|
$('#tbBrdw').css('height',tbBrdwHei+checkConHei+'px');
|
},310);
|
}else{
|
stateCheck=1;
|
$('#tbBrdw').css('height',tbBrdwHei+'px');
|
$('#eleInfor .checkCon').slideDown();
|
}
|
});
|
//点击查询创建表格
|
var hdWidth=$('#tbHead').width();
|
$('#paging .search').click(function(){
|
//清除表格
|
//$('#tbHead .tbFixed').remove();
|
$('#tbBrdw .tbScroll').remove();
|
//创建等待的框框
|
loading.showLoading();
|
//console.info($('#search_form').serialize());
|
var json = JSON.stringify(createSearchForm());
|
$.post("Batt_maint_infAction_serchByCondition","result="+json,function(data){
|
data=data.result;
|
//console.info(data);
|
var last=eval("("+data+")");
|
//console.info(last);
|
arr_all=new Array();
|
if(last!=undefined && last.length>0){
|
for(var j=0;j<last.length;j++){
|
var model=last[j];
|
if(model.code==1){
|
//console.info(model);
|
arr_all.push(model.msgN); //统计时间段
|
arr_all.push(model.msg); //维护区
|
arr_all.push(model.msgO); //故障责任人
|
arr_all.push(model.msgV); //电池品牌
|
arr_all.push(model.sum); //故障次数
|
arr_all.push((model.lowCH*100).toFixed(1)+"%"); //电池故障率
|
arr_all.push(model.lowCA*100+"%"); //故障超时率
|
arr_all.push(model.newsum); //未完成数量
|
|
totalNum=model.lowRA; //总记录数
|
}
|
}
|
}else{
|
totalNum=0; //总记录数
|
}
|
createTable('tbHead','tbFixed',ArrTh.length,ArrTh,arr_all);
|
createTable('tbBrdw','tbScroll',ArrTh.length,ArrTh,arr_all);
|
//将表格充满容器
|
$('#tbHead .tbFixed').css('width',hdWidth-20+'px');
|
$('#tbBrdw .tbScroll').css('width',hdWidth-20+'px');
|
$('#total').text(totalNum);
|
|
var tblScroll=$('#tbWarn').scrollLeft();
|
$('#tbHead table').css('left',-tblScroll);
|
|
var PageSize=$('#pageSize').attr('value');
|
var CurrPage=$('#pageCurr').attr('value');
|
var pageNum=Math.ceil(totalNum/PageSize);
|
$('#current').text(CurrPage+'/'+pageNum);
|
|
loading.hideLoading();
|
}).error(function(){
|
noContent.showNoContent("查询失败,请检查网络连接!");
|
loading.hideLoading();
|
});
|
|
//点击单元格该单元格所在的行变色
|
$('#tbBrdw .tbScroll tbody tr').live('click',function(){
|
$('#tbBrdw .tbScroll tbody tr').css('background-color','');
|
$(this).css('background-color','#b8cfe5');
|
});
|
});
|
//将透明遮罩随着屏幕滚动而滚动
|
$(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');
|
});
|
});
|
|
//查询包机人
|
$.post("User_infAction_searchAll","bup.page.pageSize="+1000,function(data){
|
data=data.result;
|
data=eval("("+data+")");
|
//console.info(data);
|
if(data.code==1 && data.data.length>0){
|
var Obaojiren=document.getElementById("baojiren");
|
Obaojiren.innerHTML="";
|
//console.info(data)
|
for(var i=0;i<=data.data.length;i++){
|
var option=createEle("option");
|
if(i!=0){
|
option.innerHTML=data.data[i-1].uinf.UName;
|
option.setAttribute("value", data.data[i-1].uinf.UName);
|
}else{
|
option.innerHTML="<s:text name='All'/>(<s:text name='Common'/>"+data.data.length+"<s:text name='Species'/>)";
|
option.setAttribute("value", "");
|
}
|
Obaojiren.appendChild(option);
|
}
|
}
|
});
|
|
|
//查询电池品牌
|
$.post("BattInfAction_serchByBattProducer",null,function(data){
|
data=data.result;
|
data=eval("("+data+")");
|
if(data.code==1 && data.data.length>0){
|
var Obatt_producer=document.getElementById("batt_producer");
|
Obatt_producer.innerHTML="";
|
for(var i=0;i<=data.data.length;i++){
|
var option=createEle("option");
|
if(i!=0){
|
option.innerHTML=data.data[i-1].BattProducer;
|
option.setAttribute("value", data.data[i-1].BattProducer);
|
}else{
|
option.innerHTML="<s:text name='All'/>(<s:text name='Common'/>"+data.sum+"<s:text name='Species'/>)";
|
option.setAttribute("value", "");
|
}
|
Obatt_producer.appendChild(option);
|
}
|
}
|
});
|
|
//页面加载时查询维护区中的枢纽类型
|
$.post("BattInfAction_serchByStation",null,function(data){
|
data=data.result;
|
data=eval("("+data+")");
|
//console.info(data);
|
if(data.code==1 && data.data.length>0){
|
var Ostation_name1=document.getElementById("station_name1");
|
Ostation_name1.innerHTML="";
|
for(var i=0;i<=data.data.length;i++){
|
option=createEle("option");
|
if(i==0){
|
option.innerHTML="<s:text name='All'/>(<s:text name='Common'/>"+data.sum+"<s:text name='Species'/>)";
|
option.setAttribute("value", "");
|
}else{
|
option.innerHTML=data.data[i-1].StationName1;
|
option.setAttribute("value",data.data[i-1].StationName1);
|
}
|
Ostation_name1.appendChild(option);
|
}
|
}
|
});
|
|
//页面加载时初始化时间
|
$(document).ready(function(){
|
var date=new Date();
|
var date1=new Date(2000,0,1);
|
|
var year=date.getFullYear();
|
var month=date.getMonth()+1;
|
var day=date.getDate();
|
var today=year+"-"+month+"-"+day;
|
$("#startime").attr("value",date1.format('yyyy-MM-dd'));
|
$("#endtime").attr("value",today);
|
|
});
|
|
//点击导出触发事件
|
$('#export_table').click(function(){
|
//console.info($('#tbHead .tbFixed thead th').length);
|
exprotTable($('#tbBrdw .tbScroll thead th'),$('#tbBrdw .tbScroll tbody td'),$('#exportable'),$('#table_th_arr'),$('#table_td_arr'));
|
});
|
|
//获取表格中的数据并提交数据
|
function exprotTable(eleTh,eleTb,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=new Array();
|
for(var i=0;i<eleTb.length;i++)
|
{
|
ArrTd[i]=eleTb.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("<s:text name='Please_enter_the_legitimate_number!'/>"); /* 请输入合法的整数 */
|
var PageSize=$('#pageSize').attr('value');
|
$('#number').attr('value',PageSize);
|
}
|
});
|
|
//填写完跳转到指定页
|
$('#page_num').blur(function(){
|
var tarpage=$('#page_num').attr('value');
|
if(tarpage>0){
|
|
}else{
|
alert("<s:text name='Please_enter_the_legitimate_number!'/>");
|
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'));
|
}
|
});
|
|
//构造查询条件对象
|
function createSearchForm(){
|
var temp={
|
page:{
|
pageCurr:$('#pageCurr').val(),
|
pageSize:$('#pageSize').val(),
|
},
|
binf:{
|
StationName1:$('#station_name1').val(),
|
StationName:$('#baojiren').val(),
|
BattProducer:$('#batt_producer').val(),
|
BattProductDate:$('#startime').val(),
|
BattProductDate1:$('#endtime').val(),
|
DeviceName:$('#DeviceName').val()
|
}
|
};
|
return temp;
|
}
|
|
</script>
|
</html>
|