Compare commits
2 Commits
8da41d5c55
...
55513ac189
Author | SHA1 | Date |
---|---|---|
xiaomeng | 55513ac189 | |
home孙 | 13b59c005d |
|
@ -421,6 +421,10 @@ readfilllight(data) {
|
||||||
interiorthermalinsulation(data) {
|
interiorthermalinsulation(data) {
|
||||||
return sendGetRequest(`/readControl/interiorthermalinsulation`, data)
|
return sendGetRequest(`/readControl/interiorthermalinsulation`, data)
|
||||||
},
|
},
|
||||||
|
//立面保温
|
||||||
|
facadeinsulation(data) {
|
||||||
|
return sendGetRequest(`/readControl/facadeinsulation`, data)
|
||||||
|
},
|
||||||
//环流风扇
|
//环流风扇
|
||||||
readcirculationfan(data) {
|
readcirculationfan(data) {
|
||||||
return sendGetRequest(`/readControl/readcirculationfan`, data)
|
return sendGetRequest(`/readControl/readcirculationfan`, data)
|
||||||
|
|
|
@ -125,6 +125,8 @@ export default {
|
||||||
{ name: '通风窗2', status: -1, router: 'sunroofControl', index: 2 },
|
{ name: '通风窗2', status: -1, router: 'sunroofControl', index: 2 },
|
||||||
{ name: '通风窗3', status: -1, router: 'sunroofControl', index: 3 },
|
{ name: '通风窗3', status: -1, router: 'sunroofControl', index: 3 },
|
||||||
{ name: '通风窗4', status: -1, router: 'sunroofControl', index: 4 },
|
{ name: '通风窗4', status: -1, router: 'sunroofControl', index: 4 },
|
||||||
|
{ name: '通风窗5', status: -1, router: 'sunroofControl', index: 5 },
|
||||||
|
{ name: '通风窗6', status: -1, router: 'sunroofControl', index: 6 },
|
||||||
], router: "sunroofControl",
|
], router: "sunroofControl",
|
||||||
});
|
});
|
||||||
} else if (el.id == 25) {
|
} else if (el.id == 25) {
|
||||||
|
@ -151,7 +153,17 @@ export default {
|
||||||
{ name: '内保温2', status: -1, router: 'internalInsulation', index: 2 },
|
{ name: '内保温2', status: -1, router: 'internalInsulation', index: 2 },
|
||||||
], router: "internalInsulation",
|
], router: "internalInsulation",
|
||||||
});
|
});
|
||||||
} else if (el.id == 26) {
|
} else if (el.id == 29) {
|
||||||
|
this.routerList.push({
|
||||||
|
id: el.id, sort: el.sort,
|
||||||
|
name: el.nickName, list: [
|
||||||
|
{ name: '立面保温1', status: -1, router: 'facadeInsulation', index: 1 },
|
||||||
|
{ name: '立面保温2', status: -1, router: 'facadeInsulation', index: 2 },
|
||||||
|
{ name: '立面保温3', status: -1, router: 'facadeInsulation', index: 3 },
|
||||||
|
{ name: '立面保温4', status: -1, router: 'facadeInsulation', index: 4 },
|
||||||
|
], router: "facadeInsulation",
|
||||||
|
});
|
||||||
|
} else if (el.id == 26) {
|
||||||
this.routerList.push({
|
this.routerList.push({
|
||||||
id: el.id, sort: el.sort, name: el.nickName, list: [
|
id: el.id, sort: el.sort, name: el.nickName, list: [
|
||||||
{ name: '风机', status: -1, router: 'wetFan', index: 1 },
|
{ name: '风机', status: -1, router: 'wetFan', index: 1 },
|
||||||
|
|
|
@ -252,6 +252,10 @@ const routes = [
|
||||||
path: '/systemSet-con',
|
path: '/systemSet-con',
|
||||||
name: 'systemSet-con',
|
name: 'systemSet-con',
|
||||||
component: () => import('../views/page/systemSet-con.vue')
|
component: () => import('../views/page/systemSet-con.vue')
|
||||||
|
},{
|
||||||
|
path: '/facadeInsulation',
|
||||||
|
name: 'facadeInsulation',
|
||||||
|
component: () => import('../views/page/facadeInsulation.vue')
|
||||||
},]
|
},]
|
||||||
},]
|
},]
|
||||||
},
|
},
|
||||||
|
|
|
@ -0,0 +1,340 @@
|
||||||
|
<template>
|
||||||
|
<div class="internalInsulation">
|
||||||
|
<div class="table-title">
|
||||||
|
<img src="../../assets/img/internalInsulation.png" alt="">立面保温{{ indexs }}
|
||||||
|
</div>
|
||||||
|
<div class="title-tips">工作方式选择
|
||||||
|
<div class="input-btn">
|
||||||
|
<div class="btn btn-tips" @click="changeOpen(0)" :class="inputData[startList[indexs - 1]] == 0 ? 'blue' : 'green'">
|
||||||
|
{{ inputData[startList[indexs - 1]] == 0 ? '无效' : '有效' }}
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="flex-view">
|
||||||
|
<div class="input-btn ">
|
||||||
|
<div class="btn" @click="changeOpen(1)" :class="inputData[startList[indexs - 1]] == 1 ? 'blue' : 'green'">
|
||||||
|
<img src="../../assets/image/irrigateSet2.png" alt="" />自动运行
|
||||||
|
</div>
|
||||||
|
<div class="btn" @click="changeOpen(2)" :class="inputData[startList[indexs - 1]] == 2 ? 'blue' : 'green'">
|
||||||
|
<img src="../../assets/image/irrigateSet3.png" alt="" />手动打开
|
||||||
|
</div>
|
||||||
|
<div class="btn" @click="changeOpen(3)" :class="inputData[startList[indexs - 1]] == 3 ? 'blue' : 'green'">
|
||||||
|
<img src="../../assets/image/irrigateSet1.png" alt="" />手动关闭
|
||||||
|
</div>
|
||||||
|
<div class="btn" @click="changeOpen(4)" :class="inputData[startList[indexs - 1]] == 4 ? 'blue' : 'green'">
|
||||||
|
<img src="../../assets/image/irrigateSet1.png" alt="" />停止
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="flex-view border-none shrink-none padding-none">
|
||||||
|
<div class="input-main-80">
|
||||||
|
<span>保温开始时间:</span>
|
||||||
|
<input @blur="blurChange(startList[indexs-1]+2, $event)" v-model="inputData[startList[indexs-1]+2]" @input="change(startList[indexs-1]+2, $event)"
|
||||||
|
type="text" placeholder="0">
|
||||||
|
<span>:</span>
|
||||||
|
<input @blur="blurChange(startList[indexs-1]+3, $event)" v-model="inputData[startList[indexs-1]+3]" @input="change(startList[indexs-1]+3, $event)"
|
||||||
|
type="text" placeholder="0">
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="flex-view shrink-none padding-none">
|
||||||
|
<div class="input-main-80">
|
||||||
|
<span>保温结束时间:</span>
|
||||||
|
<input @blur="blurChange(startList[indexs-1]+4, $event)" v-model="inputData[startList[indexs-1]+4]" @input="change(startList[indexs-1]+4, $event)"
|
||||||
|
type="text" placeholder="0">
|
||||||
|
<span>:</span>
|
||||||
|
<input @blur="blurChange(startList[indexs-1]+5, $event)" v-model="inputData[startList[indexs-1]+5]" @input="change(startList[indexs-1]+5, $event)"
|
||||||
|
type="text" placeholder="0">
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
<div class="flex-view border-none shrink-none padding-none">
|
||||||
|
<div class="input-btn">
|
||||||
|
<div class="btn btn-w80" @click="changeIndexOpen(0)" :class="actList1[0] == '1' ? 'blue' : 'off'">
|
||||||
|
{{ actList1[0] == '1' ? '有效' : '无效' }}
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="input-main-80">
|
||||||
|
<span>当光照大于</span>
|
||||||
|
<input @blur="blurChange10(startList[indexs - 1] + 6, $event)" v-model="inputData[startList[indexs - 1] + 6]"
|
||||||
|
@input="changeCount10(startList[indexs - 1] + 6, $event)" type="text" placeholder="0">
|
||||||
|
<span>klu </span>
|
||||||
|
<span>提前</span>
|
||||||
|
<input @blur="blurChange(startList[indexs-1]+7, $event)" v-model="inputData[startList[indexs-1]+7]" @input="change(startList[indexs-1]+7, $event)"
|
||||||
|
type="text" placeholder="0">
|
||||||
|
<span>分钟收拢内保温</span>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
<script>
|
||||||
|
export default {
|
||||||
|
data() {
|
||||||
|
return {
|
||||||
|
openIndex: 1,
|
||||||
|
inputData: [],
|
||||||
|
startList: [22300, 22313,22326,22339],//每个阀门的起始参数
|
||||||
|
indexs: 1,
|
||||||
|
actList1: [],
|
||||||
|
loading:null,
|
||||||
|
}
|
||||||
|
},
|
||||||
|
watch: {
|
||||||
|
$route(newVal, oldVal) {
|
||||||
|
const that = this;
|
||||||
|
this.indexs = this.$route.query.id ? this.$route.query.id : 1;
|
||||||
|
setTimeout(() => {
|
||||||
|
that.getActive1();
|
||||||
|
}, 0);
|
||||||
|
},
|
||||||
|
'$store.state.equipmentIndex'(newVal, oldVal) {
|
||||||
|
this.dataInit();
|
||||||
|
},
|
||||||
|
},
|
||||||
|
mounted() {
|
||||||
|
const that = this;
|
||||||
|
this.indexs = this.$route.query.id ? this.$route.query.id : 1;
|
||||||
|
setTimeout(() => {
|
||||||
|
|
||||||
|
that.dataInit();
|
||||||
|
}, 0);
|
||||||
|
//input获取焦点后全选
|
||||||
|
let inputList = document.querySelectorAll('input');
|
||||||
|
for (let index = 0; index < inputList.length; index++) {
|
||||||
|
inputList[index].onfocus = this.selectValue;//input放入焦点,全选文本
|
||||||
|
}
|
||||||
|
},
|
||||||
|
methods: {
|
||||||
|
//失去焦点 计算公式 x/10
|
||||||
|
blurChange10(code, el) {
|
||||||
|
var store = this.$store.state
|
||||||
|
var data = {
|
||||||
|
equipmentId: store.equipmentList[store.equipmentIndex - 1].deviceId,
|
||||||
|
regAddress: code,
|
||||||
|
num: el.target.value * 10,
|
||||||
|
}; //避免开启多个计时器
|
||||||
|
if (store.nowInput != el.target.value) {
|
||||||
|
this.changeData(data);
|
||||||
|
}
|
||||||
|
// if (this.timer) {
|
||||||
|
// this.timer && clearInterval(this.timer);
|
||||||
|
// this.changeData(data);
|
||||||
|
// }
|
||||||
|
|
||||||
|
},
|
||||||
|
//反向计算 计算公式 x/10
|
||||||
|
changeCount10(code, el) {
|
||||||
|
var data = el.target.value * 10
|
||||||
|
var sendData = {
|
||||||
|
target: {
|
||||||
|
value: data
|
||||||
|
}
|
||||||
|
}
|
||||||
|
this.change(code, sendData)
|
||||||
|
},
|
||||||
|
// 计算展示值 计算公式 x/10
|
||||||
|
countData10(data) {
|
||||||
|
if (data) {
|
||||||
|
return data / 10
|
||||||
|
} else {
|
||||||
|
return 0
|
||||||
|
}
|
||||||
|
},
|
||||||
|
// 计算展示值 计算公式 (x - 400) / 10
|
||||||
|
countData(data) {
|
||||||
|
if (data) {
|
||||||
|
return (data - 400) / 10
|
||||||
|
} else {
|
||||||
|
return 0
|
||||||
|
}
|
||||||
|
},
|
||||||
|
//失去焦点
|
||||||
|
blurChangeCount(code, el) {
|
||||||
|
var store = this.$store.state
|
||||||
|
var data = {
|
||||||
|
equipmentId: store.equipmentList[store.equipmentIndex - 1].deviceId,
|
||||||
|
regAddress: code,
|
||||||
|
num: (el.target.value * 10) + 400,
|
||||||
|
}; //避免开启多个计时器
|
||||||
|
if (store.nowInput != el.target.value) {
|
||||||
|
this.changeData(data);
|
||||||
|
}
|
||||||
|
// if (this.timer) {
|
||||||
|
// this.timer && clearInterval(this.timer);
|
||||||
|
// this.changeData(data);
|
||||||
|
// }
|
||||||
|
},
|
||||||
|
changeCountData(code, el) {
|
||||||
|
var data = (el.target.value * 10) + 400
|
||||||
|
var sendData = {
|
||||||
|
target: {
|
||||||
|
value: data
|
||||||
|
}
|
||||||
|
}
|
||||||
|
this.change(code, sendData)
|
||||||
|
},
|
||||||
|
//开关无效
|
||||||
|
changeIndexOpen(active) {
|
||||||
|
if (this.actList1[active] == '1') {
|
||||||
|
this.actList1[active] = '0'
|
||||||
|
} else {
|
||||||
|
this.actList1[active] = '1'
|
||||||
|
}
|
||||||
|
this.$forceUpdate();
|
||||||
|
var revList = this.actList1.slice().reverse()
|
||||||
|
var num = revList.join("");
|
||||||
|
var dataNum = {
|
||||||
|
target: {
|
||||||
|
value: parseInt(num, 2),
|
||||||
|
},
|
||||||
|
};
|
||||||
|
this.inputData[this.startList[this.indexs - 1] + 1]=parseInt(num, 2)
|
||||||
|
this.changeBtn(this.startList[this.indexs - 1] + 1, dataNum);
|
||||||
|
},
|
||||||
|
getActive1() {
|
||||||
|
this.actList1 = []
|
||||||
|
var num = this.inputData[this.startList[this.indexs - 1] + 1]
|
||||||
|
|
||||||
|
var num1 = this.padString(num.toString(2), 1)
|
||||||
|
var openListNew = []
|
||||||
|
openListNew = num1.split("")
|
||||||
|
this.actList1 = openListNew.reverse();
|
||||||
|
},
|
||||||
|
// 工作方式选择
|
||||||
|
changeOpen(index) {
|
||||||
|
this.inputData[this.startList[this.indexs - 1]] = index;
|
||||||
|
var dataNum = {
|
||||||
|
target: {
|
||||||
|
value: index,
|
||||||
|
},
|
||||||
|
};
|
||||||
|
this.changeBtn(this.startList[this.indexs - 1], dataNum);
|
||||||
|
},
|
||||||
|
dataInit() {
|
||||||
|
this.loading = this.$loading({
|
||||||
|
lock: true,
|
||||||
|
text: '加载中',
|
||||||
|
spinner: 'el-icon-loading',
|
||||||
|
background: 'rgba(0, 0, 0, 0.7)'
|
||||||
|
});
|
||||||
|
var store = this.$store.state
|
||||||
|
var data = {
|
||||||
|
deviceId: store.equipmentList[store.equipmentIndex - 1].deviceId,
|
||||||
|
};
|
||||||
|
this.api.facadeinsulation(data).then(res => {
|
||||||
|
this.loading.close()
|
||||||
|
if (res.data.code == 200) {
|
||||||
|
this.inputData = res.data.data;
|
||||||
|
this.startList.forEach((el, index) => {
|
||||||
|
this.inputData[el + 6] = this.countData10(this.inputData[el + 6])
|
||||||
|
})
|
||||||
|
this.getActive1()
|
||||||
|
}
|
||||||
|
})
|
||||||
|
},
|
||||||
|
//二进制转换后的补全
|
||||||
|
padString(str, length) {
|
||||||
|
return str.padStart(length, '0');
|
||||||
|
},
|
||||||
|
//反转数组 不影响原数组
|
||||||
|
myReverse(arr) {
|
||||||
|
return [...arr].reverse()
|
||||||
|
},
|
||||||
|
//全选文本
|
||||||
|
selectValue(e) {
|
||||||
|
var store = this.$store.state
|
||||||
|
store.nowInput = e.target.value
|
||||||
|
e.currentTarget.select();
|
||||||
|
},
|
||||||
|
//失去焦点
|
||||||
|
blurChange(code, el) {
|
||||||
|
var store = this.$store.state
|
||||||
|
var data = {
|
||||||
|
equipmentId: store.equipmentList[store.equipmentIndex - 1].deviceId,
|
||||||
|
regAddress: code,
|
||||||
|
num: el.target.value,
|
||||||
|
}; //避免开启多个计时器
|
||||||
|
if (store.nowInput != el.target.value) {
|
||||||
|
this.changeData(data);
|
||||||
|
}
|
||||||
|
// if (this.timer) {
|
||||||
|
// this.timer && clearInterval(this.timer);
|
||||||
|
// this.changeData(data);
|
||||||
|
// }
|
||||||
|
|
||||||
|
},
|
||||||
|
//修改数据的函数
|
||||||
|
changeBtn(code, el) {
|
||||||
|
var store = this.$store.state
|
||||||
|
var data = {
|
||||||
|
equipmentId: store.equipmentList[store.equipmentIndex - 1].deviceId,
|
||||||
|
regAddress: code,
|
||||||
|
num: el.target.value,
|
||||||
|
};
|
||||||
|
this.delayTimerBtn(0, data);
|
||||||
|
},
|
||||||
|
//切换btn的限制 写入停止后j*100毫秒调取函数
|
||||||
|
delayTimerBtn(i, data) {
|
||||||
|
const that = this;
|
||||||
|
//整体接口
|
||||||
|
let j = this.$store.state.lateSendBtn;
|
||||||
|
//避免开启多个计时器
|
||||||
|
this.timer && clearInterval(this.timer);
|
||||||
|
|
||||||
|
this.timer = setInterval(() => {
|
||||||
|
++i;
|
||||||
|
if (i == j) {
|
||||||
|
that.changeData(data);
|
||||||
|
clearInterval(this.timer);
|
||||||
|
}
|
||||||
|
}, 100);
|
||||||
|
},
|
||||||
|
change(code, el) {
|
||||||
|
var store = this.$store.state
|
||||||
|
var data = {
|
||||||
|
equipmentId: store.equipmentList[store.equipmentIndex - 1].deviceId,
|
||||||
|
regAddress: code,
|
||||||
|
num: el.target.value,
|
||||||
|
};
|
||||||
|
this.delayTimer(0, data);
|
||||||
|
},
|
||||||
|
//限制 写入停止后j*100毫秒调取函数
|
||||||
|
delayTimer(i, data) {
|
||||||
|
// const that = this;
|
||||||
|
// //整体接口
|
||||||
|
// let j = this.$store.state.lateSend;
|
||||||
|
// //避免开启多个计时器
|
||||||
|
// this.timer && clearInterval(this.timer);
|
||||||
|
|
||||||
|
// this.timer = setInterval(() => {
|
||||||
|
// ++i;
|
||||||
|
// if (i == j) {
|
||||||
|
// that.changeData(data);
|
||||||
|
// clearInterval(this.timer);
|
||||||
|
// }
|
||||||
|
// }, 100);
|
||||||
|
},
|
||||||
|
changeData(data) {
|
||||||
|
var store = this.$store.state
|
||||||
|
this.api.postControlWrite(data).then((res) => {
|
||||||
|
if (res.data.code == 200) {
|
||||||
|
this.$message({
|
||||||
|
message: res.data.msg,
|
||||||
|
type: "success",
|
||||||
|
});
|
||||||
|
store.nowInput = ''
|
||||||
|
// this.dataInit();
|
||||||
|
} else {
|
||||||
|
this.inputData[data.regAddress] = store.nowInput
|
||||||
|
this.$message.error(res.data.msg);
|
||||||
|
}
|
||||||
|
this.timer = null
|
||||||
|
});
|
||||||
|
},
|
||||||
|
},
|
||||||
|
|
||||||
|
}
|
||||||
|
</script>
|
||||||
|
<style lang="scss"></style>
|
|
@ -357,7 +357,7 @@
|
||||||
<span>秒</span>
|
<span>秒</span>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="flex-view shrink-none padding-none">
|
<div class="flex-view border-none shrink-none padding-none">
|
||||||
<div class="input-main-80">
|
<div class="input-main-80">
|
||||||
<span>4#通风窗全程运行时间</span>
|
<span>4#通风窗全程运行时间</span>
|
||||||
<input @blur="blurChange(20679, $event)" v-model="inputData[20679]" @input="change(20679, $event)"
|
<input @blur="blurChange(20679, $event)" v-model="inputData[20679]" @input="change(20679, $event)"
|
||||||
|
@ -388,6 +388,70 @@
|
||||||
type="text" placeholder="0">
|
type="text" placeholder="0">
|
||||||
<span>秒</span>
|
<span>秒</span>
|
||||||
</div>
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="flex-view border-none shrink-none padding-none">
|
||||||
|
<div class="input-main-80">
|
||||||
|
<span>5#通风窗全程运行时间</span>
|
||||||
|
<input @blur="blurChange(20733, $event)" v-model="inputData[20733]" @input="change(20733, $event)"
|
||||||
|
type="text" placeholder="0">
|
||||||
|
<span>打开输出通道:</span>
|
||||||
|
<input @blur="blurChange(20735, $event)" v-model="inputData[20735]" @input="change(20735, $event)"
|
||||||
|
type="text" placeholder="0">
|
||||||
|
<span>关闭输出通道:</span>
|
||||||
|
<input @blur="blurChange(20736, $event)" v-model="inputData[20736]" @input="change(20736, $event)"
|
||||||
|
type="text" placeholder="0">
|
||||||
|
</div>
|
||||||
|
<div class="input-sel input-sel-w140">
|
||||||
|
<span>通风窗朝向</span>
|
||||||
|
<el-dropdown @command="handleCommand2($event,20734)">
|
||||||
|
<div class="el-dropdown-link">
|
||||||
|
<input v-model="inputDataNew[20734]" type="text" class="input-input" placeholder="无">
|
||||||
|
<div class="arrow"><img src="../../assets/image/arrow.png" alt=""></div>
|
||||||
|
</div>
|
||||||
|
<el-dropdown-menu class="input-menu-180" slot="dropdown">
|
||||||
|
<el-dropdown-item v-for="item, index in typeList2" :key="index" :command="item.value">{{
|
||||||
|
item.label }}</el-dropdown-item>
|
||||||
|
</el-dropdown-menu>
|
||||||
|
</el-dropdown>
|
||||||
|
</div>
|
||||||
|
<div class="input-main-80">
|
||||||
|
<span>开度基础值:</span>
|
||||||
|
<input @blur="blurChange(20898, $event)" v-model="inputData[20898]" @input="change(20898, $event)"
|
||||||
|
type="text" placeholder="0">
|
||||||
|
<span>秒</span>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="flex-view shrink-none padding-none">
|
||||||
|
<div class="input-main-80">
|
||||||
|
<span>6#通风窗全程运行时间</span>
|
||||||
|
<input @blur="blurChange(20737, $event)" v-model="inputData[20737]" @input="change(20737, $event)"
|
||||||
|
type="text" placeholder="0">
|
||||||
|
<span>打开输出通道:</span>
|
||||||
|
<input @blur="blurChange(20739, $event)" v-model="inputData[20739]" @input="change(20739, $event)"
|
||||||
|
type="text" placeholder="0">
|
||||||
|
<span>关闭输出通道:</span>
|
||||||
|
<input @blur="blurChange(20740, $event)" v-model="inputData[20740]" @input="change(20740, $event)"
|
||||||
|
type="text" placeholder="0">
|
||||||
|
</div>
|
||||||
|
<div class="input-sel input-sel-w140">
|
||||||
|
<span>通风窗朝向</span>
|
||||||
|
<el-dropdown @command="handleCommand2($event,20738)">
|
||||||
|
<div class="el-dropdown-link">
|
||||||
|
<input v-model="inputDataNew[20738]" type="text" class="input-input" placeholder="无">
|
||||||
|
<div class="arrow"><img src="../../assets/image/arrow.png" alt=""></div>
|
||||||
|
</div>
|
||||||
|
<el-dropdown-menu class="input-menu-180" slot="dropdown">
|
||||||
|
<el-dropdown-item v-for="item, index in typeList2" :key="index" :command="item.value">{{
|
||||||
|
item.label }}</el-dropdown-item>
|
||||||
|
</el-dropdown-menu>
|
||||||
|
</el-dropdown>
|
||||||
|
</div>
|
||||||
|
<div class="input-main-80">
|
||||||
|
<span>开度基础值:</span>
|
||||||
|
<input @blur="blurChange(20899, $event)" v-model="inputData[20899]" @input="change(20899, $event)"
|
||||||
|
type="text" placeholder="0">
|
||||||
|
<span>秒</span>
|
||||||
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="flex-view shrink-none padding-none">
|
<div class="flex-view shrink-none padding-none">
|
||||||
<div class="input-main-80">
|
<div class="input-main-80">
|
||||||
|
@ -558,7 +622,7 @@ export default {
|
||||||
{ label: '东北', value: 6 },
|
{ label: '东北', value: 6 },
|
||||||
{ label: '西南', value: 7 },
|
{ label: '西南', value: 7 },
|
||||||
{ label: '西北', value: 8 },],
|
{ label: '西北', value: 8 },],
|
||||||
list2:[20668,20672,20676,20680],
|
list2:[20668,20672,20676,20680,20734,20738],
|
||||||
typeList3: [
|
typeList3: [
|
||||||
{ label: '加热模式', value: 1 },
|
{ label: '加热模式', value: 1 },
|
||||||
{ label: '制冷模式', value: 2 },],
|
{ label: '制冷模式', value: 2 },],
|
||||||
|
|
|
@ -335,7 +335,7 @@
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="flex-view shrink-none">
|
<div class="flex-view shrink-none border-none">
|
||||||
<div class="input-sel input-sel-w180">
|
<div class="input-sel input-sel-w180">
|
||||||
<span>4#通风窗: 目标温度选择</span>
|
<span>4#通风窗: 目标温度选择</span>
|
||||||
<el-dropdown @command="handleCommand3($event, 21769)">
|
<el-dropdown @command="handleCommand3($event, 21769)">
|
||||||
|
@ -389,6 +389,114 @@
|
||||||
</el-dropdown>
|
</el-dropdown>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
<div class="flex-view shrink-none border-none">
|
||||||
|
<div class="input-sel input-sel-w180">
|
||||||
|
<span>5#通风窗: 目标温度选择</span>
|
||||||
|
<el-dropdown @command="handleCommand3($event, 21777)">
|
||||||
|
<div class="el-dropdown-link">
|
||||||
|
<input v-model="inputDataNew[21777]" type="text" class="input-input" placeholder="无">
|
||||||
|
<div class="arrow"><img src="../../assets/image/arrow.png" alt=""></div>
|
||||||
|
</div>
|
||||||
|
<el-dropdown-menu class="input-menu-180" slot="dropdown">
|
||||||
|
<el-dropdown-item v-for="item, index in typeList3" :key="index" :command="item.value">{{
|
||||||
|
item.label }}</el-dropdown-item>
|
||||||
|
</el-dropdown-menu>
|
||||||
|
</el-dropdown>
|
||||||
|
</div>
|
||||||
|
<div class="input-sel input-sel-w180">
|
||||||
|
<span>环境温度选择</span>
|
||||||
|
<el-dropdown @command="handleCommand1($event, 21776)">
|
||||||
|
<div class="el-dropdown-link">
|
||||||
|
<input v-model="inputDataNew[21776]" type="text" class="input-input" placeholder="无">
|
||||||
|
<div class="arrow"><img src="../../assets/image/arrow.png" alt=""></div>
|
||||||
|
</div>
|
||||||
|
<el-dropdown-menu class="input-menu-180" slot="dropdown">
|
||||||
|
<el-dropdown-item v-for="item, index in typeList1" :key="index" :command="item.value">{{
|
||||||
|
item.label }}</el-dropdown-item>
|
||||||
|
</el-dropdown-menu>
|
||||||
|
</el-dropdown>
|
||||||
|
</div>
|
||||||
|
<div class="input-sel input-sel-w180">
|
||||||
|
<span>目标湿度选择</span>
|
||||||
|
<el-dropdown @command="handleCommand4($event, 21779)">
|
||||||
|
<div class="el-dropdown-link">
|
||||||
|
<input v-model="inputDataNew[21779]" type="text" class="input-input" placeholder="无">
|
||||||
|
<div class="arrow"><img src="../../assets/image/arrow.png" alt=""></div>
|
||||||
|
</div>
|
||||||
|
<el-dropdown-menu class="input-menu-180" slot="dropdown">
|
||||||
|
<el-dropdown-item v-for="item, index in typeList4" :key="index" :command="item.value">{{
|
||||||
|
item.label }}</el-dropdown-item>
|
||||||
|
</el-dropdown-menu>
|
||||||
|
</el-dropdown>
|
||||||
|
</div>
|
||||||
|
<div class="input-sel input-sel-w180">
|
||||||
|
<span>环境湿度选择</span>
|
||||||
|
<el-dropdown @command="handleCommand2($event, 21778)">
|
||||||
|
<div class="el-dropdown-link">
|
||||||
|
<input v-model="inputDataNew[21778]" type="text" class="input-input" placeholder="无">
|
||||||
|
<div class="arrow"><img src="../../assets/image/arrow.png" alt=""></div>
|
||||||
|
</div>
|
||||||
|
<el-dropdown-menu class="input-menu-180" slot="dropdown">
|
||||||
|
<el-dropdown-item v-for="item, index in typeList2" :key="index" :command="item.value">{{
|
||||||
|
item.label }}</el-dropdown-item>
|
||||||
|
</el-dropdown-menu>
|
||||||
|
</el-dropdown>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="flex-view shrink-none">
|
||||||
|
<div class="input-sel input-sel-w180">
|
||||||
|
<span>6#通风窗: 目标温度选择</span>
|
||||||
|
<el-dropdown @command="handleCommand3($event, 21781)">
|
||||||
|
<div class="el-dropdown-link">
|
||||||
|
<input v-model="inputDataNew[21781]" type="text" class="input-input" placeholder="无">
|
||||||
|
<div class="arrow"><img src="../../assets/image/arrow.png" alt=""></div>
|
||||||
|
</div>
|
||||||
|
<el-dropdown-menu class="input-menu-180" slot="dropdown">
|
||||||
|
<el-dropdown-item v-for="item, index in typeList3" :key="index" :command="item.value">{{
|
||||||
|
item.label }}</el-dropdown-item>
|
||||||
|
</el-dropdown-menu>
|
||||||
|
</el-dropdown>
|
||||||
|
</div>
|
||||||
|
<div class="input-sel input-sel-w180">
|
||||||
|
<span>环境温度选择</span>
|
||||||
|
<el-dropdown @command="handleCommand1($event, 21780)">
|
||||||
|
<div class="el-dropdown-link">
|
||||||
|
<input v-model="inputDataNew[21780]" type="text" class="input-input" placeholder="无">
|
||||||
|
<div class="arrow"><img src="../../assets/image/arrow.png" alt=""></div>
|
||||||
|
</div>
|
||||||
|
<el-dropdown-menu class="input-menu-180" slot="dropdown">
|
||||||
|
<el-dropdown-item v-for="item, index in typeList1" :key="index" :command="item.value">{{
|
||||||
|
item.label }}</el-dropdown-item>
|
||||||
|
</el-dropdown-menu>
|
||||||
|
</el-dropdown>
|
||||||
|
</div>
|
||||||
|
<div class="input-sel input-sel-w180">
|
||||||
|
<span>目标湿度选择</span>
|
||||||
|
<el-dropdown @command="handleCommand4($event, 21783)">
|
||||||
|
<div class="el-dropdown-link">
|
||||||
|
<input v-model="inputDataNew[21783]" type="text" class="input-input" placeholder="无">
|
||||||
|
<div class="arrow"><img src="../../assets/image/arrow.png" alt=""></div>
|
||||||
|
</div>
|
||||||
|
<el-dropdown-menu class="input-menu-180" slot="dropdown">
|
||||||
|
<el-dropdown-item v-for="item, index in typeList4" :key="index" :command="item.value">{{
|
||||||
|
item.label }}</el-dropdown-item>
|
||||||
|
</el-dropdown-menu>
|
||||||
|
</el-dropdown>
|
||||||
|
</div>
|
||||||
|
<div class="input-sel input-sel-w180">
|
||||||
|
<span>环境湿度选择</span>
|
||||||
|
<el-dropdown @command="handleCommand2($event, 21782)">
|
||||||
|
<div class="el-dropdown-link">
|
||||||
|
<input v-model="inputDataNew[21782]" type="text" class="input-input" placeholder="无">
|
||||||
|
<div class="arrow"><img src="../../assets/image/arrow.png" alt=""></div>
|
||||||
|
</div>
|
||||||
|
<el-dropdown-menu class="input-menu-180" slot="dropdown">
|
||||||
|
<el-dropdown-item v-for="item, index in typeList2" :key="index" :command="item.value">{{
|
||||||
|
item.label }}</el-dropdown-item>
|
||||||
|
</el-dropdown-menu>
|
||||||
|
</el-dropdown>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
<div class="flex-view shrink-none border-none">
|
<div class="flex-view shrink-none border-none">
|
||||||
<div class="input-sel input-sel-w180">
|
<div class="input-sel input-sel-w180">
|
||||||
|
@ -660,7 +768,7 @@ export default {
|
||||||
{ label: '6#空气温度', value: 8 },
|
{ label: '6#空气温度', value: 8 },
|
||||||
{ label: '7#空气温度', value: 7 },
|
{ label: '7#空气温度', value: 7 },
|
||||||
{ label: '8#空气温度', value: 8 },],
|
{ label: '8#空气温度', value: 8 },],
|
||||||
list1: [21732, 21736, 21740, 21742, 21743, 21744, 21746, 21748, 21752, 21756, 21760, 21764, 21768,21772,21774],
|
list1: [21732, 21736, 21740, 21742, 21743, 21744, 21746, 21748, 21752, 21756, 21760, 21764, 21768,21772,21774,21776,21780],//温度数组
|
||||||
typeList2: [
|
typeList2: [
|
||||||
{ label: '1#平均空气湿度', value: 1 },
|
{ label: '1#平均空气湿度', value: 1 },
|
||||||
{ label: '2#平均空气湿度', value: 2 },
|
{ label: '2#平均空气湿度', value: 2 },
|
||||||
|
@ -672,15 +780,15 @@ export default {
|
||||||
{ label: '6#空气湿度', value: 8 },
|
{ label: '6#空气湿度', value: 8 },
|
||||||
{ label: '7#空气湿度', value: 7 },
|
{ label: '7#空气湿度', value: 7 },
|
||||||
{ label: '8#空气湿度', value: 8 },],
|
{ label: '8#空气湿度', value: 8 },],
|
||||||
list2: [21730, 21731, 21734, 21738, 21750, 21754, 21758, 21762, 21766, 21770],
|
list2: [21730, 21731, 21734, 21738, 21750, 21754, 21758, 21762, 21766, 21770,21778,21782],//湿度数组
|
||||||
typeList3: [
|
typeList3: [
|
||||||
{ label: '目标温度1', value: 1 },
|
{ label: '目标温度1', value: 1 },
|
||||||
{ label: '目标温度2', value: 2 },],
|
{ label: '目标温度2', value: 2 },],
|
||||||
list3: [21733, 21737, 21741, 21745, 21747, 21749, 21753, 21757, 21761, 21765, 21769,21773,21775],
|
list3: [21733, 21737, 21741, 21745, 21747, 21749, 21753, 21757, 21761, 21765, 21769,21773,21775,21777,21781],//目标温度
|
||||||
typeList4: [
|
typeList4: [
|
||||||
{ label: '目标湿度1', value: 1 },
|
{ label: '目标湿度1', value: 1 },
|
||||||
{ label: '目标湿度2', value: 2 },],
|
{ label: '目标湿度2', value: 2 },],
|
||||||
list4: [21735, 21739, 21751, 21755, 21759, 21763, 21767, 21771],
|
list4: [21735, 21739, 21751, 21755, 21759, 21763, 21767, 21771,21779,21783],//目标湿度
|
||||||
inputData: [],
|
inputData: [],
|
||||||
inputDataNew: [],
|
inputDataNew: [],
|
||||||
loading:null,
|
loading:null,
|
||||||
|
|
|
@ -1422,14 +1422,22 @@ export default {
|
||||||
var statusData = { name: el.nickName, type: 14, id: el.id, open: res.data.data[(1096 + ((el.id - 24) * 3))], progress: res.data.data[(1098 + ((el.id - 24) * 3))], index: res.data.data[(1097 + ((el.id - 24) * 3))], count: 0 }
|
var statusData = { name: el.nickName, type: 14, id: el.id, open: res.data.data[(1096 + ((el.id - 24) * 3))], progress: res.data.data[(1098 + ((el.id - 24) * 3))], index: res.data.data[(1097 + ((el.id - 24) * 3))], count: 0 }
|
||||||
statusList.push(statusData)
|
statusList.push(statusData)
|
||||||
} else if (el.id == 26 || el.id == 27 || el.id == 28 || el.id == 29) {
|
} else if (el.id == 26 || el.id == 27 || el.id == 28 || el.id == 29) {
|
||||||
//通风窗
|
//通风窗1234
|
||||||
var statusData = { name: el.nickName, type: 15, id: el.id, open: res.data.data[(1102 + ((el.id - 26) * 3))], progress: res.data.data[(1104 + ((el.id - 26) * 3))], index: res.data.data[(1103 + ((el.id - 26) * 3))], count: res.data.data[1115 + (el.id - 26)] }
|
var statusData = { name: el.nickName, type: 15, id: el.id, open: res.data.data[(1102 + ((el.id - 26) * 3))], progress: res.data.data[(1104 + ((el.id - 26) * 3))], index: res.data.data[(1103 + ((el.id - 26) * 3))], count: res.data.data[1115 + (el.id - 26)] }
|
||||||
statusList.push(statusData)
|
statusList.push(statusData)
|
||||||
} else if (el.id == 30 || el.id == 31) {
|
} else if (el.id == 30 || el.id == 31) {
|
||||||
//内保温
|
//内保温
|
||||||
var statusData = { name: el.nickName, type: 16, id: el.id, open: res.data.data[(1182 + ((el.id - 30) * 3))], progress: res.data.data[(1184 + ((el.id - 30) * 3))], index: res.data.data[(1183 + ((el.id - 30) * 3))], count: 0 }
|
var statusData = { name: el.nickName, type: 16, id: el.id, open: res.data.data[(1182 + ((el.id - 30) * 3))], progress: res.data.data[(1184 + ((el.id - 30) * 3))], index: res.data.data[(1183 + ((el.id - 30) * 3))], count: 0 }
|
||||||
statusList.push(statusData)
|
statusList.push(statusData)
|
||||||
}
|
} else if (el.id == 32 || el.id == 33) {
|
||||||
|
//通风窗56
|
||||||
|
var statusData = { name: el.nickName, type: 15, id: el.id, open: res.data.data[(1188 + ((el.id - 32) * 3))], progress: res.data.data[(1190 + ((el.id - 32) * 3))], index: res.data.data[(1189 + ((el.id - 32) * 3))], count: res.data.data[1194 + (el.id - 32)] }
|
||||||
|
statusList.push(statusData)
|
||||||
|
} else if (el.id == 34 || el.id == 35|| el.id == 36|| el.id == 37) {
|
||||||
|
//立面保温1234
|
||||||
|
var statusData = { name: el.nickName, type: 16, id: el.id, open: res.data.data[(1196 + ((el.id - 34) * 3))], progress: res.data.data[(1198 + ((el.id - 34) * 3))], index: res.data.data[(1197 + ((el.id - 34) * 3))], count: 0 }
|
||||||
|
statusList.push(statusData)
|
||||||
|
}
|
||||||
|
|
||||||
})
|
})
|
||||||
|
|
||||||
|
|
|
@ -200,7 +200,7 @@ export default {
|
||||||
return {
|
return {
|
||||||
inputData: [],
|
inputData: [],
|
||||||
statusData:[],
|
statusData:[],
|
||||||
startList: [21250, 21273, 21296, 21319],//每个阀门的起始参数
|
startList: [21250, 21273, 21296, 21319,21342,21365],//每个阀门的起始参数
|
||||||
indexs: 1,
|
indexs: 1,
|
||||||
actList1: [],
|
actList1: [],
|
||||||
loading:null,
|
loading:null,
|
||||||
|
|
|
@ -107,7 +107,10 @@ export default {
|
||||||
'室外平均露点温度',
|
'室外平均露点温度',
|
||||||
'室外平均C02传感器',
|
'室外平均C02传感器',
|
||||||
'室外平均土温传感器',
|
'室外平均土温传感器',
|
||||||
'室外平均土湿传感器'],
|
'室外平均土湿传感器',
|
||||||
|
'室外平均大气压传感器',
|
||||||
|
"室外平均太阳总辐射传感器",
|
||||||
|
],
|
||||||
|
|
||||||
//平均值数据
|
//平均值数据
|
||||||
actList2: [],
|
actList2: [],
|
||||||
|
@ -215,7 +218,7 @@ export default {
|
||||||
getAct1() {
|
getAct1() {
|
||||||
this.actList1=[]
|
this.actList1=[]
|
||||||
var num = this.inputData['21501']
|
var num = this.inputData['21501']
|
||||||
var num2 = this.padString(num.toString(2), 14)
|
var num2 = this.padString(num.toString(2), 16)
|
||||||
this.actList1New=num2.split("")
|
this.actList1New=num2.split("")
|
||||||
this.actList1New.forEach((el,index)=>{
|
this.actList1New.forEach((el,index)=>{
|
||||||
if(el=='1'){
|
if(el=='1'){
|
||||||
|
@ -411,7 +414,7 @@ export default {
|
||||||
} else {
|
} else {
|
||||||
this.actList1.splice(this.actList1.indexOf(index), 1)
|
this.actList1.splice(this.actList1.indexOf(index), 1)
|
||||||
}
|
}
|
||||||
this.actList1New=['0','0','0','0','0','0','0','0','0','0','0','0','0','0',]
|
this.actList1New=['0','0','0','0','0','0','0','0','0','0','0','0','0','0','0','0']
|
||||||
this.actList1.forEach((el, index) => {
|
this.actList1.forEach((el, index) => {
|
||||||
this.actList1New[this.actList1New.length-el-1] = '1'
|
this.actList1New[this.actList1New.length-el-1] = '1'
|
||||||
})
|
})
|
||||||
|
|
|
@ -65,7 +65,9 @@ export default {
|
||||||
'室外平均露点温度',
|
'室外平均露点温度',
|
||||||
'室外平均C02传感器',
|
'室外平均C02传感器',
|
||||||
'室外平均土温传感器',
|
'室外平均土温传感器',
|
||||||
'室外平均土湿传感器'],
|
'室外平均土湿传感器',
|
||||||
|
'室外平均大气压传感器',
|
||||||
|
"室外平均太阳总辐射传感器",],
|
||||||
actList2: [],
|
actList2: [],
|
||||||
actList2New: [],
|
actList2New: [],
|
||||||
list2: ['目标水肥PH数据',
|
list2: ['目标水肥PH数据',
|
||||||
|
@ -81,7 +83,10 @@ export default {
|
||||||
'3#通道传感器数据',
|
'3#通道传感器数据',
|
||||||
'4#通道传感器数据',
|
'4#通道传感器数据',
|
||||||
'5#通道传感器数据',
|
'5#通道传感器数据',
|
||||||
'6#通道传感器数据'],
|
'6#通道传感器数据',
|
||||||
|
"1#水温传感器数据",
|
||||||
|
"2#水温传感器数据",
|
||||||
|
],
|
||||||
inputData: [],
|
inputData: [],
|
||||||
loading:null,
|
loading:null,
|
||||||
|
|
||||||
|
@ -109,7 +114,7 @@ export default {
|
||||||
getAct1() {
|
getAct1() {
|
||||||
this.actList1=[]
|
this.actList1=[]
|
||||||
var num = this.inputData['500']
|
var num = this.inputData['500']
|
||||||
var num2 = this.padString(num.toString(2), 14)
|
var num2 = this.padString(num.toString(2), 16)
|
||||||
this.actList1New=num2.split("")
|
this.actList1New=num2.split("")
|
||||||
this.actList1New.forEach((el,index)=>{
|
this.actList1New.forEach((el,index)=>{
|
||||||
if(el=='1'){
|
if(el=='1'){
|
||||||
|
@ -120,7 +125,7 @@ export default {
|
||||||
getAct2() {
|
getAct2() {
|
||||||
this.actList2=[]
|
this.actList2=[]
|
||||||
var num = this.inputData['501']
|
var num = this.inputData['501']
|
||||||
var num2 = this.padString(num.toString(2), 14)
|
var num2 = this.padString(num.toString(2), 16)
|
||||||
this.actList2New=num2.split("")
|
this.actList2New=num2.split("")
|
||||||
this.actList2New.forEach((el,index)=>{
|
this.actList2New.forEach((el,index)=>{
|
||||||
if(el=='1'){
|
if(el=='1'){
|
||||||
|
@ -251,7 +256,7 @@ export default {
|
||||||
} else {
|
} else {
|
||||||
this.actList1.splice(this.actList1.indexOf(index), 1)
|
this.actList1.splice(this.actList1.indexOf(index), 1)
|
||||||
}
|
}
|
||||||
this.actList1New=['0','0','0','0','0','0','0','0','0','0','0','0','0','0',]
|
this.actList1New=['0','0','0','0','0','0','0','0','0','0','0','0','0','0','0','0',]
|
||||||
this.actList1.forEach((el, index) => {
|
this.actList1.forEach((el, index) => {
|
||||||
this.actList1New[this.actList1New.length-el-1] = '1'
|
this.actList1New[this.actList1New.length-el-1] = '1'
|
||||||
})
|
})
|
||||||
|
@ -270,7 +275,7 @@ export default {
|
||||||
} else {
|
} else {
|
||||||
this.actList2.splice(this.actList2.indexOf(index), 1)
|
this.actList2.splice(this.actList2.indexOf(index), 1)
|
||||||
}
|
}
|
||||||
this.actList2New=['0','0','0','0','0','0','0','0','0','0','0','0','0','0',]
|
this.actList2New=['0','0','0','0','0','0','0','0','0','0','0','0','0','0','0','0',]
|
||||||
this.actList2.forEach((el, index) => {
|
this.actList2.forEach((el, index) => {
|
||||||
this.actList2New[this.actList2New.length-el-1] = '1'
|
this.actList2New[this.actList2New.length-el-1] = '1'
|
||||||
})
|
})
|
||||||
|
|
Loading…
Reference in New Issue