pc-master #89

Merged
xiaomeng merged 2 commits from pc-master into portal 2024-01-10 02:05:17 +00:00
27 changed files with 1112 additions and 157 deletions

View File

@ -362,7 +362,10 @@ interiorthermalinsulation(data) {
readcirculationfan(data) { readcirculationfan(data) {
return sendGetRequest(`/readControl/readcirculationfan`, data) return sendGetRequest(`/readControl/readcirculationfan`, data)
}, },
//报警设置
readalarmSetting(data) {
return sendGetRequest(`/readControl/alarmSetting`, data)
},
//二维码溯源 //二维码溯源
//查看农事作物信息 //查看农事作物信息

View File

@ -904,6 +904,8 @@
font-weight: 400; font-weight: 400;
color: #8BEAFF; color: #8BEAFF;
margin-top: 20px; margin-top: 20px;
display: flex;
align-items: center;
} }
.text-tips { .text-tips {
@ -986,6 +988,12 @@
min-width: 80px; min-width: 80px;
} }
.btn.btn-tips {
min-width: 70px;
width: 70px;
height: 35px;
}
.btn.btn-w74 { .btn.btn-w74 {
width: 74px; width: 74px;
min-width: unset; min-width: unset;

File diff suppressed because one or more lines are too long

View File

@ -948,6 +948,8 @@
font-weight: 400; font-weight: 400;
color: #8BEAFF; color: #8BEAFF;
margin-top: 20px; margin-top: 20px;
display: flex;
align-items: center;
} }
.text-tips{ .text-tips{
font-size: 16px; font-size: 16px;
@ -1025,6 +1027,11 @@
&.btn-w80{ &.btn-w80{
min-width: 80px; min-width: 80px;
} }
&.btn-tips{
min-width:70px;
width:70px;
height: 35px;
}
&.btn-w74{ &.btn-w74{
width: 74px; width: 74px;
min-width: unset; min-width: unset;

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.7 KiB

View File

@ -9,7 +9,7 @@
</div> </div>
<el-collapse v-model="$store.state.activeNames"> <el-collapse v-model="$store.state.activeNames">
<template v-for="(item, index) in routerList"> <template v-for="(item, index) in routerList">
<el-collapse-item :class="routerNow == item.router ? 'active' : ''" :name="index + 1" :key="index" <el-collapse-item :class="routerNow == item.router||item.router.indexOf(routerNow)!=-1 ? 'active' : ''" :name="index + 1" :key="index"
v-if="!item.isRouter"> v-if="!item.isRouter">
<template slot="title" class="collapse-title"> <template slot="title" class="collapse-title">
<span class="name">{{ item.name }}</span> <span class="name">{{ item.name }}</span>
@ -198,6 +198,7 @@ export default {
isRouter: true, isRouter: true,
}); });
} }
if (isParamInArray3) { if (isParamInArray3) {
this.routerList.push({ this.routerList.push({
name: "传感器通道配置", name: "传感器通道配置",
@ -215,10 +216,35 @@ export default {
}); });
} }
if (isParamInArray5) { if (isParamInArray5) {
this.routerList.push({ name: "目标温度", list: [], router: "targetTemperature", isRouter: true }, this.routerList.push(
{ name: "目标湿度", list: [], router: "targetHumidity", isRouter: true }, {
{ name: "目标CO2", list: [], router: "targetCo2", isRouter: true }); name: "目标值",
router: "targetTemperature,targetHumidity,targetCo2",
list: [
{ name: "目标温度", list: [], router: "targetTemperature", isRouter: true, index: 1 },
{ name: "目标湿度", list: [], router: "targetHumidity", isRouter: true, index: 2 },
{ name: "目标CO2", list: [], router: "targetCo2", isRouter: true, index: 3 }
],
},
);
} }
if (isParamInArray6) {
this.routerList.push(
{
name: "报警设置",
router: "alarmSettings",
list: [],
isRouter: true
},
{
name: "通道报警设置",
router: "exitSettings",
list: [],
isRouter: true
},
);
}
if (isParamInArray7) { if (isParamInArray7) {
this.routerList.push({ name: "设备固有参数", list: [], router: "intrinsicParameter", isRouter: true }); this.routerList.push({ name: "设备固有参数", list: [], router: "intrinsicParameter", isRouter: true });
} }
@ -317,7 +343,11 @@ export default {
} }
if (isParamInArray23) { if (isParamInArray23) {
this.routerList.push({ name: "风机湿帘", list: [], router: "wetFan", isRouter: true }); this.routerList.push({ name: "风机湿帘", list: [
{ name: '风机', status: -1, router: 'wetFan', index: 1 },
{ name: '湿帘泵', status: -1, router: 'wetFan', index: 2 },
{ name: '湿帘外翻帘', status: -1, router: 'wetFan', index: 3 },
], router: "wetFan" });
} }
if (isParamInArray24) { if (isParamInArray24) {
@ -332,7 +362,13 @@ export default {
}); });
} }
setTimeout(() => { setTimeout(() => {
this.$router.push({ path: `/${this.routerList[0].router}` }); var router = this.$route.query
if (router.token && router.userid){
return
}
this.$router.push({ path: `/${this.routerList[0].router}` });
}, 0); }, 0);
}); });

View File

@ -187,6 +187,14 @@ const routes = [
path: '/parameterSet', path: '/parameterSet',
name: 'parameterSet', name: 'parameterSet',
component: () => import('../views/page/parameterSet.vue') component: () => import('../views/page/parameterSet.vue')
},{
path: '/alarmSettings',
name: 'alarmSettings',
component: () => import('../views/page/alarmSettings.vue')
},{
path: '/exitSettings',
name: 'exitSettings',
component: () => import('../views/page/exitSettings.vue')
},] },]
},] },]
}, },

View File

@ -62,7 +62,7 @@ export default {
headerList: [ headerList: [
{ name: '实时数据', router: 'realTime', routerList: ['realTime'], img: require('../assets/image/header-img1.png') }, { name: '实时数据', router: 'realTime', routerList: ['realTime'], img: require('../assets/image/header-img1.png') },
// { name: '', router: 'status', index: 1, routerList: ['formula', 'irrigateSet', 'PIDSet', 'systemSet', 'upload', 'sensorSet'], img: require('../assets/image/header-img0.png') }, // { name: '', router: 'status', index: 1, routerList: ['formula', 'irrigateSet', 'PIDSet', 'systemSet', 'upload', 'sensorSet'], img: require('../assets/image/header-img0.png') },
{ name: '设定值参数', router: 'status', index: 1, routerList: ['status', 'skylight', 'fan', 'upload-con', 'sensorSet-con', 'synthesis-con','waterPump', 'geothermalFan', 'uptake', 'downtake', 'rollByRoll', 'snowRemoval',"targetTemperature", "targetHumidity", "targetCo2", "sunroofControl", "outsizeSunshade", "insizeSunshade", "wetFan", "LED", 'electromagneticControl', "coercionMist", "circulationCan", "internalInsulation", "forceOutput", "intrinsicParameter", "parameterSet",], img: require('../assets/image/header-img0.png') }, { name: '设定值参数', router: 'status', index: 1, routerList: ['status','exitSettings', 'skylight', 'fan', 'upload-con', 'sensorSet-con','alarmSettings', 'synthesis-con','waterPump', 'geothermalFan', 'uptake', 'downtake', 'rollByRoll', 'snowRemoval',"targetTemperature", "targetHumidity", "targetCo2", "sunroofControl", "outsizeSunshade", "insizeSunshade", "wetFan", "LED", 'electromagneticControl', "coercionMist", "circulationCan", "internalInsulation", "forceOutput", "intrinsicParameter", "parameterSet",], img: require('../assets/image/header-img0.png') },
{ name: '设备菜单', router: '', routerList: [], img: require('../assets/image/header-img1.png') }, { name: '设备菜单', router: '', routerList: [], img: require('../assets/image/header-img1.png') },
{ name: '视频监控', router: '', routerList: [], img: require('../assets/image/header-img2.png') }, { name: '视频监控', router: '', routerList: [], img: require('../assets/image/header-img2.png') },
// history history // history history
@ -79,7 +79,7 @@ export default {
activeNames: [3], activeNames: [3],
leftList: [ leftList: [
{ name: '首页', img: require('../assets/image/index-icon.png'), list: [], router: 'realTime', isRouter: true, }, { name: '首页', img: require('../assets/image/index-icon.png'), list: [], router: 'realTime', isRouter: true, },
{ name: '温室', routerList: ['realTime', 'skylight', 'control', 'fan', 'upload-con', 'sensorSet-con', 'synthesis-con', 'waterPump', 'geothermalFan', 'uptake', 'downtake', 'rollByRoll', 'snowRemoval', "targetTemperature", "targetHumidity", "targetCo2", "sunroofControl", "outsizeSunshade", "insizeSunshade", "wetFan", "LED", 'electromagneticControl', "coercionMist", "circulationCan", "internalInsulation", "forceOutput", "intrinsicParameter", "parameterSet"], img: require('../assets/image/left-img0.png'), list: [] }, { name: '温室', routerList: ['realTime','exitSettings', 'skylight', 'control', 'fan', 'upload-con', 'sensorSet-con', 'synthesis-con','alarmSettings', 'waterPump', 'geothermalFan', 'uptake', 'downtake', 'rollByRoll', 'snowRemoval', "targetTemperature", "targetHumidity", "targetCo2", "sunroofControl", "outsizeSunshade", "insizeSunshade", "wetFan", "LED", 'electromagneticControl', "coercionMist", "circulationCan", "internalInsulation", "forceOutput", "intrinsicParameter", "parameterSet"], img: require('../assets/image/left-img0.png'), list: [] },
// { name: '', img: require('../assets/image/left-img1.png'), list: [] }, // { name: '', img: require('../assets/image/left-img1.png'), list: [] },
{ name: '施肥机', routerList: ['formula', 'irrigateSet', 'PIDSet', 'systemSet', 'upload', 'sensorSet', 'realTime', 'history', 'dataAnalysis'], img: require('../assets/image/left-img2.png'), list: [] },], { name: '施肥机', routerList: ['formula', 'irrigateSet', 'PIDSet', 'systemSet', 'upload', 'sensorSet', 'realTime', 'history', 'dataAnalysis'], img: require('../assets/image/left-img2.png'), list: [] },],
routerNow: 'realTime', routerNow: 'realTime',
@ -304,7 +304,6 @@ export default {
} }
}, },
toRouter1(item) { toRouter1(item) {
console.log(item,11);
if (item.router) { if (item.router) {
if (item.http) { if (item.http) {
window.location.href = item.http; window.location.href = item.http;
@ -320,7 +319,11 @@ export default {
this.$store.state.equipmentIndex = item.index this.$store.state.equipmentIndex = item.index
this.routerIndex = item.index this.routerIndex = item.index
if (item.deviceName == 10) { if (item.deviceName == 10) {
this.$router.push({ path: `/skylight?change=${item.index}` }) //
if(this.routerNow!='skylight'&&this.leftList[1].routerList.indexOf(this.$route.name)!=-1){
return
}
this.$router.push({ path: `/control?change=${item.index}` })
} else if (item.deviceName == 1 && this.routerNow != 'irrigateSet') { } else if (item.deviceName == 1 && this.routerNow != 'irrigateSet') {
this.$router.push({ path: `/irrigateSet?change=${item.index}` }) this.$router.push({ path: `/irrigateSet?change=${item.index}` })
} }

View File

@ -1,14 +1,14 @@
<template> <template>
<div class="wetFan"> <div class="wetFan">
<div class="table-title"> <div class="table-title">
<img src="../../assets/img/LED.png" alt="">补光灯&nbsp;&nbsp;&nbsp;&nbsp; <img src="../../assets/img/LED.png" alt="">补光灯
<div @click="changeOpen(0)" class="flex-view border-none">
<div :class="inputData[21400] == 0 ? 'sel' : 'no-sel'"></div>
有效性
</div>
</div> </div>
<div class="title-tips"> <div class="title-tips">工作方式选择
工作方式选择 <div class="input-btn">
<div class="btn btn-tips" @click="changeOpen(0)" :class="inputData[21400] == 0 ? 'blue' : 'green'">
{{ inputData[21400] == 0 ? '无效' : '有效' }}
</div>
</div>
</div> </div>
<div class="flex-view"> <div class="flex-view">
<div class="input-btn "> <div class="input-btn ">

View File

@ -0,0 +1,574 @@
<template>
<div class="all">
<div class="table-title">
<img src="../../assets/img/alarmSettings.png" alt="">报警设置
</div>
<div class="flex-view shrink-none border-none">
<div class="input-sel input-sel-w180">
<span>目标温度1的实时温度选择</span>
<el-dropdown @command="handleCommand1($event, 20080)">
<div class="el-dropdown-link">
<input v-model="inputDataNew[20080]" 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>
<div class="flex-view border-none">
<div class="flex-sel padding-none" v-if="inputDataNew[20081].length" @click="changeOpenTrue(0, 20081)">
<div v-if="inputDataNew[20081][0] == 0" class="no-sel margin-none"></div>
<div v-else class="sel margin-none"></div>
</div>
<div class="input-main input-main-w80">
<span>选项一:温度高于目标值</span>
<input @blur="blurChange10('20082', $event)" v-model="inputData['20082']"
@input="changeCount10('20082', $event)" type="text" value="60" placeholder="60" />
<span>高温报警</span>
</div>
</div>
<div class="flex-view border-none">
<div class="flex-sel padding-none" v-if="inputDataNew[20081].length" @click="changeOpenTrue(1, 20081)">
<div v-if="inputDataNew[20081][1] == 0" class="no-sel margin-none"></div>
<div v-else class="sel margin-none"></div>
</div>
<div class="input-main input-main-w80">
<span>选项二:温度低于目标值</span>
<input @blur="blurChange10('20083', $event)" v-model="inputData['20083']"
@input="changeCount10('20083', $event)" type="text" value="60" placeholder="60" />
<span>低温报警</span>
</div>
</div>
<div class="flex-view border-none">
<div class="flex-sel padding-none" v-if="inputDataNew[20081].length" @click="changeOpenTrue(2, 20081)">
<div v-if="inputDataNew[20081][2] == 0" class="no-sel margin-none"></div>
<div v-else class="sel margin-none"></div>
</div>
<div class="input-main input-main-w80">
<span>选项三:温度高于</span>
<input @blur="blurChangeCount('20083', $event)" v-model="inputData['20083']"
@input="changeCountData('20083', $event)" type="text" value="60" placeholder="60" />
<span>高温报警</span>
</div>
</div>
<div class="flex-view">
<div class="flex-sel padding-none" v-if="inputDataNew[20081].length" @click="changeOpenTrue(3, 20081)">
<div v-if="inputDataNew[20081][3] == 0" class="no-sel margin-none"></div>
<div v-else class="sel margin-none"></div>
</div>
<div class="input-main input-main-w80">
<span>选项四:温度低于</span>
<input @blur="blurChangeCount('20084', $event)" v-model="inputData['20084']"
@input="changeCountData('20084', $event)" type="text" value="60" placeholder="60" />
<span>低温报警</span>
</div>
</div>
<div class="flex-view shrink-none border-none">
<div class="input-sel input-sel-w180">
<span>目标温度2的实时温度选择</span>
<el-dropdown @command="handleCommand1($event, 20086)">
<div class="el-dropdown-link">
<input v-model="inputDataNew[20086]" 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>
<div class="flex-view border-none">
<div class="flex-sel padding-none" v-if="inputDataNew[20087].length" @click="changeOpenTrue(0, 20087)">
<div v-if="inputDataNew[20087][0] == 0" class="no-sel margin-none"></div>
<div v-else class="sel margin-none"></div>
</div>
<div class="input-main input-main-w80">
<span>选项一:温度高于目标值</span>
<input @blur="blurChange10('20087', $event)" v-model="inputData['20087']"
@input="changeCount10('20087', $event)" type="text" value="60" placeholder="60" />
<span>高温报警</span>
</div>
</div>
<div class="flex-view border-none">
<div class="flex-sel padding-none" v-if="inputDataNew[20087].length" @click="changeOpenTrue(1, 20087)">
<div v-if="inputDataNew[20087][1] == 0" class="no-sel margin-none"></div>
<div v-else class="sel margin-none"></div>
</div>
<div class="input-main input-main-w80">
<span>选项二:温度低于目标值</span>
<input @blur="blurChange10('20088', $event)" v-model="inputData['20088']"
@input="changeCount10('20088', $event)" type="text" value="60" placeholder="60" />
<span>低温报警</span>
</div>
</div>
<div class="flex-view border-none">
<div class="flex-sel padding-none" v-if="inputDataNew[20087].length" @click="changeOpenTrue(2, 20087)">
<div v-if="inputDataNew[20087][2] == 0" class="no-sel margin-none"></div>
<div v-else class="sel margin-none"></div>
</div>
<div class="input-main input-main-w80">
<span>选项三:温度高于</span>
<input @blur="blurChangeCount('20089', $event)" v-model="inputData['20089']"
@input="changeCountData('20089', $event)" type="text" value="60" placeholder="60" />
<span>高温报警</span>
</div>
</div>
<div class="flex-view">
<div class="flex-sel padding-none" v-if="inputDataNew[20087].length" @click="changeOpenTrue(3, 20087)">
<div v-if="inputDataNew[20087][3] == 0" class="no-sel margin-none"></div>
<div v-else class="sel margin-none"></div>
</div>
<div class="input-main input-main-w80">
<span>选项四:温度低于</span>
<input @blur="blurChangeCount('20090', $event)" v-model="inputData['20090']"
@input="changeCountData('20090', $event)" type="text" value="60" placeholder="60" />
<span>低温报警</span>
</div>
</div>
<div class="flex-view shrink-none border-none">
<div class="input-sel input-sel-w180">
<span>目标湿度1的实时湿度选择</span>
<el-dropdown @command="handleCommand2($event, 20092)">
<div class="el-dropdown-link">
<input v-model="inputDataNew[20092]" 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 border-none">
<div class="flex-sel padding-none" v-if="inputDataNew[20093].length" @click="changeOpenTrue(0, 20093)">
<div v-if="inputDataNew[20093][0] == 0" class="no-sel margin-none"></div>
<div v-else class="sel margin-none"></div>
</div>
<div class="input-main input-main-w80">
<span>选项一:湿度高于目标值</span>
<input @blur="blurChange10('20094', $event)" v-model="inputData['20094']"
@input="changeCount10('20094', $event)" type="text" value="60" placeholder="60" />
<span>%RH高湿报警</span>
</div>
</div>
<div class="flex-view border-none">
<div class="flex-sel padding-none" v-if="inputDataNew[20093].length" @click="changeOpenTrue(1, 20093)">
<div v-if="inputDataNew[20093][1] == 0" class="no-sel margin-none"></div>
<div v-else class="sel margin-none"></div>
</div>
<div class="input-main input-main-w80">
<span>选项二:湿度低于目标值</span>
<input @blur="blurChange10('20095', $event)" v-model="inputData['20095']"
@input="changeCount10('20095', $event)" type="text" value="60" placeholder="60" />
<span>%RH低湿报警</span>
</div>
</div>
<div class="flex-view border-none">
<div class="flex-sel padding-none" v-if="inputDataNew[20093].length" @click="changeOpenTrue(2, 20093)">
<div v-if="inputDataNew[20093][2] == 0" class="no-sel margin-none"></div>
<div v-else class="sel margin-none"></div>
</div>
<div class="input-main input-main-w80">
<span>选项三:湿度高于</span>
<input @blur="blurChange10('20096', $event)" v-model="inputData['20096']"
@input="changeCount10('20096', $event)" type="text" value="60" placeholder="60" />
<span>%RH高湿报警</span>
</div>
</div>
<div class="flex-view">
<div class="flex-sel padding-none" v-if="inputDataNew[20093].length" @click="changeOpenTrue(3, 20093)">
<div v-if="inputDataNew[20093][3] == 0" class="no-sel margin-none"></div>
<div v-else class="sel margin-none"></div>
</div>
<div class="input-main input-main-w80">
<span>选项四:湿度低于</span>
<input @blur="blurChange10('20097', $event)" v-model="inputData['20097']"
@input="changeCount10('20097', $event)" type="text" value="60" placeholder="60" />
<span>%RH低湿报警</span>
</div>
</div>
<div class="flex-view shrink-none border-none">
<div class="input-sel input-sel-w180">
<span>目标湿度2的实时湿度选择</span>
<el-dropdown @command="handleCommand2($event, 20098)">
<div class="el-dropdown-link">
<input v-model="inputDataNew[20098]" 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 border-none">
<div class="flex-sel padding-none" v-if="inputDataNew[20099].length" @click="changeOpenTrue(0, 20099)">
<div v-if="inputDataNew[20099][0] == 0" class="no-sel margin-none"></div>
<div v-else class="sel margin-none"></div>
</div>
<div class="input-main input-main-w80">
<span>选项一:湿度高于目标值</span>
<input @blur="blurChange10('20100', $event)" v-model="inputData['20100']"
@input="changeCount10('20100', $event)" type="text" value="60" placeholder="60" />
<span>%RH高湿报警</span>
</div>
</div>
<div class="flex-view border-none">
<div class="flex-sel padding-none" v-if="inputDataNew[20099].length" @click="changeOpenTrue(1, 20099)">
<div v-if="inputDataNew[20099][1] == 0" class="no-sel margin-none"></div>
<div v-else class="sel margin-none"></div>
</div>
<div class="input-main input-main-w80">
<span>选项二:湿度低于目标值</span>
<input @blur="blurChange10('20101', $event)" v-model="inputData['20101']"
@input="changeCount10('20101', $event)" type="text" value="60" placeholder="60" />
<span>%RH低湿报警</span>
</div>
</div>
<div class="flex-view border-none">
<div class="flex-sel padding-none" v-if="inputDataNew[20099].length" @click="changeOpenTrue(2, 20099)">
<div v-if="inputDataNew[20099][2] == 0" class="no-sel margin-none"></div>
<div v-else class="sel margin-none"></div>
</div>
<div class="input-main input-main-w80">
<span>选项三:湿度高于</span>
<input @blur="blurChange10('20102', $event)" v-model="inputData['20102']"
@input="changeCount10('20102', $event)" type="text" value="60" placeholder="60" />
<span>%RH高湿报警</span>
</div>
</div>
<div class="flex-view border-none">
<div class="flex-sel padding-none" v-if="inputDataNew[20099].length" @click="changeOpenTrue(3, 20099)">
<div v-if="inputDataNew[20099][3] == 0" class="no-sel margin-none"></div>
<div v-else class="sel margin-none"></div>
</div>
<div class="input-main input-main-w80">
<span>选项四:湿度低于</span>
<input @blur="blurChange10('20103', $event)" v-model="inputData['20103']"
@input="changeCount10('20103', $event)" type="text" value="60" placeholder="60" />
<span>%RH低湿报警</span>
</div>
</div>
</div>
</template>
<script>
export default {
data() {
return {
inputDataNew: [],
inputData: [],
typeList1: [
{ label: '1#平均温度', value: 0 },
{ label: '2#平均温度', value: 1 },
{ label: '1#温度传感器', value: 2 },
{ label: '2#温度传感器', value: 3 },
{ label: '3#温度传感器', value: 4 },
{ label: '4#温度传感器', value: 5 },
{ label: '5#温度传感器', value: 6 },
{ label: '6#温度传感器', value: 7 },
{ label: '7#温度传感器', value: 8 },
{ label: '8#温度传感器', value: 9 },
{ label: '9#温度传感器', value: 10 },
{ label: '10#温度传感器', value: 11 },
{ label: '11#温度传感器', value: 12 },
{ label: '12#温度传感器', value: 13 },
{ label: '13#温度传感器', value: 14 },
{ label: '14#温度传感器', value: 15 },
{ label: '15#温度传感器', value: 16 },],
typeList2: [
{ label: '1#平均湿度', value: 0 },
{ label: '2#平均湿度', value: 1 },
{ label: '1#湿度传感器', value: 2 },
{ label: '2#湿度传感器', value: 3 },
{ label: '3#湿度传感器', value: 4 },
{ label: '4#湿度传感器', value: 5 },
{ label: '5#湿度传感器', value: 6 },
{ label: '6#湿度传感器', value: 7 },
{ label: '7#湿度传感器', value: 8 },
{ label: '8#湿度传感器', value: 9 },
{ label: '9#湿度传感器', value: 10 },
{ label: '10#湿度传感器', value: 11 },
{ label: '11#湿度传感器', value: 12 },
{ label: '12#湿度传感器', value: 13 },
{ label: '13#湿度传感器', value: 14 },
{ label: '14#湿度传感器', value: 15 },
{ label: '15#湿度传感器', value: 16 },],
}
},
mounted() {
this.dataInit()
//input
let inputList = document.querySelectorAll('input');
for (let index = 0; index < inputList.length; index++) {
inputList[index].onfocus = this.selectValue;//input
}
},
methods: {
getData1(data) {
var name = ''
this.typeList1.forEach((el, index) => {
if (el.value == data) {
name = el.label
}
})
return name
},
getData2(data) {
var name = ''
this.typeList2.forEach((el, index) => {
if (el.value == data) {
name = el.label
}
})
return name
},
//
handleCommand1(command, code) {
this.typeList1.forEach((el, index) => {
if (el.value == command) {
this.inputDataNew[code] = el.label
}
})
var dataNum = {
target: {
value: command,
},
};
this.changeBtn(code, dataNum);
},
//湿
handleCommand2(command, code) {
this.typeList2.forEach((el, index) => {
if (el.value == command) {
this.inputDataNew[code] = el.label
}
})
var dataNum = {
target: {
value: command,
},
};
this.changeBtn(code, dataNum);
},
// 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 (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 (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)
},
padString(str, length) {
return str.padStart(length, '0');
},
//
myReverse(arr) {
return [...arr].reverse()
},
changeOpenTrue(index, code) {
if (this.inputDataNew[code][index] == 0) {
this.inputDataNew[code][index] = 1
} else {
this.inputDataNew[code][index] = 0
}
this.$forceUpdate();
var num = this.myReverse(this.inputDataNew[code]).join("")
var dataNum = {
target: {
value: parseInt(num, 2),
},
};
this.changeBtn(code, dataNum);
},
dataInit() {
var store = this.$store.state
var data = {
deviceId: store.equipmentList[store.equipmentIndex - 1].deviceId,
};
this.api.targetValue(data).then(res => {
if (res.data.code == 200) {
this.inputData = JSON.parse(JSON.stringify(res.data.data));
this.inputDataNew = JSON.parse(JSON.stringify(res.data.data))
this.inputDataNew[20080] = this.getData1(this.inputData[20080])
this.inputDataNew[20086] = this.getData1(this.inputData[20086])
this.inputData[20082] = this.countData10(this.inputData[20082])
this.inputData[20083] = this.countData10(this.inputData[20083])
this.inputData[20084] = this.countData(this.inputData[20084])
this.inputData[20085] = this.countData(this.inputData[20085])
this.inputData[20088] = this.countData10(this.inputData[20088])
this.inputData[20089] = this.countData10(this.inputData[20089])
this.inputData[20090] = this.countData(this.inputData[20090])
this.inputData[20091] = this.countData(this.inputData[20091])
this.inputDataNew[20092] = this.getData2(this.inputData[20092])
this.inputDataNew[20098] = this.getData2(this.inputData[20098])
this.inputData[20094] = this.countData10(this.inputData[20094])
this.inputData[20095] = this.countData10(this.inputData[20095])
this.inputData[20096] = this.countData10(this.inputData[20096])
this.inputData[20097] = this.countData10(this.inputData[20097])
this.inputData[20100] = this.countData10(this.inputData[20100])
this.inputData[20101] = this.countData10(this.inputData[20101])
this.inputData[20102] = this.countData10(this.inputData[20102])
this.inputData[20103] = this.countData10(this.inputData[20103])
this.getOpenData(20081)
this.getOpenData(20087)
this.getOpenData(20093)
this.getOpenData(20099)
}
})
},
getOpenData(code){
var num1 = this.inputData[code]?this.inputData[code]:0
var num11 = this.padString(num1.toString(2), 4)
var openList1New
openList1New = num11.split("")
this.inputDataNew[code] = openList1New.reverse()
},
//
selectValue(e) {
var store = this.$store.state
store.nowInput = e.target.value
e.currentTarget.select();
},
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);
},
//
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);
},
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>

View File

@ -1,13 +1,16 @@
<template> <template>
<div class="circulationCan"> <div class="circulationCan">
<div class="table-title"> <div class="table-title">
<img src="../../assets/img/circulationCan.png" alt="">环流风扇{{ indexs }}&nbsp;&nbsp;&nbsp;&nbsp; <img src="../../assets/img/circulationCan.png" alt="">环流风扇{{ indexs }}
<div @click="changeOpen(0)" class="flex-view border-none">
<div :class="inputData[startList[indexs - 1]] == 0 ? 'sel' : 'no-sel'"></div> </div>
有效性 <div class="title-tips">工作方式选择
</div> <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>
<div class="title-tips">工作方式选择</div>
<div class="flex-view"> <div class="flex-view">
<div class="input-btn "> <div class="input-btn ">
<div class="btn" @click="changeOpen(1)" :class="inputData[startList[indexs - 1]] == 1 ? 'blue' : 'green'"> <div class="btn" @click="changeOpen(1)" :class="inputData[startList[indexs - 1]] == 1 ? 'blue' : 'green'">
@ -29,65 +32,65 @@
</div> </div>
<div class="input-main-80"> <div class="input-main-80">
<span>时段1</span> <span>时段1</span>
<input @blur="blurChange(startList[indexs-1]+2, $event)" v-model="inputData[startList[indexs-1]+2]" @input="change(startList[indexs-1]+2, $event)" <input @blur="blurChange(startList[indexs - 1] + 2, $event)" v-model="inputData[startList[indexs - 1] + 2]"
type="text" placeholder="0"> @input="change(startList[indexs - 1] + 2, $event)" type="text" placeholder="0">
<span>:</span> <span>:</span>
<input @blur="blurChange(startList[indexs-1]+3, $event)" v-model="inputData[startList[indexs-1]+3]" @input="change(startList[indexs-1]+3, $event)" <input @blur="blurChange(startList[indexs - 1] + 3, $event)" v-model="inputData[startList[indexs - 1] + 3]"
type="text" placeholder="0"> @input="change(startList[indexs - 1] + 3, $event)" type="text" placeholder="0">
<span>-</span> <span>-</span>
<input @blur="blurChange(startList[indexs-1]+4, $event)" v-model="inputData[startList[indexs-1]+4]" @input="change(startList[indexs-1]+4, $event)" <input @blur="blurChange(startList[indexs - 1] + 4, $event)" v-model="inputData[startList[indexs - 1] + 4]"
type="text" placeholder="0"> @input="change(startList[indexs - 1] + 4, $event)" type="text" placeholder="0">
<span>:</span> <span>:</span>
<input @blur="blurChange(startList[indexs-1]+5, $event)" v-model="inputData[startList[indexs-1]+5]" @input="change(startList[indexs-1]+5, $event)" <input @blur="blurChange(startList[indexs - 1] + 5, $event)" v-model="inputData[startList[indexs - 1] + 5]"
type="text" placeholder="0"> @input="change(startList[indexs - 1] + 5, $event)" type="text" placeholder="0">
</div> </div>
</div> </div>
<div class="flex-view border-none 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>时段2</span> <span>时段2</span>
<input @blur="blurChange(startList[indexs-1]+6, $event)" v-model="inputData[startList[indexs-1]+6]" @input="change(startList[indexs-1]+6, $event)" <input @blur="blurChange(startList[indexs - 1] + 6, $event)" v-model="inputData[startList[indexs - 1] + 6]"
type="text" placeholder="0"> @input="change(startList[indexs - 1] + 6, $event)" type="text" placeholder="0">
<span>:</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)" <input @blur="blurChange(startList[indexs - 1] + 7, $event)" v-model="inputData[startList[indexs - 1] + 7]"
type="text" placeholder="0"> @input="change(startList[indexs - 1] + 7, $event)" type="text" placeholder="0">
<span>-</span> <span>-</span>
<input @blur="blurChange(startList[indexs-1]+8, $event)" v-model="inputData[startList[indexs-1]+8]" @input="change(startList[indexs-1]+8, $event)" <input @blur="blurChange(startList[indexs - 1] + 8, $event)" v-model="inputData[startList[indexs - 1] + 8]"
type="text" placeholder="0"> @input="change(startList[indexs - 1] + 8, $event)" type="text" placeholder="0">
<span>:</span> <span>:</span>
<input @blur="blurChange(startList[indexs-1]+9, $event)" v-model="inputData[startList[indexs-1]+9]" @input="change(startList[indexs-1]+9, $event)" <input @blur="blurChange(startList[indexs - 1] + 9, $event)" v-model="inputData[startList[indexs - 1] + 9]"
type="text" placeholder="0"> @input="change(startList[indexs - 1] + 9, $event)" type="text" placeholder="0">
</div> </div>
</div> </div>
<div class="flex-view border-none 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>时段3</span> <span>时段3</span>
<input @blur="blurChange(startList[indexs-1]+10, $event)" v-model="inputData[startList[indexs-1]+10]" @input="change(startList[indexs-1]+10, $event)" <input @blur="blurChange(startList[indexs - 1] + 10, $event)" v-model="inputData[startList[indexs - 1] + 10]"
type="text" placeholder="0"> @input="change(startList[indexs - 1] + 10, $event)" type="text" placeholder="0">
<span>:</span> <span>:</span>
<input @blur="blurChange(startList[indexs-1]+11, $event)" v-model="inputData[startList[indexs-1]+11]" @input="change(startList[indexs-1]+11, $event)" <input @blur="blurChange(startList[indexs - 1] + 11, $event)" v-model="inputData[startList[indexs - 1] + 11]"
type="text" placeholder="0"> @input="change(startList[indexs - 1] + 11, $event)" type="text" placeholder="0">
<span>-</span> <span>-</span>
<input @blur="blurChange(startList[indexs-1]+12, $event)" v-model="inputData[startList[indexs-1]+12]" @input="change(startList[indexs-1]+12, $event)" <input @blur="blurChange(startList[indexs - 1] + 12, $event)" v-model="inputData[startList[indexs - 1] + 12]"
type="text" placeholder="0"> @input="change(startList[indexs - 1] + 12, $event)" type="text" placeholder="0">
<span>:</span> <span>:</span>
<input @blur="blurChange(startList[indexs-1]+13, $event)" v-model="inputData[startList[indexs-1]+13]" @input="change(startList[indexs-1]+13, $event)" <input @blur="blurChange(startList[indexs - 1] + 13, $event)" v-model="inputData[startList[indexs - 1] + 13]"
type="text" placeholder="0"> @input="change(startList[indexs - 1] + 13, $event)" type="text" placeholder="0">
</div> </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">
<span>时段4</span> <span>时段4</span>
<input @blur="blurChange(startList[indexs-1]+14, $event)" v-model="inputData[startList[indexs-1]+14]" @input="change(startList[indexs-1]+14, $event)" <input @blur="blurChange(startList[indexs - 1] + 14, $event)" v-model="inputData[startList[indexs - 1] + 14]"
type="text" placeholder="0"> @input="change(startList[indexs - 1] + 14, $event)" type="text" placeholder="0">
<span>:</span> <span>:</span>
<input @blur="blurChange(startList[indexs-1]+15, $event)" v-model="inputData[startList[indexs-1]+15]" @input="change(startList[indexs-1]+15, $event)" <input @blur="blurChange(startList[indexs - 1] + 15, $event)" v-model="inputData[startList[indexs - 1] + 15]"
type="text" placeholder="0"> @input="change(startList[indexs - 1] + 15, $event)" type="text" placeholder="0">
<span>-</span> <span>-</span>
<input @blur="blurChange(startList[indexs-1]+16, $event)" v-model="inputData[startList[indexs-1]+16]" @input="change(startList[indexs-1]+16, $event)" <input @blur="blurChange(startList[indexs - 1] + 16, $event)" v-model="inputData[startList[indexs - 1] + 16]"
type="text" placeholder="0"> @input="change(startList[indexs - 1] + 16, $event)" type="text" placeholder="0">
<span>:</span> <span>:</span>
<input @blur="blurChange(startList[indexs-1]+17, $event)" v-model="inputData[startList[indexs-1]+17]" @input="change(startList[indexs-1]+17, $event)" <input @blur="blurChange(startList[indexs - 1] + 17, $event)" v-model="inputData[startList[indexs - 1] + 17]"
type="text" placeholder="0"> @input="change(startList[indexs - 1] + 17, $event)" type="text" placeholder="0">
</div> </div>
</div> </div>
@ -99,10 +102,12 @@
</div> </div>
<div class="input-main-80"> <div class="input-main-80">
<span>湿度高于</span> <span>湿度高于</span>
<input @blur="blurChange10(startList[indexs - 1] + 18, $event)" v-model="inputData[startList[indexs - 1] + 18]" <input @blur="blurChange10(startList[indexs - 1] + 18, $event)"
v-model="inputData[startList[indexs - 1] + 18]"
@input="changeCount10(startList[indexs - 1] + 18, $event)" type="text" placeholder="0"> @input="changeCount10(startList[indexs - 1] + 18, $event)" type="text" placeholder="0">
<span>启动,滞回带</span> <span>启动,滞回带</span>
<input @blur="blurChange10(startList[indexs - 1] + 19, $event)" v-model="inputData[startList[indexs - 1] + 19]" <input @blur="blurChange10(startList[indexs - 1] + 19, $event)"
v-model="inputData[startList[indexs - 1] + 19]"
@input="changeCount10(startList[indexs - 1] + 19, $event)" type="text" placeholder="0"> @input="changeCount10(startList[indexs - 1] + 19, $event)" type="text" placeholder="0">
</div> </div>
</div> </div>
@ -239,7 +244,7 @@ export default {
value: parseInt(num, 2), value: parseInt(num, 2),
}, },
}; };
this.inputData[this.startList[this.indexs - 1] + 1]=parseInt(num, 2) this.inputData[this.startList[this.indexs - 1] + 1] = parseInt(num, 2)
this.changeBtn(this.startList[this.indexs - 1] + 1, dataNum); this.changeBtn(this.startList[this.indexs - 1] + 1, dataNum);
}, },
getActive1() { getActive1() {

View File

@ -1,13 +1,15 @@
<template> <template>
<div class="coercionMist"> <div class="coercionMist">
<div class="table-title"> <div class="table-title">
<img src="../../assets/img/coercionMist.png" alt="">高压微雾{{ indexs }}&nbsp;&nbsp;&nbsp;&nbsp; <img src="../../assets/img/coercionMist.png" alt="">高压微雾{{ indexs }}
<div @click="changeOpen(0)" class="flex-view border-none"> </div>
<div :class="inputData[startList[indexs - 1]] == 0 ? 'sel' : 'no-sel'"></div> <div class="title-tips">工作方式选择
有效性 <div class="input-btn">
</div> <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>
<div class="title-tips">工作方式选择</div>
<div class="flex-view"> <div class="flex-view">
<div class="input-btn "> <div class="input-btn ">
<div class="btn" @click="changeOpen(1)" :class="inputData[startList[indexs - 1]] == 1 ? 'blue' : 'green'"> <div class="btn" @click="changeOpen(1)" :class="inputData[startList[indexs - 1]] == 1 ? 'blue' : 'green'">

View File

@ -1,14 +1,14 @@
<template> <template>
<div class="electromagneticControl"> <div class="electromagneticControl">
<div class="table-title"> <div class="table-title">
<img src="../../assets/img/electromagneticControl.png" alt="">{{ indexs }}#电磁阀&nbsp;&nbsp;&nbsp;&nbsp; <img src="../../assets/img/electromagneticControl.png" alt="">{{ indexs }}#电磁阀
<div @click="changeOpen(0)" class="flex-view border-none">
<div :class="inputData[startList[indexs - 1]] == 0 ? 'sel' : 'no-sel'"></div>
有效性
</div>
</div> </div>
<div class="title-tips"> <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>
<div class="flex-view"> <div class="flex-view">
<div class="input-btn "> <div class="input-btn ">

View File

@ -0,0 +1,257 @@
<template>
<div class="exitSettings">
<div class="table-title">
<img src="../../assets/img/alarmSettings.png" alt="">通道报警设置
</div>
<div class="flex-view border-none padding-none">
<div class="input-main-80">
<span>温度高于目标1</span>
<input @blur="blurChange(20620, $event)" v-model="inputData[20620]" @input="change(20620, $event)"
type="text" placeholder="0">
<span>高温报警输出通道</span>
</div>
</div>
<div class="flex-view border-none padding-none">
<div class="input-main-80">
<span>温度低于目标1</span>
<input @blur="blurChange(20621, $event)" v-model="inputData[20621]" @input="change(20621, $event)"
type="text" placeholder="0">
<span>低温报警输出通道</span>
</div>
</div>
<div class="flex-view border-none padding-none">
<div class="input-main-80">
<span>温度高于目标2</span>
<input @blur="blurChange(20622, $event)" v-model="inputData[20622]" @input="change(20622, $event)"
type="text" placeholder="0">
<span>高温报警输出通道</span>
</div>
</div>
<div class="flex-view padding-none">
<div class="input-main-80">
<span>温度低于目标2</span>
<input @blur="blurChange(20623, $event)" v-model="inputData[20623]" @input="change(20623, $event)"
type="text" placeholder="0">
<span>低温报警输出通道</span>
</div>
</div>
<div class="flex-view border-none padding-none">
<div class="input-main-80">
<span>湿度高于目标1</span>
<input @blur="blurChange(20624, $event)" v-model="inputData[20624]" @input="change(20624, $event)"
type="text" placeholder="0">
<span>%RH高湿报警输出通道</span>
</div>
</div>
<div class="flex-view border-none padding-none">
<div class="input-main-80">
<span>湿度低于目标1</span>
<input @blur="blurChange(20625, $event)" v-model="inputData[20625]" @input="change(20625, $event)"
type="text" placeholder="0">
<span>%RH低湿报警输出通道</span>
</div>
</div>
<div class="flex-view border-none padding-none">
<div class="input-main-80">
<span>湿度高于目标2</span>
<input @blur="blurChange(20626, $event)" v-model="inputData[20626]" @input="change(20626, $event)"
type="text" placeholder="0">
<span>%RH高湿报警输出通道</span>
</div>
</div>
<div class="flex-view border-none padding-none">
<div class="input-main-80">
<span>湿度低于目标2</span>
<input @blur="blurChange(20627, $event)" v-model="inputData[20627]" @input="change(20627, $event)"
type="text" placeholder="0">
<span>%RH低湿报警输出通道</span>
</div>
</div>
</div>
</template>
<script>
export default {
data() {
return {
inputData: [],
}
},
mounted() {
const that = this;
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 (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 (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)
},
dataInit() {
var store = this.$store.state
var data = {
deviceId: store.equipmentList[store.equipmentIndex - 1].deviceId,
};
this.api.readalarmSetting(data).then(res => {
if (res.data.code == 200) {
this.inputData = res.data.data;
}
})
},
//
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 (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>

View File

@ -1,11 +1,14 @@
<template> <template>
<div class="skylight fan"> <div class="skylight fan">
<div class="table-title"> <div class="table-title">
<img src="../../assets/image/skylight.png" alt=""> 风机{{ indexs }}&nbsp;&nbsp;&nbsp;&nbsp; <img src="../../assets/image/skylight.png" alt=""> 风机{{ indexs }}
<div @click="changeOpen(0)" class="flex-view border-none"> </div>
<div :class="openIndex == 0 ? 'sel' : 'no-sel'"></div> <div class="title-tips">
有效性 <div class="input-btn">
</div> <div class="btn btn-tips" @click="changeOpen(0)" :class="openIndex == 0 ? 'blue' : 'green'">
{{ openIndex == 0 ? '无效' : '有效' }}
</div>
</div>
</div> </div>
<div class="flex-view"> <div class="flex-view">
<div class="input-btn"> <div class="input-btn">

View File

@ -1,13 +1,15 @@
<template> <template>
<div class="insizeSunshade"> <div class="insizeSunshade">
<div class="table-title"> <div class="table-title">
<img src="../../assets/img/insizeSunshade.png" alt="">内遮阳{{ indexs }}&nbsp;&nbsp;&nbsp;&nbsp; <img src="../../assets/img/insizeSunshade.png" alt="">内遮阳{{ indexs }}
<div @click="changeOpen(0)" class="flex-view border-none"> </div>
<div :class="inputData[startList[indexs - 1]] == 0 ? 'sel' : 'no-sel'"></div> <div class="title-tips">工作方式选择
有效性 <div class="input-btn">
</div> <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>
<div class="title-tips">工作方式选择</div>
<div class="flex-view"> <div class="flex-view">
<div class="input-btn "> <div class="input-btn ">
<div class="btn" @click="changeOpen(1)" :class="inputData[startList[indexs - 1]] == 1 ? 'blue' : 'green'"> <div class="btn" @click="changeOpen(1)" :class="inputData[startList[indexs - 1]] == 1 ? 'blue' : 'green'">

View File

@ -1,13 +1,15 @@
<template> <template>
<div class="internalInsulation"> <div class="internalInsulation">
<div class="table-title"> <div class="table-title">
<img src="../../assets/img/internalInsulation.png" alt="">内保温{{ indexs }}&nbsp;&nbsp;&nbsp;&nbsp; <img src="../../assets/img/internalInsulation.png" alt="">内保温{{ indexs }}
<div @click="changeOpen(0)" class="flex-view border-none"> </div>
<div :class="inputData[startList[indexs - 1]] == 0 ? 'sel' : 'no-sel'"></div> <div class="title-tips">工作方式选择
有效性 <div class="input-btn">
</div> <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>
<div class="title-tips">工作方式选择</div>
<div class="flex-view"> <div class="flex-view">
<div class="input-btn "> <div class="input-btn ">
<div class="btn" @click="changeOpen(1)" :class="inputData[startList[indexs - 1]] == 1 ? 'blue' : 'green'"> <div class="btn" @click="changeOpen(1)" :class="inputData[startList[indexs - 1]] == 1 ? 'blue' : 'green'">

View File

@ -1,16 +1,18 @@
<template> <template>
<div class="outsizeSunshade"> <div class="outsizeSunshade">
<div class="table-title"> <div class="table-title">
<img src="../../assets/img/outsizeSunshade.png" alt="">外遮阳{{ indexs }}&nbsp;&nbsp;&nbsp;&nbsp; <img src="../../assets/img/outsizeSunshade.png" alt="">外遮阳{{ indexs }}
<div @click="changeOpen(0)" class="flex-view border-none"> </div>
<div :class="inputData[startList[indexs-1]] == 0 ? 'sel' : 'no-sel'"></div> <div class="title-tips">工作方式选择
有效性 <div class="input-btn">
</div> <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>
<div class="title-tips">工作方式选择</div>
<div class="flex-view"> <div class="flex-view">
<div class="input-btn "> <div class="input-btn ">
<div class="btn" @click="changeOpen(1)" :class="inputData[startList[indexs-1]] == 1 ? 'blue' : 'green'"> <div class="btn" @click="changeOpen(1)" :class="inputData[startList[indexs - 1]] == 1 ? 'blue' : 'green'">
<img src="../../assets/image/irrigateSet2.png" alt="" />自动运行 <img src="../../assets/image/irrigateSet2.png" alt="" />自动运行
</div> </div>
<div class="btn" @click="changeOpen(2)" :class="inputData[startList[indexs-1]] == 2 ? 'blue' : 'green'"> <div class="btn" @click="changeOpen(2)" :class="inputData[startList[indexs-1]] == 2 ? 'blue' : 'green'">

View File

@ -1,12 +1,15 @@
<template> <template>
<div class="skylight"> <div class="skylight">
<div class="table-title"> <div class="table-title">
<img src="../../assets/image/skylight.png" alt=""> 顶卷膜{{ indexs }}&nbsp;&nbsp;&nbsp;&nbsp; <img src="../../assets/image/skylight.png" alt=""> 顶卷膜{{ indexs }}
<div @click="changeOpen(0)" class="flex-view border-none">
<div :class="openIndex == 0 ? 'sel' : 'no-sel'"></div>
有效性
</div>
</div> </div>
<div class="title-tips">
<div class="input-btn">
<div class="btn btn-tips" @click="changeOpen(0)" :class="openIndex == 0 ? 'blue' : 'green'">
{{ openIndex == 0 ? '无效' : '有效' }}
</div>
</div>
</div>
<div class="flex-view border-bottom"> <div class="flex-view border-bottom">
<div class="input-btn"> <div class="input-btn">
<div class="btn" @click="changeOpen(1)" :class="openIndex == 1 ? 'blue' : 'green'"> <div class="btn" @click="changeOpen(1)" :class="openIndex == 1 ? 'blue' : 'green'">

View File

@ -1,16 +1,18 @@
<template> <template>
<div class="sunroofControl"> <div class="sunroofControl">
<div class="table-title"> <div class="table-title">
<img src="../../assets/img/sunroofControl.png" alt="">通风窗{{indexs}}&nbsp;&nbsp;&nbsp;&nbsp; <img src="../../assets/img/sunroofControl.png" alt="">通风窗{{indexs}}
<div @click="changeOpen(0)" class="flex-view border-none"> </div>
<div :class="inputData[startList[indexs-1]] == 0 ? 'sel' : 'no-sel'"></div> <div class="title-tips">工作方式选择
有效性 <div class="input-btn">
</div> <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>
<div class="title-tips">工作方式选择</div>
<div class="flex-view"> <div class="flex-view">
<div class="input-btn "> <div class="input-btn ">
<div class="btn" @click="changeOpen(1)" :class="inputData[startList[indexs-1]] == 1 ? 'blue' : 'green'"> <div class="btn" @click="changeOpen(1)" :class="inputData[startList[indexs - 1]] == 1 ? 'blue' : 'green'">
<img src="../../assets/image/irrigateSet2.png" alt="" />自动运行 <img src="../../assets/image/irrigateSet2.png" alt="" />自动运行
</div> </div>
<div class="btn" @click="changeOpen(2)" :class="inputData[startList[indexs-1]] == 2 ? 'blue' : 'green'"> <div class="btn" @click="changeOpen(2)" :class="inputData[startList[indexs-1]] == 2 ? 'blue' : 'green'">

View File

@ -1,16 +1,18 @@
<template> <template>
<div class="wetFan"> <div class="wetFan">
<div class="table-title"> <div class="table-title">
<img src="../../assets/img/wetFan.png" alt="">风机湿帘&nbsp;&nbsp;&nbsp;&nbsp; <img src="../../assets/img/wetFan.png" alt="">{{getName()}}
<div @click="changeOpen(0)" class="flex-view border-none">
<div :class="inputData[21950] == 0 ? 'sel' : 'no-sel'"></div>
有效性
</div>
</div> </div>
<div class="title-tips">
工作方式选择 <template v-if="indexs==1">
<div class="title-tips">工作方式选择
<div class="input-btn">
<div class="btn btn-tips" @click="changeOpen(0)" :class="inputData[21950] == 0 ? 'blue' : 'green'">
{{ inputData[21950] == 0 ? '无效' : '有效' }}
</div>
</div>
</div> </div>
<div class="flex-view"> <div class="flex-view">
<div class="input-btn "> <div class="input-btn ">
<div class="btn" @click="changeOpen(1,21950)" :class="inputData[21950] == 1 ? 'blue' : 'green'"> <div class="btn" @click="changeOpen(1,21950)" :class="inputData[21950] == 1 ? 'blue' : 'green'">
<img src="../../assets/image/irrigateSet2.png" alt="" />自动运行 <img src="../../assets/image/irrigateSet2.png" alt="" />自动运行
@ -196,7 +198,7 @@
<span>启动4#风机</span> <span>启动4#风机</span>
</div> </div>
</div> </div>
<div class="flex-view padding-none shrink-none"> <div class="flex-view padding-none border-none shrink-none">
<div class="input-btn"> <div class="input-btn">
<div class="btn btn-w80" @click="changeIndexOpen2(4)" :class="actList3[4] == '1' ? 'blue' : 'off'"> <div class="btn btn-w80" @click="changeIndexOpen2(4)" :class="actList3[4] == '1' ? 'blue' : 'off'">
{{actList3[4] == '1' ? '有效' : '无效'}} {{actList3[4] == '1' ? '有效' : '无效'}}
@ -209,8 +211,10 @@
<span>启动5#风机</span> <span>启动5#风机</span>
</div> </div>
</div> </div>
</template>
<div class="flex-view border-none shrink-none"> <template v-if="indexs==2">
<div class="flex-view border-none shrink-none">
<div class="input-main"> <div class="input-main">
<span>湿帘水泵1:</span> <span>湿帘水泵1:</span>
</div> </div>
@ -251,7 +255,7 @@
</div> </div>
</div> </div>
</div> </div>
<div class="flex-view shrink-none"> <div class="flex-view shrink-none border-none">
<div class="input-main-80"> <div class="input-main-80">
<span>降温需求到达2</span> <span>降温需求到达2</span>
<input @blur="blurChange(21972, $event)" v-model="inputData[21972]" @input="change(21972, $event)" <input @blur="blurChange(21972, $event)" v-model="inputData[21972]" @input="change(21972, $event)"
@ -259,8 +263,10 @@
<span>级时湿帘泵2启动</span> <span>级时湿帘泵2启动</span>
</div> </div>
</div> </div>
</template>
<div class="flex-view border-none shrink-none"> <template v-if="indexs==3">
<div class="flex-view border-none shrink-none">
<div class="input-main"> <div class="input-main">
<span>湿帘外翻窗1模式:</span> <span>湿帘外翻窗1模式:</span>
</div> </div>
@ -354,6 +360,7 @@
<span>分钟之后关闭湿帘窗</span> <span>分钟之后关闭湿帘窗</span>
</div> </div>
</div> </div>
</template>
</div> </div>
</template> </template>
<script> <script>
@ -366,10 +373,18 @@ export default {
actList3: [], actList3: [],
actList4: [], actList4: [],
actList5: [], actList5: [],
indexs: 1,
} }
}, },
watch: {
$route(newVal, oldVal) {
const that = this;
this.indexs = this.$route.query.id ? this.$route.query.id : 1;
},
},
mounted() { mounted() {
const that = this; const that = this;
this.indexs = this.$route.query.id ? this.$route.query.id : 1;
setTimeout(() => { setTimeout(() => {
that.dataInit(); that.dataInit();
}, 0); }, 0);
@ -380,6 +395,17 @@ export default {
} }
}, },
methods: { methods: {
getName(){
if(this.indexs==1){
return '风机'
}else if(this.indexs==2){
return '湿帘泵'
}else if(this.indexs==3){
return '湿帘外翻窗'
}else{
return '湿帘风机'
}
},
// x/10 // x/10
blurChange10(code, el) { blurChange10(code, el) {
var store = this.$store.state var store = this.$store.state

View File

@ -1,13 +1,15 @@
<template> <template>
<div class="waterPump wufang"> <div class="waterPump wufang">
<div class="table-title"> <div class="table-title">
<img src="../../assets/img/downtake.png" alt="" /> 下风口&nbsp;&nbsp;&nbsp;&nbsp; <img src="../../assets/img/downtake.png" alt="" /> 下风口
<div @click="changeOpen(0)" class="flex-view border-none">
<div :class="openIndex == 0 ? 'sel' : 'no-sel'"></div>
有效性
</div>
</div> </div>
<div class="title-tips">下风口有效性设置</div> <div class="title-tips">下风口有效性设置
<div class="input-btn">
<div class="btn btn-tips" @click="changeOpen(0)" :class="openIndex == 0 ? 'blue' : 'green'">
{{ openIndex == 0 ? '无效' : '有效' }}
</div>
</div>
</div>
<div class="flex-view"> <div class="flex-view">
<div class="input-btn"> <div class="input-btn">
<div <div

View File

@ -1,13 +1,15 @@
<template> <template>
<div class="waterPump"> <div class="waterPump">
<div class="table-title"> <div class="table-title">
<img src="../../assets/img/geothermalFan.png" alt=""> 地热风机&nbsp;&nbsp;&nbsp;&nbsp; <img src="../../assets/img/geothermalFan.png" alt=""> 地热风机
<div @click="changeOpen(0)" class="flex-view border-none"> </div>
<div :class="openIndex == 0 ? 'sel' : 'no-sel'"></div> <div class="title-tips">地热风机有效性设置
有效性 <div class="input-btn">
</div> <div class="btn btn-tips" @click="changeOpen(0)" :class="openIndex == 0 ? 'blue' : 'green'">
{{ openIndex == 0 ? '无效' : '有效' }}
</div>
</div>
</div> </div>
<div class="title-tips">地热风机有效性设置</div>
<div class="flex-view"> <div class="flex-view">
<div class="input-btn"> <div class="input-btn">
<div class="btn" @click="changeOpen(1)" :class="openIndex == 1 ? 'blue' : 'green'"> <div class="btn" @click="changeOpen(1)" :class="openIndex == 1 ? 'blue' : 'green'">

View File

@ -1,16 +1,17 @@
<template> <template>
<div class="waterPump wufang"> <div class="waterPump wufang">
<div class="table-title"> <div class="table-title">
<img src="../../assets/img/rollByRoll.png" alt="" /> 卷被&nbsp;&nbsp;&nbsp;&nbsp; <img src="../../assets/img/rollByRoll.png" alt="" /> 卷被
<div @click="changeOpen(0)" class="flex-view border-none">
<div :class="openIndex == 0 ? 'sel' : 'no-sel'"></div>
有效性
</div>
<div class="title-text">日出:{{ sunrise }}</div> <div class="title-text">日出:{{ sunrise }}</div>
<div class="title-text">日落:{{ sunset }}</div> <div class="title-text">日落:{{ sunset }}</div>
</div> </div>
<div class="title-tips">卷被有效性设置</div> <div class="title-tips">卷被有效性设置
<div class="input-btn">
<div class="btn btn-tips" @click="changeOpen(0)" :class="openIndex == 0 ? 'blue' : 'green'">
{{ openIndex == 0 ? '无效' : '有效' }}
</div>
</div>
</div>
<div class="flex-view"> <div class="flex-view">
<div class="input-btn"> <div class="input-btn">
<div <div

View File

@ -1,13 +1,15 @@
<template> <template>
<div class="waterPump wufang"> <div class="waterPump wufang">
<div class="table-title"> <div class="table-title">
<img src="../../assets/img/snowRemoval.png" alt="" /> 除雪&nbsp;&nbsp;&nbsp;&nbsp; <img src="../../assets/img/snowRemoval.png" alt="" /> 除雪
<div @click="changeOpen(0)" class="flex-view border-none">
<div :class="openIndex == 0 ? 'sel' : 'no-sel'"></div>
有效性
</div>
</div> </div>
<div class="title-tips">除雪有效性设置</div> <div class="title-tips">除雪有效性设置
<div class="input-btn">
<div class="btn btn-tips" @click="changeOpen(0)" :class="openIndex == 0 ? 'blue' : 'green'">
{{ openIndex == 0 ? '无效' : '有效' }}
</div>
</div>
</div>
<div class="flex-view"> <div class="flex-view">
<div class="input-btn"> <div class="input-btn">
<div <div

View File

@ -1,13 +1,15 @@
<template> <template>
<div class="waterPump wufang"> <div class="waterPump wufang">
<div class="table-title"> <div class="table-title">
<img src="../../assets/img/uptake.png" alt="" /> 上风口&nbsp;&nbsp;&nbsp;&nbsp; <img src="../../assets/img/uptake.png" alt="" /> 上风口
<div @click="changeOpen(0)" class="flex-view border-none">
<div :class="openIndex == 0 ? 'sel' : 'no-sel'"></div>
有效性
</div>
</div> </div>
<div class="title-tips">上风口有效性设置</div> <div class="title-tips">上风口有效性设置
<div class="input-btn">
<div class="btn btn-tips" @click="changeOpen(0)" :class="openIndex == 0 ? 'blue' : 'green'">
{{ openIndex == 0 ? '无效' : '有效' }}
</div>
</div>
</div>
<div class="flex-view"> <div class="flex-view">
<div class="input-btn"> <div class="input-btn">
<div <div

View File

@ -1,11 +1,14 @@
<template> <template>
<div class="waterPump"> <div class="waterPump">
<div class="table-title"> <div class="table-title">
<img src="../../assets/img/waterPump.png" alt=""> 加热水泵&nbsp;&nbsp;&nbsp;&nbsp; <img src="../../assets/img/waterPump.png" alt=""> 加热水泵
<div @click="changeOpen(0)" class="flex-view border-none"> </div>
<div :class="openIndex == 0 ? 'sel' : 'no-sel'"></div> <div class="title-tips">
有效性 <div class="input-btn">
</div> <div class="btn btn-tips" @click="changeOpen(0)" :class="openIndex == 0 ? 'blue' : 'green'">
{{ openIndex == 0 ? '无效' : '有效' }}
</div>
</div>
</div> </div>
<div class="flex-view"> <div class="flex-view">
<div class="input-btn"> <div class="input-btn">