<style scoped>
|
input[readonly=readonly] {
|
background-color: #EFEFEF;
|
}
|
.item-title.item-label {
|
color: #3B78D8;
|
}
|
</style>
|
<template>
|
<div data-name="nuclear-param-set" class="page">
|
<!-- Top Navbar -->
|
<div class="navbar">
|
<div class="navbar-inner">
|
<div class="left">
|
<a href="#" class="link back">
|
<i class="icon f7-icons">chevron_left</i>
|
</a>
|
</div>
|
<div class="title center">核容参数设置</div>
|
<!-- <div class="right">
|
<a href="#" class="link ac"><i class="icon f7-icons">more_vertical</i></a>
|
</div> -->
|
</div>
|
</div>
|
<div class="toolbar toolbar-bottom" id="nuclearParamSetBtn">
|
<div class="toolbar-inner">
|
<button
|
class="col button button-fill color-blue"
|
style="margin-right: 10px;"
|
v-on:click="readParams()" >读取参数</button>
|
<button class="col button button-fill"
|
v-bind:class="{'color-blue': setBtnStatus, 'color-gray': !setBtnStatus}"
|
v-bind:disabled="!setBtnStatus"
|
v-on:click="setParams()">设置参数</button>
|
</div>
|
</div>
|
<div class="page-content" id="nuclearParamSet">
|
<form class="card list">
|
<ul>
|
<li>
|
<div class="item-content item-input">
|
<div class="item-inner">
|
<div class="item-title item-label">电池组名称</div>
|
<div class="item-input-wrap">
|
<input type="text" readonly="readonly" v-model="staticParam.BattGroupName">
|
</div>
|
</div>
|
</div>
|
</li>
|
<li>
|
<div class="item-content item-input">
|
<div class="item-inner">
|
<div class="item-title item-label">设备ID</div>
|
<div class="item-input-wrap">
|
<input type="text" v-model="param.dev_id" readonly="readonly">
|
</div>
|
</div>
|
</div>
|
</li>
|
<li>
|
<div class="item-content item-input">
|
<div class="item-inner">
|
<div class="item-title item-label">电池组信息</div>
|
<div class="item-input-wrap">
|
<input type="text" v-model="staticParam.BattGroupInfo" readonly="readonly">
|
</div>
|
</div>
|
</div>
|
</li>
|
<li>
|
<div class="item-content item-input">
|
<div class="item-inner">
|
<div class="item-title item-label">电池组信息</div>
|
<div class="item-input-wrap">
|
<input type="text" v-model="param.BattGroupNum" readonly="readonly">
|
</div>
|
</div>
|
</div>
|
</li>
|
<li>
|
<div class="item-content item-input">
|
<div class="item-inner">
|
<div class="item-title item-label">测试类型</div>
|
<div class="item-input-wrap">
|
<select v-model="param.TestCmd">
|
<option value="37">容量测试</option>
|
<option value="50">内阻测试</option>
|
</select>
|
</div>
|
</div>
|
</div>
|
</li>
|
<li>
|
<div class="item-content item-input">
|
<div class="item-inner">
|
<div class="item-title item-label">放电电流(0~1000A)</div>
|
<div class="item-input-wrap">
|
<input type="text" v-model="param.DisCurr">
|
</div>
|
</div>
|
</div>
|
</li>
|
<li>
|
<div class="item-content item-input">
|
<div class="item-inner">
|
<div class="item-title item-label">放电小时率</div>
|
<div class="item-input-wrap">
|
<input type="text" v-model="param.HourRate">
|
</div>
|
</div>
|
</div>
|
</li>
|
<li>
|
<div class="item-content item-input">
|
<div class="item-inner">
|
<div class="item-title item-label">放电电容(0~90000AH)</div>
|
<div class="item-input-wrap">
|
<input type="text" v-model="param.DisCap">
|
</div>
|
</div>
|
</div>
|
</li>
|
<li>
|
<div class="item-content item-input">
|
<div class="item-inner">
|
<div class="item-title item-label">放电时长(0~5940分钟)</div>
|
<div class="item-input-wrap">
|
<input type="text" v-model="param.DisTime">
|
</div>
|
</div>
|
</div>
|
</li>
|
<li>
|
<div class="item-content item-input">
|
<div class="item-inner">
|
<div class="item-title item-label">单体下限阀值(0~20V)</div>
|
<div class="item-input-wrap">
|
<input type="text" v-model="param.MonomerVol_Low">
|
</div>
|
</div>
|
</div>
|
</li>
|
<li>
|
<div class="item-content item-input">
|
<div class="item-inner">
|
<div class="item-title item-label">组端下限阀值(0~60V)</div>
|
<div class="item-input-wrap">
|
<input type="text" v-model="param.GroupVol_Low">
|
</div>
|
</div>
|
</div>
|
</li>
|
<li>
|
<div class="item-content item-input">
|
<div class="item-inner">
|
<div class="item-title item-label">单体下限数量</div>
|
<div class="item-input-wrap">
|
<input type="text" v-model="param.MonomerLowCount">
|
</div>
|
</div>
|
</div>
|
</li>
|
<li>
|
<div class="item-content item-input">
|
<div class="item-inner">
|
<div class="item-title item-label">在线电压低处理</div>
|
<div class="item-input-wrap">
|
<select v-model="param.OnlineLowAction">
|
<option value="0">停止测试</option>
|
<option value="1">继续测试</option>
|
</select>
|
</div>
|
</div>
|
</div>
|
</li>
|
<li>
|
<div class="item-content item-input">
|
<div class="item-inner">
|
<div class="item-title item-label">升压上限(V)</div>
|
<div class="item-input-wrap">
|
<input type="text" v-model="param.DCVolHighLimit">
|
</div>
|
</div>
|
</div>
|
</li>
|
<li>
|
<div class="item-content item-input">
|
<div class="item-inner">
|
<div class="item-title item-label">充电电流(A)</div>
|
<div class="item-input-wrap">
|
<input type="text" v-model="param.ChargeCurrSet">
|
</div>
|
</div>
|
</div>
|
</li>
|
<li>
|
<div class="item-content item-input">
|
<div class="item-inner">
|
<div class="item-title item-label">温度上限(℃)</div>
|
<div class="item-input-wrap">
|
<input type="text" v-model="param.MonomerTmp_High">
|
</div>
|
</div>
|
</div>
|
</li>
|
</ul>
|
</form>
|
</div>
|
</div>
|
</template>
|
<script>
|
return {
|
data: function() {
|
var params = this.$route.params;
|
return {
|
params: params
|
}
|
},
|
on: {
|
pageInit: function() {
|
var params = this.params;
|
var cmd = bus.cmd.bts;
|
var vm = this.vm = new Vue({
|
el: '#nuclearParamSet',
|
delimiters: ['${', '}'],
|
data: {
|
staticParam: {
|
BattGroupName: '',
|
BattGroupInfo: ''
|
},
|
param: {
|
num: cmd.CMD_BTS_GetDischargeParm, // 命令
|
dev_id: params.fbsid, //设备id
|
BattGroupNum: 0, // 电池组编号
|
DisCurr: 0, // 放电电流
|
DisCap: 0, // 放电电容
|
DisTime: 0, // 放电时长
|
GroupVol_Low: 0, // 组端下限阀值
|
HourRate: 0, // 放电小时率
|
MonomerLowCount: 0, // 单体下限数量
|
MonomerVol_Low: 0, // 单体下限阀值
|
OnlineLowAction: 0, // 在线电压低处理
|
TestCmd: 37, // 测试类型
|
ChargeCurrSet: 0, // 充电电流
|
DCVolHighLimit: 0, // 升压上限
|
MonomerTmp_High: 0 // 温度上限
|
},
|
verify: { // 数据的验证
|
DisCurr: {
|
pattern: /^[0-9]+(\.[0-9]*)?$/,
|
regVal: true,
|
min: 0,
|
max: 1000,
|
name: '放电电流',
|
msg: '取值范围0~1000A'
|
},
|
HourRate: {
|
pattern: /^[0-9]+$/,
|
regVal: false,
|
name: '放电小时率',
|
msg: '输入的数据格式不正确'
|
},
|
DisCap: {
|
pattern: /^[0-9]+$/,
|
regVal: true,
|
min: 0,
|
max: 90000,
|
name: '放电电容',
|
msg: '取值范围0~90000AH'
|
},
|
DisTime: {
|
pattern: /^[0-9]+$/,
|
regVal: true,
|
min: 0,
|
max: 5940,
|
name: '放电时长',
|
msg: '取值范围0~5940分钟'
|
},
|
MonomerVol_Low: {
|
pattern: /^[0-9]+(\.[0-9]*)?$/,
|
regVal: true,
|
min: 0,
|
max: 20,
|
name: '单体下限阀值',
|
msg: '取值范围0~20V'
|
},
|
GroupVol_Low: {
|
pattern: /^[0-9]+(\.[0-9]*)?$/,
|
regVal: true,
|
min: 0,
|
max: 60,
|
name: '组端下限阀值',
|
msg: '取值范围0~60V'
|
},
|
MonomerLowCount: {
|
pattern: /^[0-9]+$/,
|
regVal: false,
|
name: '单体下限数量',
|
msg: '输入的数据格式不正确'
|
},
|
DCVolHighLimit: {
|
pattern: /^[0-9]+(\.[0-9]*)?$/,
|
regVal: false,
|
name: '升压上限',
|
msg: '输入的数据格式不正确'
|
},
|
ChargeCurrSet: {
|
pattern: /^[0-9]+(\.[0-9]*)?$/,
|
regVal: false,
|
name: '充电电流',
|
msg: '输入的数据格式不正确'
|
},
|
MonomerTmp_High: {
|
pattern: /^[0-9]+$/,
|
regVal: false,
|
name: '温度上限',
|
msg: '输入的数据格式不正确'
|
}
|
},
|
status: {
|
read: false, // 读取状态
|
values: false // 数据验证状态
|
}
|
},
|
watch: {
|
status: {
|
handler: function(val) {
|
bus.$emit('setStatus', val);
|
},
|
deep: true,
|
}
|
},
|
methods: {
|
readParms: function(option) {
|
var _self = this;
|
app.preloader.show();
|
$.ajax({
|
type: "post",
|
url: "Fbs9100_setparamAction_action_serchbyDev_id",
|
async:true,
|
dataType:'json',
|
data: "json="+JSON.stringify(option),
|
success:function(res){
|
var rs = JSON.parse(res.result);
|
if(rs.code == 1){
|
var data = rs.data;
|
_self.setBTSParam(data[0].fsparam); // 设置参数
|
_self.status.read = true; // 设置读取状态
|
_self.status.values = true; // 设置数据状态
|
}else {
|
toast.open({
|
text: '获取失败',
|
position: 'center',
|
closeTimeout: 2000
|
});
|
_self.status.read = false; // 设置读取状态
|
_self.status.values = false; // 设置数据状态
|
}
|
app.preloader.hide();
|
}
|
});
|
},
|
setBTSParam: function(data) {
|
var param = this.param;
|
param.DisCurr = data.DisCurr; // 放电电流
|
param.DisCap = data.DisCap; // 放电电容
|
param.DisTime = data.DisTime; // 放电时长
|
param.GroupVol_Low = data.GroupVol_Low; // 组端下限阀值
|
param.HourRate = data.HourRate; // 放电小时率
|
param.MonomerLowCount = data.MonomerLowCount; // 单体下限数量
|
param.MonomerVol_Low = data.MonomerVol_Low; // 单体下限阀值
|
param.OnlineLowAction = data.OnlineLowAction; // 在线电压低处理
|
// 对测试类型进行处理
|
var testCmd= data.TestCmd==0?37:data.TestCmd;
|
param.TestCmd = testCmd; // 测试类型
|
param.ChargeCurrSet = data.ChargeCurrSet; // 充电电流
|
param.DCVolHighLimit = data.DCVolHighLimit; // 升压上限
|
param.MonomerTmp_High = data.MonomerTmp_High; // 温度上限
|
},
|
updateParam: function() {
|
var param = this.param;
|
var verify = this.verify;
|
// 修改命令num属性的的值为设置参数
|
param.num = cmd.CMD_BTS_SetDischargeParm;
|
checkObjIsGood(param, verify, function(result) {
|
if(result.code) {
|
// 添加确认框
|
app.dialog.confirm('确认设置核容测试参数?', function() {
|
// 根据内容设置参数
|
app.preloader.show(); // 开启等待框
|
$.ajax({
|
type: "post",
|
url: "Fbs9100_setparamAction_action_update",
|
async:true,
|
dataType:'json',
|
data:"json="+JSON.stringify(result.data),
|
success: function(res){
|
app.preloader.hide(); // 关闭等待框
|
var rs = JSON.parse(res.result);
|
if(rs.code == 1) {
|
toast.open({
|
text: '设置成功!',
|
position: 'center',
|
closeTimeout: 2000
|
});
|
}else {
|
toast.open({
|
text: '设置参数失败,请检查网络',
|
position: 'center',
|
closeTimeout: 2000
|
});
|
}
|
},
|
error: function() {
|
toast.open({
|
text: '设置参数失败,请检查网络',
|
position: 'center',
|
closeTimeout: 2000
|
});
|
app.preloader.hide(); // 关闭等待框
|
}
|
});
|
});
|
}else { // 检测数据不合格提示
|
toast.open({
|
text: result.name+":"+result.msg,
|
position: 'top',
|
closeTimeout: 3000
|
});
|
}
|
});
|
},
|
searchBattGroupInfo: function() {
|
var _self = this;
|
// 读取电池组的信息
|
$.ajax({
|
type: "post",
|
url: "BattInfAction!serchByBattGroupName",
|
async:true,
|
dataType:'json',
|
data:"bif.StationName1=&bif.StationName="+params.home,
|
success:function(res){
|
var rs = JSON.parse(res.result);
|
if(rs.code ==1) {
|
var data = rs.data;
|
for(var i=0; i<data.length; i++) {
|
var _data = data[i];
|
// 根据电池组id设置电池组静态数据
|
if(params.groupid == _data.BattGroupId){
|
var battGroupName = _data.StationName+":"+_data.BattGroupName+"-"+_data.MonCount+"节";
|
_self.staticParam.BattGroupName = battGroupName;
|
_self.param.BattGroupNum= _data.GroupIndexInFBSDevice + 1; //设置被测电池组号
|
var battGroupInfo = "单体数量:"+_data.MonCount+";电压(V):"+_data.MonVolStd+";容量(AH):"+_data.MonCapStd
|
_self.staticParam.BattGroupInfo = battGroupInfo;
|
}
|
}
|
}
|
}
|
});
|
}
|
},
|
mounted: function() {
|
var _self = this;
|
// 读取电池组信息
|
this.searchBattGroupInfo();
|
// 读取电池参数
|
var readParams= {
|
num: cmd.CMD_BTS_GetDischargeParm,
|
dev_id: params.fbsid,
|
TestCmd: 0
|
}
|
this.readParms(readParams);
|
|
// 监控读取参数按钮
|
bus.$off('readParams').$on('readParams', function() {
|
_self.readParms(readParams);
|
});
|
|
// 监听设置按钮
|
bus.$off('setParams').$on('setParams', function(bool) {
|
if(bool) {
|
_self.updateParam();
|
}
|
});
|
}
|
});
|
var btnVm = new Vue({
|
el: '#nuclearParamSetBtn',
|
delimiters: ['${', '}'],
|
data: {
|
setBtnStatus: false
|
},
|
methods: {
|
readParams: function() {
|
bus.$emit('readParams');
|
},
|
setParams: function() {
|
bus.$emit('setParams', this.setBtnStatus);
|
}
|
},
|
mounted: function() {
|
var _self = this;
|
bus.$off('setStatus').$on('setStatus', function(status) {
|
if(status.read && status.values) {
|
_self.setBtnStatus = true;
|
}else {
|
_self.setBtnStatus = false;
|
}
|
});
|
}
|
});
|
}
|
}
|
}
|
</script>
|