<script setup>
|
import { ref, onMounted, reactive, watch, nextTick, computed } from "vue";
|
|
|
import useElement from "@/hooks/useElement.js";
|
const { $loading, $message, $confirm } = useElement();
|
|
import {
|
getHrParam,
|
setHrParam,
|
startDis,
|
} from "@/api/control.js";
|
|
const emit = defineEmits(['update:visible']);
|
|
const props = defineProps({
|
battgroupId: {
|
type: [String, Number],
|
},
|
devId: {
|
type: [String, Number],
|
},
|
visible: {
|
type: Boolean,
|
default: false
|
},
|
});
|
|
const layout = {
|
gutter: 16,
|
span: 8,
|
}
|
|
const startFlag = ref(false);
|
const setFlag = ref(false);
|
|
// TODO 参数范围
|
|
const form1 = reactive({
|
devId: '',
|
opCmd: '',
|
testCmd: '',
|
hourrate: '',
|
discurr: '',
|
discap: '',
|
distime: '',
|
groupvolLow: '',
|
monomervolLow: '',
|
monomerlowcount: '',
|
battgroupnum: '',
|
onlinevollowaction: '',
|
dcvolhighlimit: '',
|
chargecurrset: '',
|
monomertmpHigh: '',
|
monvolstd: '',
|
diswaittime: '',
|
moncapstd: '',
|
});
|
|
async function getParam() {
|
let loading = $loading();
|
let res = await getHrParam(props.devId, props.battgroupId);
|
let { code, data, data2 } = res;
|
loading.close();
|
if (code && data) {
|
$message.success('操作成功');
|
setFlag.value = true;
|
} else {
|
$message.error('操作失败');
|
// setFlag.value = false;
|
setFlag.value = true;
|
}
|
if (data2) {
|
for(let key in form1) {
|
form1[key] = data2[key];
|
}
|
}
|
}
|
|
|
async function setParam() {
|
let loading = $loading();
|
let res = await setHrParam(form1);
|
let { code, data } = res;
|
loading.close();
|
if (code && data) {
|
$message.success('操作成功');
|
startFlag.value = true;
|
} else {
|
$message.error('操作失败');
|
// startFlag.value = false;
|
startFlag.value = true;
|
}
|
}
|
|
function close () {
|
emit('update:visible', false);
|
}
|
|
async function startTest() {
|
let loading = $loading();
|
let res = await startDis(props.devId, props.battgroupId);
|
let { code, data } = res;
|
loading.close();
|
if (code && data) {
|
$message.success('操作成功');
|
close();
|
} else {
|
$message.error('操作失败');
|
}
|
}
|
|
|
|
onMounted(() => {
|
getParam();
|
});
|
</script>
|
|
<template>
|
<div class="param-contain">
|
<el-form ref="formRef" :model="form1" label-width="10em">
|
<el-row :gutter="layout.gutter">
|
<el-col
|
:span="layout.span"
|
>
|
<el-form-item label="放电小时率" prop="hourrate">
|
<el-input v-model="form1.hourrate"></el-input>
|
</el-form-item>
|
</el-col>
|
<el-col
|
:span="layout.span"
|
>
|
<el-form-item label="放电电流" prop="discurr">
|
<el-input v-model="form1.discurr"></el-input>
|
</el-form-item>
|
</el-col>
|
<el-col
|
:span="layout.span"
|
>
|
<el-form-item label="放电容量" prop="discap">
|
<el-input v-model="form1.discap"></el-input>
|
</el-form-item>
|
</el-col>
|
<el-col
|
:span="layout.span"
|
>
|
<el-form-item label="放电时长" prop="distime">
|
<el-input v-model="form1.distime"></el-input>
|
</el-form-item>
|
</el-col>
|
<el-col
|
:span="layout.span"
|
>
|
<el-form-item label="组端电压下限" prop="groupvolLow">
|
<el-input v-model="form1.groupvolLow"></el-input>
|
</el-form-item>
|
</el-col>
|
<el-col
|
:span="layout.span"
|
>
|
<el-form-item label="单体电压下限" prop="monomervolLow">
|
<el-input v-model="form1.monomervolLow"></el-input>
|
</el-form-item>
|
</el-col>
|
<el-col
|
:span="layout.span"
|
>
|
<el-form-item label="单体下限数量" prop="monomerlowcount">
|
<el-input v-model="form1.monomerlowcount"></el-input>
|
</el-form-item>
|
</el-col>
|
<el-col
|
:span="layout.span"
|
>
|
<el-form-item label="电池组组号" prop="battgroupnum">
|
<el-input v-model="form1.battgroupnum" disabled></el-input>
|
</el-form-item>
|
</el-col>
|
<el-col
|
:span="layout.span"
|
>
|
<el-form-item label="在线电压低处理" prop="onlinevollowaction">
|
<el-input v-model="form1.onlinevollowaction"></el-input>
|
</el-form-item>
|
</el-col>
|
<el-col
|
:span="layout.span"
|
>
|
<el-form-item label="升压上限" prop="dcvolhighlimit">
|
<el-input v-model="form1.dcvolhighlimit"></el-input>
|
</el-form-item>
|
</el-col>
|
<el-col
|
:span="layout.span"
|
>
|
<el-form-item label="充电电流" prop="chargecurrset">
|
<el-input v-model="form1.chargecurrset"></el-input>
|
</el-form-item>
|
</el-col>
|
<el-col
|
:span="layout.span"
|
>
|
<el-form-item label="单体温度上限" prop="monomertmpHigh">
|
<el-input v-model="form1.monomertmpHigh"></el-input>
|
</el-form-item>
|
</el-col>
|
<el-col
|
:span="layout.span"
|
>
|
<el-form-item label="单体电压" prop="monvolstd">
|
<el-input v-model="form1.monvolstd"></el-input>
|
</el-form-item>
|
</el-col>
|
<el-col
|
:span="layout.span"
|
>
|
<el-form-item label="静置时间" prop="diswaittime">
|
<el-input v-model="form1.diswaittime"></el-input>
|
</el-form-item>
|
</el-col>
|
</el-row>
|
</el-form>
|
<div class="footer">
|
<el-button @click="close">关闭</el-button>
|
<el-button type="primary" :disabled="!startFlag" @click="startTest">启动测试</el-button>
|
<el-button type="primary" :disabled="!setFlag" @click="setParam">设置</el-button>
|
<el-button type="primary" @click="getParam">读取</el-button>
|
</div>
|
</div>
|
</template>
|
|
<style scoped lang="less">
|
.footer {
|
display: flex;
|
justify-content: flex-end;
|
margin-top: 8px;
|
}
|
</style>
|