<!doctype html>
|
<html>
|
<head>
|
<meta charset="utf-8">
|
<title>设备状态查询</title>
|
<meta name="viewport" content="width=device-width,initial-scale=1">
|
<link rel="stylesheet" href="mobilCss/jquery.mobile-1.4.5.min.css">
|
<link rel="stylesheet" type="text/css" href="css/tbl.css">
|
<script type="text/javascript" src="mobilJs/jquery-1.8.2.js"></script>
|
<script type="text/javascript" src="mobilJs/jquery.mobile-1.4.5.min.js"></script>
|
<style>
|
td b {
|
min-width: 12% !important;
|
}
|
|
td{
|
padding-right:1em !important;
|
}
|
</style>
|
</head>
|
<body>
|
<div data-role="page" id="pageone">
|
<div data-role="header" data-position="fixed">
|
<a href="count-report.html" class="ui-btn ui-corner-all ui-shadow ui-icon-back ui-btn-icon-left" target="_top" style="padding-top: 0.7em; padding-bottom: 0.7em;">返回</a>
|
<h1>FBS设备状态查询</h1>
|
</div>
|
<div data-role="content">
|
<form method="post" id="formdata">
|
<fieldset data-role="fieldcontain">
|
<label for="">设备类型</label>
|
<select id="dev-type">
|
<option value="0">全部</option>
|
<option value="1">FBS9100</option>
|
<option value="2">FBS9600</option>
|
|
</select>
|
</fieldset>
|
<fieldset data-role="fieldcontain">
|
<label for="">通信状态</label>
|
<select id="contact-type">
|
<option value="100">全部</option>
|
<option value="0">通信正常</option>
|
<option value="1">通信故障</option>
|
</select>
|
</fieldset>
|
<a href="javascript:targetPageTwo()" data-role="button" style="position:absolute;bottom:10%;width:82%;">确定</a>
|
</form>
|
</div>
|
<!-- <div data-role="footer" data-position="fixed">
|
<h1>福光电子有限公司</h1>
|
</div> -->
|
</div>
|
<div data-role="page" id="pagetwo">
|
<div data-role="header">
|
<a href="javascript:targetPageOne()" class="ui-btn ui-corner-all ui-shadow ui-icon-back ui-btn-icon-left" target="_top" style="padding-top: 0.7em; padding-bottom: 0.7em;">返回</a>
|
<h1>FBS设备状态</h1>
|
</div>
|
|
<div data-role="main" id="tab-div" class="ui-content">
|
<div class="tbl-container"></div>
|
<a href="javascript:;" class="ui-btn ui-corner-all ui-icon-arrow-l ui-btn-icon-notext pre-page">上一页</a>
|
<a href="javascript:;" class="ui-btn ui-corner-all ui-icon-arrow-r ui-btn-icon-notext next-page">下一页</a>
|
</div>
|
<!-- <div data-role="footer" data-position="fixed">
|
<h1>福光电子有限公司</h1>
|
</div> -->
|
</div>
|
</body>
|
<script type="text/javascript" src="js/tbl.js"></script>
|
<script type="text/javascript" src="mobilJs/base.js"></script>
|
<script type="text/javascript">
|
var ArrTh=['机房名称','设备IP','设备id', '设备类型' ,'电池组数','设备状态','通信计数','故障计数'];
|
var Page = {
|
pageCurr:1,
|
pageSize:10,
|
pageAll:0,
|
};
|
|
var flag = true; //设置重复读取数据
|
var dev_data={
|
stationname:'',
|
stationip:'',
|
dev_id:'',
|
dev_type:'',
|
batt_num:0,
|
dev_status:'',
|
com_count:0,
|
err_count:0
|
};
|
|
var dev_arr = new Array(); //当前表格中的对象数组
|
|
function targetPageTwo(){
|
dev_arr = new Array();
|
$('.tbl-container').text('');
|
//console.info("op_cmd="+$('#dev-type').val()+"&dev_errcommcount="+$('#contact-type').val());
|
window.location.href="#pagetwo?op_cmd="+$('#dev-type').val()+"&dev_errcommcount="+$('#contact-type').val();
|
}
|
|
function targetPageOne(){
|
clearInterval(timeer);
|
flag = false;
|
dev_arr = new Array();
|
$('.tbl-container').text('');
|
window.location.href="#pageone";
|
}
|
|
$(document).on("pageshow","#pagetwo",function(){
|
$('.tbl-container').text('');
|
$.request = createRequest();
|
var op_cmd = $.request.queryString["op_cmd"];
|
var dev_errcommcount = $.request.queryString["dev_errcommcount"];
|
//console.info("op_cmd :"+op_cmd +" dev_errcommcount:"+dev_errcommcount);
|
if(dev_errcommcount != undefined && op_cmd != undefined){
|
$('#dev-type').val(op_cmd);
|
$('#dev-type').siblings('span').text($('#dev-type').find('option:selected').text()); // 设置默认显示的内容
|
$('#contact-type').val(dev_errcommcount);
|
$('#dev_errcommcount').siblings('span').text($('#dev_errcommcount').find('option:selected').text()); // 设置默认显示的内容
|
}
|
//console.info(createSearchParam());
|
flag = true;
|
window.clearInterval(timeer);
|
searchDev();
|
timeer = setInterval(function(){
|
searchDev();
|
}, 1500);
|
loadshow();
|
});
|
|
//查询设备
|
var timeer;
|
function searchDev(){
|
var temp = createSearchParam();
|
var json = JSON.stringify(temp);
|
//console.info(json);
|
$.ajax({
|
type: "post",
|
url: "Fbs9100_stateAction_action_serchByCondition",
|
async:true,
|
dataType:'text',
|
data:"json="+json,
|
success: function(data){
|
data = eval('('+data+')');
|
var model = eval('('+data.result+')');
|
//console.info(model);
|
var arrTd = new Array();
|
if(model.code == 1){
|
for(var i = 0 ;i<model.data.length;i++){
|
var dev_obj = new Object();
|
dev_obj.stationname = model.data[i].stationName; //机房名称
|
dev_obj.stationip = model.data[i].dev_ip; //设备ip地址
|
dev_obj.dev_id = model.data[i].dev_id; //设备id地址
|
dev_obj.dev_type = model.data[i].deviceName; //设备类型
|
dev_obj.batt_num = model.data[i].num; //关联电池组数
|
|
|
arrTd.push(model.data[i].stationName);
|
arrTd.push(model.data[i].dev_ip);
|
arrTd.push(model.data[i].dev_id);
|
arrTd.push(model.data[i].deviceName);
|
arrTd.push(model.data[i].num);
|
|
if(parseInt(model.data[i].dev_id/10000) == '9100' || parseInt(model.data[i].dev_id/100000) == '9100'){
|
model.data[i].page!=undefined?Page.pageAll = model.data[i].page.pageAll:'';
|
var index = model.data[i].dev_workstate;
|
if(model.data[i].dev_testtype == 254){
|
index = 3;
|
}
|
var msg = "状态: " + statusarr[index]
|
+ ", 告警: " + alarm[model.data[i].dev_alarmstate]
|
+ ", 组号: " + model.data[i].dev_testgroupnum
|
+",在线电压:"+model.data[i].online_vols
|
+"V,组端电压:"+model.data[i].group_vols
|
+"V,电流:"+model.data[i].group_currs+"A";
|
dev_obj.dev_status = msg;
|
//msg+="fhskdjfkjsdfjksdhfkjsdfkjsdfkjsdfhsdjkfsjkdfjksadfjkasdhfkjsadfhkjasdfkjsadfn";
|
arrTd.push(msg);
|
|
}else if(parseInt(model.data[i].dev_id/10000) == '9600' || parseInt(model.data[i].dev_id/100000) == '9600'){
|
model.data[i].page!=undefined?Page.pageAll = model.data[i].page.pageAll:'';
|
var index = model.data[i].dev_workstate;
|
var msg = "在线监测";
|
if(index == 1){
|
msg = "内阻测试中...";
|
}
|
dev_obj.dev_status = msg; //设备状态
|
arrTd.push(msg);
|
}
|
dev_obj.com_count = model.data[i].dev_commcount; //通信计数
|
dev_obj.err_count = model.data[i].dev_errcommcount; //通信故障计数
|
arrTd.push(model.data[i].dev_commcount);
|
arrTd.push(model.data[i].dev_errcommcount);
|
|
if(!isExist(dev_obj, dev_arr)){
|
dev_arr.push(dev_obj);
|
}
|
}
|
}
|
//if($("#tab-div").find('table').length>0 && (!isNew)){
|
// flushTable(dev_arr);
|
//}else{
|
createTbl($(".tbl-container"), ArrTh, arrTd);
|
//}
|
loadclose();
|
showPageLog();
|
},
|
error:function(){
|
loadclose();
|
showPageLog();
|
}
|
});
|
}
|
|
|
|
//显示分页图标
|
function showPageLog(){
|
var pageNum = Math.ceil(Page.pageAll/Page.pageSize);
|
if(pageNum > Page.pageCurr){
|
$('#tab-div .next-page').show();
|
}else{
|
$('#tab-div .next-page').hide();
|
}
|
if(Page.pageCurr > 1){
|
$('#tab-div .pre-page').show();
|
}else{
|
$('#tab-div .pre-page').hide();
|
}
|
//console.info(Page);
|
}
|
|
|
//点击下一页
|
$('#tab-div').on('tap','.next-page',function(){
|
if(Page != undefined){
|
var pageNum = Math.ceil(Page.pageAll/Page.pageSize);
|
if(Page.pageCurr < pageNum){
|
loadshow();
|
Page.pageCurr = Page.pageCurr + 1;
|
window.clearInterval(timeer);
|
searchDev();
|
timeer = setInterval(function(){
|
searchDev();
|
}, 1500);
|
}
|
}
|
});
|
|
//点击上一页
|
$('#tab-div').on('tap','.pre-page',function(){
|
if(Page != undefined){
|
if(Page.pageCurr > 1){
|
loadshow();
|
Page.pageCurr = Page.pageCurr - 1;
|
window.clearInterval(timeer);
|
searchDev();
|
timeer = setInterval(function(){
|
searchDev();
|
}, 1500);
|
}
|
}
|
});
|
|
var statusarr= ['在线监测','放电测试','充电测试','内阻测试','未知'];
|
var alarm = ['无','暂停','放电测试','放电等待','限流充电','直流充电','充电等待','测试时间到','测试容量到','单体下限到','组端下限到','市电异常','存储卡不足','负载温度高','电流异常','远程通信坏','负载通信坏','选择通信坏','负载电流坏','内存申请坏','未知'];
|
//构造查询参数
|
function createSearchParam(){
|
var temp = {
|
op_cmd:$('#dev-type').val(),
|
dev_errcommcount:$('#contact-type').val(),
|
page:Page
|
};
|
return temp;
|
}
|
|
//判断obj是否在allarr数组中存在
|
function isExist(dev_id,allarr){
|
var flag = false;
|
for(var i=0;i<allarr.length;i++){
|
if(dev_id == allarr[i].dev_id){
|
flag = true;
|
break;
|
}
|
}
|
return flag;
|
}
|
|
//从所有的数组中获取指定设备id的对象
|
function getObj(dev_id,allarr){
|
for(var i =0;i<allarr.length;i++){
|
if(allarr[i].dev_id == dev_id){
|
return allarr[i];
|
}
|
}
|
}
|
|
|
//创建表格
|
function createTable(ele,arrTh,arrTd){
|
if(arrTd.length>0){
|
//console.info("创建表格");
|
//console.info(arrTd);
|
ele.text("");
|
var _table=$('<table data-role="table" id="tab" class="ui-responsive ui-shadow"></table>');
|
var _thead=$('<thead></thead>');
|
var _head_tr = $('<tr></tr>');
|
for(var i =0;i<arrTh.length;i++){
|
var _th = $('<th>'+arrTh[i]+'</th>');
|
_head_tr.append(_th);
|
}
|
_thead.append(_head_tr);
|
|
var _tbody = $('<tbody></tbody>');
|
for(var i=0;i<arrTd.length;i++){
|
var _body_tr = $('<tr></tr>');
|
var _td1 = $('<td>'+arrTd[i].stationname+'</td>');
|
var _td2 = $('<td>'+arrTd[i].stationip+'</td>');
|
var _td3 = $('<td>'+arrTd[i].dev_id+'</td>');
|
var _td4 = $('<td>'+arrTd[i].dev_type+'</td>');
|
var _td5 = $('<td>'+arrTd[i].batt_num+'</td>');
|
var _td6 = $('<td>'+arrTd[i].dev_status+'</td>');
|
var _td7 = $('<td>'+arrTd[i].com_count+'</td>');
|
var _td8 = $('<td>'+arrTd[i].err_count+'</td>');
|
|
_body_tr.append(_td1);
|
_body_tr.append(_td2);
|
_body_tr.append(_td3);
|
_body_tr.append(_td4);
|
_body_tr.append(_td5);
|
_body_tr.append(_td6);
|
_body_tr.append(_td7);
|
_body_tr.append(_td8);
|
_tbody.append(_body_tr);
|
}
|
_table.append(_thead);
|
_table.append(_tbody);
|
ele.append(_table).trigger("create");
|
}
|
}
|
|
function flushTable(allarr){
|
for(var i = 0;i<allarr.length;i++){
|
var flag = false;
|
$('#tab-div table tbody tr').each(function(n){
|
var dev_id = $(this).find('td').eq(2).text();
|
//console.info(dev_id +"=="+$(this).find('td').eq(2).text());
|
if(dev_id.indexOf(allarr[i].dev_id)>0){
|
//console.info($(this).find('td').eq(1).html());
|
$(this).find('td').eq(1).html('<b class="ui-table-cell-label">'+ArrTh[1]+'</b>'+allarr[i].stationip);
|
$(this).find('td').eq(5).html('<b class="ui-table-cell-label">'+ArrTh[5]+'</b>'+allarr[i].dev_status);
|
$(this).find('td').eq(6).html('<b class="ui-table-cell-label">'+ArrTh[6]+'</b>'+allarr[i].com_count);
|
$(this).find('td').eq(7).html('<b class="ui-table-cell-label">'+ArrTh[7]+'</b>'+allarr[i].err_count);
|
flag = true;
|
return false;
|
}
|
});
|
|
if(!flag){
|
addData($("#tab-div"),allarr[i]);
|
}
|
}
|
//$("#tab-div").trigger("create");
|
}
|
|
//动态向表各种添加数据
|
function addData(ele,obj){
|
var _tbody = ele.find('tbody');
|
var _body_tr = $('<tr></tr>');
|
var _td1 = $('<td>'+obj.stationname+'</td>');
|
var _td2 = $('<td>'+obj.stationip+'</td>');
|
var _td3 = $('<td>'+obj.dev_id+'</td>');
|
var _td4 = $('<td>'+obj.dev_type+'</td>');
|
var _td5 = $('<td>'+obj.batt_num+'</td>');
|
var _td6 = $('<td>'+obj.dev_status+'</td>');
|
var _td7 = $('<td>'+obj.com_count+'</td>');
|
var _td8 = $('<td>'+obj.err_count+'</td>');
|
|
_body_tr.append(_td1);
|
_body_tr.append(_td2);
|
_body_tr.append(_td3);
|
_body_tr.append(_td4);
|
_body_tr.append(_td5);
|
_body_tr.append(_td6);
|
_body_tr.append(_td7);
|
_body_tr.append(_td8);
|
_tbody.append(_body_tr).trigger("create");
|
}
|
|
|
$.request = createRequest();
|
|
function createRequest(){
|
var apiMap = {};
|
|
function request(queryStr) {
|
|
var api = {};
|
|
if (apiMap[queryStr]) { return apiMap[queryStr]; }
|
|
api.queryString = (function () {
|
|
var urlParams = {};
|
|
var e,
|
|
d = function (s) {
|
return decodeURIComponent(s.replace(/\+/g, " "));
|
},
|
q = queryStr.substring(queryStr.indexOf('?') + 1),
|
|
r = /([^&=]+)=?([^&]*)/g;
|
//console.info(q);
|
|
while (e = r.exec(q)){
|
urlParams[d(e[1])] = d(e[2]);
|
}
|
return urlParams;
|
|
})();
|
|
api.getUrl = function () {
|
|
var url = queryStr.substring(0, queryStr.indexOf('?') + 1);
|
|
for (var p in api.queryString) { url += p + '=' + api.queryString[p] + "&"; }
|
|
if (url.lastIndexOf('&') == url.length - 1) { return url.substring(0, url.lastIndexOf('&')); }
|
|
return url;
|
|
};
|
|
apiMap[queryStr] = api;
|
|
return api;
|
|
}
|
|
$.extend(request, request(window.location.href));
|
|
return request;
|
}
|
</script>
|
</html>
|