2025-06-22 17:22:40 +08:00
|
|
|
|
|
|
|
|
|
|
<template>
|
2025-06-30 17:32:04 +08:00
|
|
|
|
<div v-loading="loading">
|
2025-09-26 14:47:45 +08:00
|
|
|
|
<el-card
|
|
|
|
|
|
v-for="(item,index) in list"
|
|
|
|
|
|
:key="index+'ylLise'"
|
2025-09-28 15:52:17 +08:00
|
|
|
|
class="sbjk-card-container running-card-container"
|
2025-09-26 14:47:45 +08:00
|
|
|
|
shadow="always">
|
|
|
|
|
|
<div slot="header">
|
2025-11-25 17:56:12 +08:00
|
|
|
|
<span class="large-title">{{item.deviceName}}</span>
|
2025-11-26 17:50:06 +08:00
|
|
|
|
<div class="info">
|
|
|
|
|
|
<div>数据更新时间:{{ item.dataUpdateTime || '-'}}</div>
|
|
|
|
|
|
</div>
|
2025-11-25 17:56:12 +08:00
|
|
|
|
<div class="alarm">
|
2025-11-26 17:50:06 +08:00
|
|
|
|
<el-button type="primary" size="small" style="margin-right:20px;" @click="pointDetail(item,'point')">详细</el-button>
|
|
|
|
|
|
<el-badge :value="item.alarmNum || 0" class="item">
|
|
|
|
|
|
<i
|
|
|
|
|
|
class="el-icon-message-solid alarm-icon"
|
|
|
|
|
|
@click="pointDetail(item,'alarmPoint')"
|
|
|
|
|
|
></i>
|
|
|
|
|
|
</el-badge>
|
2025-11-25 17:56:12 +08:00
|
|
|
|
</div>
|
2025-06-22 17:22:40 +08:00
|
|
|
|
</div>
|
2025-11-27 15:51:13 +08:00
|
|
|
|
<el-row class="device-info-row">
|
|
|
|
|
|
<el-col v-for="(tempDataItem,tempDataIndex) in tempData" :key="tempDataIndex+'ylTempData'" :span="8" class="device-info-col">
|
2025-10-16 16:10:29 +08:00
|
|
|
|
<span class="pointer" @click="showChart(tempDataItem.title,item.deviceId)">
|
2025-11-27 15:51:13 +08:00
|
|
|
|
<span class="left">{{tempDataItem.title}}</span> <span class="right">{{item[tempDataItem.attr]}}<span v-html="tempDataItem.unit"></span></span>
|
2025-09-26 15:09:58 +08:00
|
|
|
|
</span>
|
2025-09-26 14:47:45 +08:00
|
|
|
|
</el-col>
|
|
|
|
|
|
</el-row>
|
|
|
|
|
|
</el-card>
|
2025-06-30 17:32:04 +08:00
|
|
|
|
<el-empty v-show="list.length<=0" :image-size="200"></el-empty>
|
2025-09-26 15:09:58 +08:00
|
|
|
|
<point-chart ref="pointChart" :site-id="siteId"/>
|
2025-11-25 17:56:12 +08:00
|
|
|
|
<point-table ref="pointTable"/>
|
2025-06-30 17:32:04 +08:00
|
|
|
|
</div>
|
2025-06-22 17:22:40 +08:00
|
|
|
|
</template>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<script>
|
2025-06-30 17:32:04 +08:00
|
|
|
|
import getQuerySiteId from "@/mixins/ems/getQuerySiteId";
|
|
|
|
|
|
import {getCoolingDataList} from '@/api/ems/dzjk'
|
2025-09-10 09:54:29 +08:00
|
|
|
|
import intervalUpdate from "@/mixins/ems/intervalUpdate";
|
2025-09-26 15:09:58 +08:00
|
|
|
|
import pointChart from "./../PointChart.vue";
|
2025-11-25 17:56:12 +08:00
|
|
|
|
import PointTable from "@/views/ems/site/sblb/PointTable.vue";
|
2025-06-22 17:22:40 +08:00
|
|
|
|
export default {
|
|
|
|
|
|
name:'DzjkSbjkYl',
|
2025-09-10 09:54:29 +08:00
|
|
|
|
mixins:[getQuerySiteId,intervalUpdate],
|
2025-11-25 17:56:12 +08:00
|
|
|
|
components:{pointChart,PointTable},
|
2025-06-22 17:22:40 +08:00
|
|
|
|
data() {
|
|
|
|
|
|
return {
|
2025-06-30 17:32:04 +08:00
|
|
|
|
loading:false,
|
|
|
|
|
|
list:[],
|
2025-06-22 17:22:40 +08:00
|
|
|
|
tempData:[
|
2025-09-26 14:47:45 +08:00
|
|
|
|
{title:'供水温度',attr:'gsTemp',unit:'℃'},
|
|
|
|
|
|
{title:'回水温度',attr:'hsTemp',unit:'℃'},
|
|
|
|
|
|
{title:'供水压力',attr:'gsPressure',unit:'bar'},
|
|
|
|
|
|
{title:'回水压力',attr:'hsPressure',unit:'bar'},
|
|
|
|
|
|
{title:'冷源水温度',attr:'lysTemp',unit:'℃'},
|
2025-09-26 15:09:58 +08:00
|
|
|
|
{title:'VB01开度',attr:'vb01Kd',unit:'%'},
|
|
|
|
|
|
{title:'VB02开度',attr:'vb02Kd',unit:'%'},
|
2025-06-22 17:22:40 +08:00
|
|
|
|
]
|
|
|
|
|
|
}
|
|
|
|
|
|
},
|
|
|
|
|
|
methods:{
|
2025-11-25 17:56:12 +08:00
|
|
|
|
// 查看设备电位表格
|
2025-11-26 17:50:06 +08:00
|
|
|
|
pointDetail(row,dataType){
|
2025-11-25 17:56:12 +08:00
|
|
|
|
const {deviceId} = row
|
2025-11-26 17:50:06 +08:00
|
|
|
|
this.$refs.pointTable.showTable({siteId:this.siteId,deviceId,deviceCategory:'COOLING'},dataType)
|
2025-11-25 17:56:12 +08:00
|
|
|
|
},
|
2025-10-16 16:10:29 +08:00
|
|
|
|
showChart(pointName,deviceId){
|
|
|
|
|
|
pointName && this.$refs.pointChart.showChart({pointName,deviceCategory:'COOLING',deviceId})
|
2025-09-26 15:09:58 +08:00
|
|
|
|
},
|
2025-09-10 09:54:29 +08:00
|
|
|
|
updateData(){
|
2025-06-30 17:32:04 +08:00
|
|
|
|
this.loading = true
|
|
|
|
|
|
getCoolingDataList(this.siteId).then(response => {
|
|
|
|
|
|
this.list = JSON.parse(JSON.stringify(response?.data || []));
|
|
|
|
|
|
}).finally(() => {this.loading = false})
|
2025-09-10 09:54:29 +08:00
|
|
|
|
},
|
|
|
|
|
|
init(){
|
|
|
|
|
|
this.updateData()
|
|
|
|
|
|
this.updateInterval(this.updateData)
|
2025-06-30 17:32:04 +08:00
|
|
|
|
}
|
2025-06-22 17:22:40 +08:00
|
|
|
|
},
|
|
|
|
|
|
mounted(){
|
|
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
</script>
|
|
|
|
|
|
|
|
|
|
|
|
<style scoped lang="scss">
|
2025-09-26 14:47:45 +08:00
|
|
|
|
.sbjk-card-container{
|
2025-06-22 17:22:40 +08:00
|
|
|
|
&:not(:last-child){
|
|
|
|
|
|
margin-bottom: 25px;
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
</style>
|