Commit 43e22457 authored by 朱超's avatar 朱超
parents 9c3466ac 9ba20148
<template> <template>
<!-- 遮罩组件 -->
<teleport to="body">
<div v-if="showMask" class="mask"></div>
</teleport>
<el-card class="remoteTitle"> <el-card class="remoteTitle">
<div class="card-content"> <div class="card-content">
<div class="demo-image"> <div class="demo-image">
<div class="block">
<span class="demonstration">读写成功</span>
<el-icon><CircleCheckFilled color="rgb(0,255,0)"/></el-icon>
</div>
<div class="block"> <div class="block">
<span class="demonstration">通讯异常</span> <span class="demonstration">通讯异常</span>
<el-icon><Connection /></el-icon> <el-icon><Connection color="rgb(255,0,0)"/></el-icon>
</div> </div>
<div class="block"> <div class="block">
<span class="demonstration">读写失败</span> <span class="demonstration">读写失败</span>
<el-icon><Failed color="rgb(255,0,0)"/></el-icon> <el-icon><Failed color="rgb(255,0,0)"/></el-icon>
</div> </div>
<div class="block">
<span class="demonstration">启动</span>
<el-icon><DocumentChecked color="rgb(0,255,0)"/></el-icon>
</div>
<div class="block">
<span class="demonstration">关闭</span>
<el-icon><DocumentDelete color="rgb(255,0,0)" /></el-icon>
</div>
</div> </div>
<div class="demo-button"> <div class="demo-button">
<el-button type="primary" size="small" @click="ReadAllStatus">读取全部</el-button> <el-button type="primary" size="small" @click="ReadAllStatus">读取全部</el-button>
...@@ -41,25 +49,158 @@ ...@@ -41,25 +49,158 @@
<el-table-column prop="rowIndex" label="序号" width="45px" fixed /> <el-table-column prop="rowIndex" label="序号" width="45px" fixed />
<el-table-column prop="transferId" label="机组编号" v-if="false" width="80px" fixed /> <el-table-column prop="transferId" label="机组编号" v-if="false" width="80px" fixed />
<el-table-column prop="transferName" label="换热机组" width="150px" fixed /> <el-table-column prop="transferName" label="换热机组" width="150px" fixed />
<el-table-column prop="jDValue" label="华为控制模式" width="80px" /> <el-table-column prop="jdValue" label="华为控制模式" width="80px" >
<el-table-column prop="gainMode" label="增益模式" width="80px" /> <template #default="{ row }">
<el-table-column prop="weatherMode" label="气象仪模式" width="80px" /> <div v-if="row.jdValue === null"></div>
<el-table-column prop="curveMode" label="曲线对应模式" width="80px" /> <div v-else>
<el-table-column prop="criclePump1" label="1#循环泵启停" width="80px" /> <el-checkbox v-model="row.jdValue"></el-checkbox>
<el-table-column prop="criclePump2" label="2#循环泵启停" width="80px" /> </div>
<el-table-column prop="Pump3" label="3#循环泵启停" width="80px" /> </template>
<el-table-column prop="Pump4" label="4#循环泵启停" width="80px" /> </el-table-column>
<el-table-column prop="ReplenishingPump" label="补水泵启停" width="80px" /> <el-table-column prop="gainMode" label="增益模式" width="80px" >
<el-table-column prop="SecPump1" label="1#二级泵启停" width="80px" /> <template #default="{ row }">
<el-table-column prop="Evc1AutoOrManual" label="1#电动调节阀手动/自动切换" width="100px" /> <div v-if="row.gainMode === null"></div>
<el-table-column prop="Evc2AutoOrManual" label="2#电动调节阀手动/自动切换" width="100px" /> <div v-else>
<el-table-column prop="Evc3AutoOrManual" label="3#电动调节阀手动/自动切换" width="100px" /> <el-checkbox v-model="row.gainMode"></el-checkbox>
<el-table-column prop="Evc4AutoOrManual" label="4#电动调节阀手动/自动切换" width="100px" /> </div>
<el-table-column prop="CriclePump1AutoOrManual" label="一号循环泵 手动/自动切换" width="100px" /> </template>
<el-table-column prop="CriclePump2AutoOrManual" label="二号循环泵 手动/自动切换" width="100px" /> </el-table-column>
<el-table-column prop="CriclePump3AutoOrManual" label="三号循环泵 手动/自动切换" width="100px" /> <el-table-column prop="weatherMode" label="气象仪模式" width="80px" >
<el-table-column prop="CriclePump4AutoOrManual" label="四号循环泵 手动/自动切换" width="100px" /> <template #default="{ row }">
<el-table-column prop="SecCriclePumpAutoOrManual" label="二级泵 手动/自动切换" width="100px" /> <div v-if="row.weatherMode === null"></div>
<div v-else>
<el-checkbox v-model="row.weatherMode"></el-checkbox>
</div>
</template>
</el-table-column>
<el-table-column prop="curveMode" label="曲线对应模式" width="80px" >
<template #default="{ row }">
<div v-if="row.curveMode === null"></div>
<div v-else>
<el-checkbox v-model="row.curveMode"></el-checkbox>
</div>
</template>
</el-table-column>
<el-table-column prop="criclePump1" label="1#循环泵启停" width="80px" >
<template #default="{ row }">
<div v-if="row.criclePump1 === null"></div>
<div v-else>
<el-checkbox v-model="row.criclePump1"></el-checkbox>
</div>
</template>
</el-table-column>
<el-table-column prop="criclePump2" label="2#循环泵启停" width="80px" >
<template #default="{ row }">
<div v-if="row.criclePump2 === null"></div>
<div v-else>
<el-checkbox v-model="row.criclePump2"></el-checkbox>
</div>
</template>
</el-table-column>
<el-table-column prop="pump3" label="3#循环泵启停" width="80px" >
<template #default="{ row }">
<div v-if="row.pump3 === null"></div>
<div v-else>
<el-checkbox v-model="row.pump3"></el-checkbox>
</div>
</template>
</el-table-column>
<el-table-column prop="pump4" label="4#循环泵启停" width="80px" >
<template #default="{ row }">
<div v-if="row.pump4 === null"></div>
<div v-else>
<el-checkbox v-model="row.pump4"></el-checkbox>
</div>
</template>
</el-table-column>
<el-table-column prop="replenishingPump" label="补水泵启停" width="80px" >
<template #default="{ row }">
<div v-if="row.replenishingPump === null"></div>
<div v-else>
<el-checkbox v-model="row.replenishingPump"></el-checkbox>
</div>
</template>
</el-table-column>
<el-table-column prop="secPump1" label="1#二级泵启停" width="80px" >
<template #default="{ row }">
<div v-if="row.secPump1 === null"></div>
<div v-else>
<el-checkbox v-model="row.secPump1"></el-checkbox>
</div>
</template>
</el-table-column>
<el-table-column prop="evc1AutoOrManual" label="1#电动调节阀手动/自动切换" width="100px" >
<template #default="{ row }">
<div v-if="row.evc1AutoOrManual === null"></div>
<div v-else>
<el-checkbox v-model="row.evc1AutoOrManual"></el-checkbox>
</div>
</template>
</el-table-column>
<el-table-column prop="evc2AutoOrManual" label="2#电动调节阀手动/自动切换" width="100px" >
<template #default="{ row }">
<div v-if="row.evc2AutoOrManual === null"></div>
<div v-else>
<el-checkbox v-model="row.evc2AutoOrManual"></el-checkbox>
</div>
</template>
</el-table-column>
<el-table-column prop="evc3AutoOrManual" label="3#电动调节阀手动/自动切换" width="100px" >
<template #default="{ row }">
<div v-if="row.evc3AutoOrManual === null"></div>
<div v-else>
<el-checkbox v-model="row.evc3AutoOrManual"></el-checkbox>
</div>
</template>
</el-table-column>
<el-table-column prop="evc4AutoOrManual" label="4#电动调节阀手动/自动切换" width="100px" >
<template #default="{ row }">
<div v-if="row.evc4AutoOrManual === null"></div>
<div v-else>
<el-checkbox v-model="row.evc4AutoOrManual"></el-checkbox>
</div>
</template>
</el-table-column>
<el-table-column prop="criclePump1AutoOrManual" label="一号循环泵 手动/自动切换" width="100px" >
<template #default="{ row }">
<div v-if="row.criclePump1AutoOrManual === null"></div>
<div v-else>
<el-checkbox v-model="row.criclePump1AutoOrManual"></el-checkbox>
</div>
</template>
</el-table-column>
<el-table-column prop="criclePump2AutoOrManual" label="二号循环泵 手动/自动切换" width="100px" >
<template #default="{ row }">
<div v-if="row.criclePump2AutoOrManual === null"></div>
<div v-else>
<el-checkbox v-model="row.criclePump2AutoOrManual"></el-checkbox>
</div>
</template>
</el-table-column>
<el-table-column prop="criclePump3AutoOrManual" label="三号循环泵 手动/自动切换" width="100px" >
<template #default="{ row }">
<div v-if="row.criclePump3AutoOrManual === null"></div>
<div v-else>
<el-checkbox v-model="row.criclePump3AutoOrManual"></el-checkbox>
</div>
</template>
</el-table-column>
<el-table-column prop="criclePump4AutoOrManual" label="四号循环泵 手动/自动切换" width="100px" >
<template #default="{ row }">
<div v-if="row.criclePump4AutoOrManual === null"></div>
<div v-else>
<el-checkbox v-model="row.criclePump4AutoOrManual"></el-checkbox>
</div>
</template>
</el-table-column>
<el-table-column prop="secCriclePumpAutoOrManual" label="二级泵 手动/自动切换" width="100px" >
<template #default="{ row }">
<div v-if="row.secCriclePumpAutoOrManual === null"></div>
<div v-else>
<el-checkbox v-model="row.secCriclePumpAutoOrManual"></el-checkbox>
</div>
</template>
</el-table-column>
<el-table-column fixed="right" label="操作" width="100"> <el-table-column fixed="right" label="操作" width="100">
<template #default="{ row }"> <template #default="{ row }">
<el-button link type="primary" size="small" @click="ReadStatus(row)">读取</el-button> <el-button link type="primary" size="small" @click="ReadStatus(row)">读取</el-button>
...@@ -73,6 +214,7 @@ ...@@ -73,6 +214,7 @@
:stroke-width="16" :stroke-width="16"
status="success" status="success"
:percentage="progress" :percentage="progress"
:indeterminate="myIndeterminate"
/> />
</el-card> </el-card>
</template> </template>
...@@ -80,6 +222,7 @@ ...@@ -80,6 +222,7 @@
import { ref, reactive, onMounted, onUnmounted, watch,toRefs } from 'vue'; import { ref, reactive, onMounted, onUnmounted, watch,toRefs } from 'vue';
import http from '../../api/http'; import http from '../../api/http';
import store from "../../store/index"; import store from "../../store/index";
import { ElMessage } from "element-plus";
const enterpriseId = store.getters.getEnterpriseId(); const enterpriseId = store.getters.getEnterpriseId();
const props = defineProps(['activeRadio']); const props = defineProps(['activeRadio']);
...@@ -89,11 +232,8 @@ ...@@ -89,11 +232,8 @@
const visibleData = ref([]); const visibleData = ref([]);
const tableHeight = ref(500); const tableHeight = ref(500);
const progress =ref(0); const progress =ref(0);
const state = reactive({ const showMask = ref(false);
fits: ['Success', 'fale', 'cover', 'none', 'scale-down'], const myIndeterminate = ref(false);
url: 'https://fuss10.elemecdn.com/e/5d/4a731a90594a4af544c0c25941171jpeg.jpeg',
})
const { fits, url } = toRefs(state);
//监听修改actionValue状态 //监听修改actionValue状态
watch(() =>props.activeRadio, (oldValue, newValue) => { watch(() =>props.activeRadio, (oldValue, newValue) => {
...@@ -111,39 +251,79 @@ ...@@ -111,39 +251,79 @@
type = 1; type = 1;
} }
var result = await http.post('/api/remote/GetTransferStatus',{"SupplyType":type, "DeviceId": props.activeRadio}); var result = await http.post('/api/remote/GetTransferStatus',{"SupplyType":type, "DeviceId": props.activeRadio});
console.log(result); // console.log(result);
visibleData.value = result.data; if(result.success){
visibleData.value = result.data;
}else{
ElMessage.error(result.message);
}
isLoading.value = false; isLoading.value = false;
} }
initData(); initData();
async function ReadStatus(row){ async function ReadStatus(row){
myIndeterminate.value = true;
showMask.value = true;
isLoading.value = true;
ReadStation(row.transferId); ReadStation(row.transferId);
isLoading.value = false;
showMask.value = false;
} }
async function ReadAllStatus(){ async function ReadAllStatus(){
isLoading.value = true;
showMask.value = true;
if(selectedRows){ if(selectedRows){
selectedRows.value.forEach(item =>{ selectedRows.value.forEach(item =>{
ReadStation(item.transferId); ReadStation(item.transferId);
}) })
} }
isLoading.value = false;
showMask.value = false;
} }
async function WriteStatus(){ async function WriteStatus(){
isLoading.value = true;
isLoading.value = false;
} }
async function WriteAllStatus(){ async function WriteAllStatus(){
isLoading.value = true;
isLoading.value = false;
} }
async function ReadStation(value){ async function ReadStation(value){
var result = await http.post('/api/remote/ReadTransferStatus', value); var result = await http.post('/api/remote/ReadTransferStatus', value);
var jobj = result.data; if(result.success){
if(jobj && tableRef){ var jobj = result.data[0];
visibleData.value.forEach(element => { console.log("Value:"+jobj);
if(element.transferId === value){ if(jobj && visibleData){
element.jDValue = jobj[0].jDValue; for(const element of visibleData.value){
console.log("jDValue:"+jobj[0].jDValue); if(element.transferId === value){
} element.jdValue = jobj.jdValue;
}); element.gainMode = jobj.gainMode;
element.weatherMode = jobj.weatherMode;
element.curveMode = jobj.curveMode;
element.criclePump1 = jobj.criclePump1;
element.criclePump2 = jobj.criclePump2;
element.pump3 = jobj.pump3;
element.pump4 = jobj.pump4;
element.replenishingPump = jobj.replenishingPump;
element.secPump1 = jobj.secPump1;
element.secPump2 = jobj.secPump2;
element.evc1AutoOrManual = jobj.evc1AutoOrManual;
element.evc2AutoOrManual = jobj.evc2AutoOrManual;
element.evc3AutoOrManual = jobj.evc3AutoOrManual;
element.evc4AutoOrManual = jobj.evc4AutoOrManual;
element.criclePump1AutoOrManual = jobj.criclePump1AutoOrManual;
element.criclePump2AutoOrManual = jobj.criclePump2AutoOrManual;
element.criclePump3AutoOrManual = jobj.criclePump3AutoOrManual;
element.criclePump4AutoOrManual = jobj.criclePump4AutoOrManual;
element.secCriclePumpAutoOrManual = jobj.secCriclePumpAutoOrManual;
//console.log("gainMode:"+jobj.gainMode);
break;
}
};
}
}else{
ElMessage.error(result.message);
} }
} }
...@@ -221,4 +401,14 @@ ...@@ -221,4 +401,14 @@
font-size: 12px; font-size: 12px;
margin-bottom: 0px; margin-bottom: 0px;
} }
/* 遮罩样式 */
.mask {
position: fixed;
top: 0;
left: 0;
right: 0;
bottom: 0;
background-color: rgba(0, 0, 0, 0.5);
z-index: 9999;
}
</style> </style>
\ No newline at end of file
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment