| | |
| | | <div class="layui-form-item">
|
| | | <div class="layui-input-block">
|
| | | <select name="sysType" id="sysType" lay-filter="sysType" lay-search="">
|
| | | <option value="12">1U设备</option>
|
| | | <option value="2">2U设备</option>
|
| | | <option value="12">12V设备</option>
|
| | | <option value="2">2V设备</option>
|
| | | </select>
|
| | | </div>
|
| | | </div>
|
| | |
| | | ,{field:'StationName', title:'机房名称', align:'center', width: 470}
|
| | | ,{field:'BattGroupId', title:'电池组ID', align:'center', width: 160}
|
| | | ,{field:'BattGroupName', title:'电池组名称', align:'center', width: 160}
|
| | | ,{field:'devStatus', title:'设备状态', templet: '#devStatus', align:'center', width: 600}
|
| | | ,{field:'devStatus', title:'设备状态', templet: '#devStatus', align:'center', width: 700}
|
| | | ,{field:'testTime', title:'已测时长', templet: '#testTime', align:'center', width: 140}
|
| | | ,{field:'signalNum', title:'通信计数', templet: '#signalNum', align:'center', width: 140}
|
| | | ,{field:'StationName9', title:'设备版本号', align:'center', width: 160}
|
| | | ,{field:'MonCount', title:'单体数量', align:'center', width: 100}
|
| | | ,{field:'Load_curr', title:'负载电流', align:'center', width: 100}
|
| | | ,{field:'MonCapStd', title:'标称容量', align:'center', width: 100}
|
| | | ,{field:'MonVolStd', title:'标称单体电压', align:'center', width: 140}
|
| | | ,{field:'doThings', fixed: 'right', title: '设置状态', toolbar: '#setStatus', align: 'center', width: 160}
|
| | | ]]
|
| | | ,data:[]
|
| | |
| | | // 更新表格的对象
|
| | | var layuiTbl = new LayuiTbl(tOptions, layui, laytpl, table.cache.pageTbl);
|
| | |
|
| | | // 设备类型
|
| | | var devType = 0; // 1U:12 2U:2
|
| | | // 查询正在放电的设备
|
| | | searchChargeDev(search, {}, false);
|
| | | |
| | | // 点击添加电池组
|
| | | $('#setCurrIframe').data('setCurr', []);
|
| | | |
| | | $('#batchAdd').click(function() {
|
| | | var structData = structAddData();
|
| | | // 判断是否选择要添加的内容
|
| | |
| | | }
|
| | | $('#setCurrIframe').data('setCurr', []);
|
| | | // 弹出设置选择筛选条件
|
| | | search(structData);
|
| | | searchChargeDev(search, structData, true);
|
| | | });
|
| | | |
| | | |
| | | // 设置添加操作的字符串
|
| | | var addBattStr = '';
|
| | | // 查询正在放电的设备
|
| | | function searchChargeDev(callback, cParam, isCallback) {
|
| | | var rq = structAddData(); // 获取查询条件
|
| | | var preDevType = $('#sysType').val();
|
| | | // 判断当前设备的类型是否和上一次一致
|
| | | if(preDevType != devType) {
|
| | | var loading = layer.load(1);
|
| | | devType = preDevType;
|
| | | // 设备类型的条件改变清空表格
|
| | | tOptions.data = [];
|
| | | // 清空字符串
|
| | | addBattStr = '';
|
| | | // 查询正在放电的内容
|
| | | $.ajax({
|
| | | type: 'post'
|
| | | ,async: true
|
| | | ,url: 'Fbs9100_stateAction_action_seachDischarge'
|
| | | ,data: 'json='+JSON.stringify(rq)
|
| | | ,dataType: 'json'
|
| | | ,success:function(res) {
|
| | | var rs = JSON.parse(res.result);
|
| | | var rsData = [];
|
| | | //console.log(rs);
|
| | | if(rs.code == 1) {
|
| | | data = rs.data;
|
| | | var tmps = [];
|
| | | for(var i=0; i<data.length; i++) {
|
| | | var _tmp = {};
|
| | | var _data = data[i];
|
| | | _tmp.FBSDeviceId = _data.dev_id; // 设备ID
|
| | | _tmp.StationName = _data.stationName; // 机房名称
|
| | | _tmp.BattGroupId = _data.battgroupid; // 机房ID
|
| | | _tmp.BattGroupName = _data.note; // 电池组名称
|
| | | _tmp.StationName9 = _data.dev_version; // 设备版本号
|
| | | _tmp.GroupIndexInFBSDevice = _data.dev_testgroupnum-1; // 电池组索引
|
| | | _tmp.MonCount = _data.moncount; // 单体数量
|
| | | _tmp.MonCapStd = _data.moncapstd; // 标称容量
|
| | | _tmp.MonVolStd = _data.monvolstd; // 标称电压
|
| | | tmps.push(_tmp);
|
| | | }
|
| | | rsData = tmps; |
| | | }
|
| | | //console.log(rsData);
|
| | | tOptions.data = rsData;
|
| | | |
| | | table.render(tOptions);
|
| | | // 判断是否执行callback函数
|
| | | if(isCallback) {
|
| | | callback(cParam);
|
| | | }else {
|
| | | updateDevStatus();
|
| | | }
|
| | | }
|
| | | ,complete: function() {
|
| | | layer.close(loading);
|
| | | }
|
| | | });
|
| | | |
| | | }else {
|
| | | // 设备类型的条件没有发生变化,向表格添加数据
|
| | | callback(cParam);
|
| | | }
|
| | | |
| | | }
|
| | | |
| | | // 构造查询正在放电的设备的条件
|
| | | function searchChargeDevRq() {
|
| | | var temp = {
|
| | | MonVolStd: $('#sysType').val()
|
| | | };
|
| | | |
| | | return temp;
|
| | | }
|
| | |
|
| | | // 根据查询条件查询内容
|
| | | function search(temp) {
|
| | |
| | | var rs = JSON.parse(res.result);
|
| | | var data = [];
|
| | | if(rs.code == 1) {
|
| | | data = rs.data;
|
| | | }else {
|
| | | layer.msg('没有可设置的电池组!');
|
| | | data = getFilterData(rs.data, tOptions.data);
|
| | | }
|
| | | console.log(data);
|
| | | tOptions.data = data;
|
| | | |
| | | // 如果有添加的数据
|
| | | if(data.length !=0) {
|
| | | if(addBattStr.length == 0) { // 字符串长度为0
|
| | | addBattStr += getFilterStr(temp);
|
| | | }else {
|
| | | addBattStr += ','+getFilterStr(temp); |
| | | }
|
| | | }
|
| | | // 将数据添加到表格中
|
| | | for(var i=0; i<data.length; i++) {
|
| | | var _data = data[i];
|
| | | tOptions.data.push(_data);
|
| | | }
|
| | | //console.log(tOptions.data);
|
| | | // 生成表格数据
|
| | | table.render(tOptions);
|
| | | if(data.length != 0) {
|
| | | table.render(tOptions);
|
| | | }
|
| | | updateDevStatus();
|
| | | |
| | | }
|
| | | ,complete:function() {
|
| | | layer.close(load);
|
| | | }
|
| | | });
|
| | | }
|
| | | |
| | | // 根据设备对数据进行筛选
|
| | | function getFilterData(data, all) {
|
| | | var rs = [];
|
| | | // 遍历data的值
|
| | | for(var i=0; i<data.length; i++) {
|
| | | var isExist = false;
|
| | | var _data = data[i];
|
| | | // 遍历all
|
| | | for(var k=0; k<all.length;k++) {
|
| | | var _all = all[k];
|
| | | // 判断设备id是否已经被添加
|
| | | if(_data.FBSDeviceId == _all.FBSDeviceId) {
|
| | | isExist = true;
|
| | | break;
|
| | | }
|
| | | }
|
| | | // 如果不存在添加数据
|
| | | if(!isExist) {
|
| | | rs.push(_data);
|
| | | }
|
| | | }
|
| | | |
| | | return rs; // 返回结果集
|
| | | }
|
| | |
|
| | | // 点击添加构造查询
|
| | |
| | |
|
| | | // 请求设置参数
|
| | | function ajaxSetParam(param) {
|
| | | console.log(param);
|
| | | //console.log(param);
|
| | | var load = layer.load(1);
|
| | | // 请求后台
|
| | | $.ajax({
|
| | | type: 'post'
|
| | | ,async: true
|
| | | ,url: 'Fbs9100_setparamAction_action_updatePro'
|
| | | ,data: 'json='+JSON.stringify(param)
|
| | | ,data: 'json='+JSON.stringify(param)+'&json_msg='+addBattStr // 添加操作记录
|
| | | ,dataType: 'json'
|
| | | ,success: function(res) {
|
| | | var rs = JSON.parse(res.result);
|
| | |
| | | }
|
| | |
|
| | | var trIndex = getSetCurrIndex(data, tOptions.data);
|
| | | //console.log(trIndex);
|
| | | // 被设置参数的机房
|
| | | for(var i=0; i<trIndex.length; i++) {
|
| | | var _data = data[i];
|
| | | console.log(_data);
|
| | | var _trIndex = trIndex[i];
|
| | | var _temp = {'doThings':''};
|
| | | if(_data.num==1) {
|
| | |
| | |
|
| | | // 构造批量设置放电参数的方法
|
| | | function getSetCurrParam(data, ratio) {
|
| | | //console.log(data);
|
| | | // console.log(data);
|
| | | var rs = [];
|
| | | for(var i=0; i<data.length; i++) {
|
| | | var _data = data[i];
|
| | |
| | | layer.msg('暂无无法启动,请先设置放电参数!');
|
| | | return;
|
| | | }
|
| | | |
| | | $('#setCurrIframe').data('addBattStr', addBattStr);
|
| | | // 显示面板
|
| | | layer.open({
|
| | | type: 2
|
| | |
| | | for(var i=0; i<setData.length; i++) {
|
| | | var _setData = setData[i];
|
| | | var setDevId = _setData.dev_id;
|
| | | //console.log(setDevId);
|
| | | // 遍历allData
|
| | | for(var k=0; k<allData.length; k++) {
|
| | | var _allData = allData[i];
|
| | | var _allData = allData[k];
|
| | | var allDevId = _allData.FBSDeviceId;
|
| | | if(setDevId == allDevId) {
|
| | | rs.push(k);
|
| | | break;
|
| | | }
|
| | | }
|
| | |
|
| | |
| | | var BTS9100 = GLOBAL.BTS9100;
|
| | | var workStates = BTS9100.workstates;
|
| | | var alarmStates = BTS9100.alarmstates;
|
| | | function updateDevStatus() {
|
| | | function updateDevStatus1() {
|
| | | var battlist = tOptions.data;
|
| | | var battIdList = updateDevStatusRq();
|
| | | console.log(battIdList);
|
| | | clearInterval(updateDevStatus.timer);
|
| | | if(battlist.length > 0){
|
| | | $.ajax({
|
| | |
| | | dataType: 'json',
|
| | | success: function(res){
|
| | | var rs = JSON.parse(res.result);
|
| | | console.log(rs);
|
| | | if(rs.code == 1) {
|
| | | var data = rs.data;
|
| | | // console.log(data);
|
| | |
| | | },
|
| | | });
|
| | | }
|
| | | } |
| | | }
|
| | | |
| | | |
| | | // 获取设备实时状态的参数
|
| | | function updateDevStatus() {
|
| | | var battIdList = updateDevStatusRq(); // 获取电池id列表
|
| | | // 判断如果battIdList长度为0不执行请求后台
|
| | | if(battIdList.length == 0) {
|
| | | return;
|
| | | }
|
| | | clearInterval(updateDevStatus.timer);
|
| | | // 请求后台
|
| | | $.ajax({
|
| | | type: 'post'
|
| | | ,async:true
|
| | | ,url: 'Fbs9100_stateAction_action_freshenDischarge'
|
| | | ,data: 'json='+JSON.stringify(battIdList)
|
| | | ,dataType: 'json'
|
| | | ,success: function(res) {
|
| | | var rs = JSON.parse(res.result);
|
| | | //console.log(rs);
|
| | | // 如果有查询结果
|
| | | if(rs.code == 1) {
|
| | | var data = rs.data;
|
| | | for(var i=0; i<data.length; i++) {
|
| | | var _data = data[i];
|
| | | _data = _data[0];
|
| | | var str = ''; // 设备工作状态
|
| | | var index = _data.dev_workstate; // 设备状态
|
| | | |
| | | // 内阻测试(工作状态为0, 内阻测试不为0)
|
| | | if(_data.dev_workstate ==0 && _data.dev_res_test_state != 0) {
|
| | | index = 3;
|
| | | }
|
| | | var monCap = _data.dev_captest_cap==0?_data.dev_captest_cap:_data.dev_captest_cap.toFixed(1);
|
| | | // 设置设备状态字符串
|
| | | str = "状态:" + workStates[index]+
|
| | | ",告警:"+alarmStates[_data.dev_alarmstate]+
|
| | | ",组端电压(V):"+_data.dev_captest_groupvol+
|
| | | ",在线电压(V):"+_data.dev_captest_onlinevol+
|
| | | ",电流(A):"+_data.dev_captest_curr+
|
| | | ",容量(AH):"+monCap;
|
| | | // 设置设备内阻测试的字符串
|
| | | if(index == 3){
|
| | | str = "状态:"+workStates[index]+
|
| | | ",组号:"+_data.dev_testgroupnum+
|
| | | ",当前单体编号:"+(_data.dev_restest_monindex+1)+
|
| | | ",被测单体总数:"+_data.dev_restest_moncount;
|
| | | }
|
| | | // 构造更新表格数据对象
|
| | | var temp = {
|
| | | devStatus: str // 设备状态
|
| | | ,testTime: formatSeconds(_data.dev_captest_timelong) // 测试时长
|
| | | ,signalNum: _data.dev_commcount
|
| | | }
|
| | | |
| | | // 更新表格
|
| | | layuiTbl.updateTr(i, temp);
|
| | | }
|
| | | }
|
| | | }
|
| | | ,complete: function() {
|
| | | // 轮询查看内容
|
| | | updateDevStatus.timer = setTimeout(updateDevStatus, 4000);
|
| | | }
|
| | | });
|
| | | |
| | | |
| | | }
|
| | | |
| | | // 构造查询设备实时状态的参数
|
| | | function updateDevStatusRq() {
|
| | | var data = tOptions.data;
|
| | | var rs = [];
|
| | | // 遍历data的值构造对象
|
| | | for(var i=0; i<data.length; i++) {
|
| | | var _data = data[i];
|
| | | var tmp = {
|
| | | BattGroupId: _data.BattGroupId
|
| | | };
|
| | | |
| | | rs.push(tmp);
|
| | | }
|
| | | |
| | | return rs;
|
| | | }
|
| | | |
| | | // 获取筛选条件的字符串
|
| | | function getFilterStr(data) {
|
| | | var rsString = '';
|
| | | rsString += data.StationName;
|
| | | rsString += '-'+data.MonVolStd+'V设备';
|
| | | rsString += '-'+(data.GroupIndexInFBSDevice == '0'?'电池组1': '电池组2');
|
| | | return rsString;
|
| | | } |
| | |
|
| | | });
|
| | | </script>
|