<template>
|
<div>
|
<van-form>
|
<van-field
|
v-model="groupName"
|
label="电池组名称:"
|
label-width="120"
|
placeholder="请输入电池组名称"
|
name="电池组名称"
|
/>
|
<van-field
|
v-model="FBSDeviceId"
|
label="设备ID:"
|
label-width="120"
|
placeholder="请输入设备ID"
|
name="设备ID"
|
/>
|
<van-field
|
v-model="GroupIndexInFBSDevice"
|
label="电池组编号:"
|
label-width="120"
|
placeholder="请输入电池组编号"
|
name="电池组编号"
|
/>
|
<van-field
|
v-model="groupInfo"
|
label="电池组信息:"
|
label-width="120"
|
placeholder="请输入电池组信息"
|
name="电池组信息"
|
/>
|
</van-form>
|
<van-tabs v-model="active">
|
<!-- 放电参数 -->
|
<van-tab title="充电参数" :disabled="!(0 == opt.num)">
|
<van-field
|
v-model="OnLineVol_Low"
|
label="充电电压(V):"
|
label-width="120"
|
placeholder="请输入充电电压(V)"
|
name="充电电压(V)"
|
/>
|
<van-field
|
v-model="ChargeCurrSet"
|
label="充电电流(A):"
|
label-width="120"
|
placeholder="请输入充电电流(A)"
|
name="充电电流(A)"
|
/>
|
<van-field
|
v-model="AutoTestStartVol"
|
label="浮充电压(V):"
|
label-width="120"
|
placeholder="请输入浮充电压(V)"
|
name="浮充电压(V)"
|
/>
|
<van-field
|
v-model="CharHighTmp"
|
label="充电过温(℃):"
|
label-width="120"
|
placeholder="请输入充电过温(℃)"
|
name="充电过温(℃)"
|
/>
|
<van-field
|
v-model="CharSotpCurr"
|
label="截止电流(A):"
|
label-width="120"
|
placeholder="请输入截止电流(A)"
|
name="截止电流(A)"
|
/>
|
<van-field
|
v-model="CharCap"
|
label="充电容量(AH):"
|
label-width="120"
|
placeholder="请输入充电容量(AH)"
|
name="充电容量(AH)"
|
/>
|
<van-field
|
v-model="MonVolHightLimit"
|
label="单体上限(V):"
|
label-width="120"
|
placeholder="请输入单体上限(V)"
|
name="单体上限(V)"
|
/>
|
<van-field
|
v-model="DCVolHighLimit"
|
label="组端上限(V):"
|
label-width="120"
|
placeholder="请输入组端上限(V)"
|
name="组端上限(V)"
|
/>
|
<van-field
|
v-model="MonVolHightLimitCount"
|
label="单体上限数量(个):"
|
label-width="120"
|
placeholder="请输入单体上限数量(个)"
|
name="单体上限数量(个)"
|
/>
|
<van-field
|
v-model="CharTimeLong"
|
label="充电时长(分钟):"
|
label-width="120"
|
placeholder="请输入充电时长(分钟)"
|
name="充电时长(分钟)"
|
/>
|
<van-field
|
v-model="FloatCharTimeLong"
|
label="浮充时长(分钟):"
|
label-width="120"
|
placeholder="请输入浮充时长(分钟)"
|
name="浮充时长(分钟)"
|
/>
|
</van-tab>
|
<!-- 放电参数 -->
|
<van-tab title="放电参数" :disabled="!(1 == opt.num)">
|
<van-field
|
readonly
|
clickable
|
name="picker"
|
:value="OnlineLowAction"
|
label="放电模式:"
|
placeholder="点击选择放电模式"
|
@click="showPicker = true"
|
/>
|
<van-popup v-model="showPicker" position="bottom">
|
<van-picker
|
show-toolbar
|
:columns="columns"
|
@confirm="onConfirm"
|
@cancel="showPicker = false"
|
/>
|
</van-popup>
|
|
<van-field
|
v-model="DisCurr"
|
label="放电电流(A):"
|
label-width="120"
|
placeholder="请输入放电电流(A)"
|
name="放电电流(A)"
|
/>
|
<van-field
|
v-model="DisCap"
|
label="放电容量(AH):"
|
label-width="120"
|
placeholder="请输入放电容量(AH)"
|
name="放电容量(AH)"
|
/>
|
<van-field
|
readonly
|
clickable
|
name="picker"
|
:value="HourRate"
|
label="放电小时率:"
|
placeholder="点击选择放电小时率"
|
@click="showPicker2 = true"
|
/>
|
<van-popup v-model="showPicker2" position="bottom">
|
<van-picker
|
show-toolbar
|
:columns="columns2"
|
@confirm="onConfirm2"
|
@cancel="showPicker2 = false"
|
/>
|
</van-popup>
|
<van-field
|
v-model="DisPreRes"
|
label="放电阻值(mΩ):"
|
label-width="120"
|
placeholder="请输入放电阻值(mΩ)"
|
name="放电阻值(mΩ)"
|
/>
|
<van-field
|
v-model="DisPower"
|
label="预放功率(KW):"
|
label-width="120"
|
placeholder="请输入预放功率(KW)"
|
name="预放功率(KW)"
|
/>
|
<van-field
|
v-model="DisTime"
|
label="放电时长(分钟):"
|
label-width="120"
|
placeholder="请输入放电时长(分钟)"
|
name="放电时长(分钟)"
|
/>
|
<van-field
|
v-model="MonomerTmp_High"
|
label="放电过温:"
|
label-width="120"
|
placeholder="请输入放电过温"
|
name="放电过温"
|
/>
|
<van-field
|
v-model="GroupVol_Low"
|
label="组端下限(V):"
|
label-width="120"
|
placeholder="请输入组端下限(V)"
|
name="组端下限(V)"
|
/>
|
<van-field
|
v-model="MonomerVol_Low"
|
label="单体下限(V):"
|
label-width="120"
|
placeholder="请输入单体下限(V)"
|
name="单体下限(V)"
|
/>
|
<van-field
|
v-model="MonomerLowCount"
|
label="单体下限数量(个):"
|
label-width="120"
|
placeholder="请输入单体下限数量(个)"
|
name="单体下限数量(个)"
|
/>
|
</van-tab>
|
<!-- 活化参数 -->
|
<van-tab title="活化参数" :disabled="!(2 == opt.num)">
|
<van-field
|
readonly
|
clickable
|
name="picker"
|
:value="OffLineYHOnceCycle"
|
label="活化起点:"
|
placeholder="点击选择活化起点"
|
@click="showPicker3 = true"
|
/>
|
<van-popup v-model="showPicker3" position="bottom">
|
<van-picker
|
show-toolbar
|
:columns="columns3"
|
@confirm="onConfirm3"
|
@cancel="showPicker3 = false"
|
/>
|
</van-popup>
|
<van-field
|
v-model="OffLineYHTimes"
|
label="活化次数(次):"
|
label-width="120"
|
placeholder="请输入活化次数(次)"
|
name="活化次数(次)"
|
/>
|
<van-field
|
v-model="DisWaitTime"
|
label="充完静置(分钟):"
|
label-width="120"
|
placeholder="请输入充完静置(分钟)"
|
name="充完静置(分钟)"
|
/>
|
<van-field
|
v-model="CharWaitTime"
|
label="放完静置(分钟):"
|
label-width="120"
|
placeholder="请输入放完静置(分钟)"
|
name="放完静置(分钟)"
|
/>
|
</van-tab>
|
</van-tabs>
|
<!-- 两端对齐 -->
|
<van-row type="flex" justify="end">
|
<van-col span="6"><van-button type="primary" size="mini" style="width:95%" @click="startTest">启动</van-button></van-col>
|
<van-col span="6"><van-button type="info" size="mini" style="width:95%" @click="getData()">读取</van-button></van-col>
|
<van-col span="6"><van-button type="warning" size="mini" style="width:95%">设定</van-button></van-col>
|
</van-row>
|
|
|
<van-dialog v-model="show" title="输入启动口令,并确认" show-cancel-button @confirm="confirm()">
|
<van-field
|
class="passty"
|
v-model="pass"
|
label-width="120"
|
placeholder="请输入启动口令"
|
/>
|
</van-dialog>
|
</div>
|
</template>
|
<script>
|
import { checkUserPwd,start,getParams } from "@/assets/js/api";
|
import const_aio from "@/assets/js/const_aio"
|
export default {
|
data(){
|
let cmd = const_aio.cmd;
|
// let testType = const_aio.testType;
|
// let rules = const_aio.dischargeRules;
|
// let cycleStart = const_aio.cycleStart;
|
// let HourRate = const_aio.HourRate;
|
return {
|
cmd:cmd,
|
show:false,
|
pass:"",//启动口令
|
opt:{//路由参数
|
|
},
|
groupName:"",//电池组名称
|
FBSDeviceId:"",//设备ID
|
GroupIndexInFBSDevice:"",//电池组编号
|
groupInfo:"",//电池组信息
|
active:0,//选项卡下标
|
// 充电参数
|
OnLineVol_Low:"",//充电电压(V)
|
ChargeCurrSet:"",//充电电流(A)
|
AutoTestStartVol:"",//浮充电压(V)
|
CharHighTmp:"",//充电过温(℃)
|
CharSotpCurr:"",//截止电流(A)
|
CharCap:"",//充电容量(AH)
|
MonVolHightLimit:"",//单体上限(V)
|
DCVolHighLimit:"",//组端上限(V)
|
MonVolHightLimitCount:"",//单体上限数量(个)
|
CharTimeLong:"",//充电时长(分钟)
|
FloatCharTimeLong:"",//浮充时长(分钟)
|
// 放电参数
|
columns: ['杭州', '宁波', '温州', '嘉兴', '湖州'],
|
showPicker: false,
|
columns2: ['杭州', '宁波', '温州', '嘉兴', '湖州'],
|
showPicker2: false,
|
|
OnlineLowAction:"",
|
DisCurr:"",
|
DisCap:"",
|
HourRate:"",
|
DisPreRes:"",
|
DisPower:"",
|
DisTime:"",
|
MonomerTmp_High:"",
|
GroupVol_Low:"",
|
MonomerVol_Low:"",
|
MonomerLowCount:"",
|
// 活化参数
|
columns3: ['杭州', '宁波', '温州', '嘉兴', '湖州'],
|
showPicker3: false,
|
OffLineYHOnceCycle:"",//活化起点
|
OffLineYHTimes:"",//活化次数
|
DisWaitTime:"",//充完静置
|
CharWaitTime:"",//放完静置
|
|
|
}
|
},
|
mounted() {
|
let self = this ;
|
self.opt = this.$route.query;
|
self.$nextTick(()=>{
|
self.active = self.opt.num;
|
self.getData();//获取参数
|
})
|
|
console.log(this.$route.query)
|
},
|
methods: {
|
// 下拉 放电模式
|
onConfirm(value) {
|
this.OnlineLowAction = value;
|
this.showPicker = false;
|
},
|
// 下拉2 放电小时率
|
onConfirm2(value) {
|
this.HourRate = value;
|
this.showPicker2 = false;
|
},
|
// 下拉3 放电小时率
|
onConfirm3(value) {
|
this.OffLineYHOnceCycle = value;
|
this.showPicker3 = false;
|
},
|
// 获取参数
|
getData(){
|
let self = this;
|
getParams({
|
dev_id:"618500001",//self.opt.id,
|
op_cmd:self.cmd.getParams
|
}).then(res=>{
|
let rs = JSON.parse(res.data.result);
|
if(rs.code == 1) {
|
let fsparam = rs.data[0];
|
console.log(fsparam)
|
// // 遍历参数属性并赋值
|
// for (let key in this.params) {
|
// this.params[key] = fsparam[key];
|
// }
|
// // 设置的命令和dev_id
|
// this.params.op_cmd = this.cmd.setParams;
|
// this.$layer.msg('读取成功!');
|
}else {
|
console.log(rs)
|
// this.$layer.msg('读取失败!');
|
}
|
}).catch(err=>{
|
|
})
|
},
|
typeStr(){
|
let self = this;
|
let res = '';
|
switch (self.opt.num) {
|
case '0':
|
res = '充电';
|
break;
|
case '1':
|
res = '放电';
|
break;
|
case '2':
|
res = '活化';
|
break;
|
}
|
return res;
|
},
|
|
|
// 确认口令
|
confirm(){
|
let self = this;
|
self.show = true;
|
// 核对口令
|
checkUserPwd(self.pass).then(res=>{
|
let rs = JSON.parse(res.data.result);
|
if(rs.code == 1) {
|
self.$toast("密码检测通过,启动测试");
|
// 启动测试
|
// this.startTest();
|
}else {
|
self.$toast("启动口令错误!");
|
}
|
}).catch(err=>{
|
self.$toast("网络请求异常");
|
})
|
},
|
// 启动程序运行
|
startTest(){
|
let self = this;
|
start({
|
num:self.cmd,
|
dev_id:self.opt.id,
|
BattGroupNum:self.opt
|
}).then(res=>{
|
let rs = JSON.parse(res.data.result);
|
}).catch(err=>{
|
|
})
|
},
|
},
|
}
|
</script>
|
<style scoped>
|
.passty /deep/.van-field__control{
|
text-align: center;
|
}
|
</style>
|