From 010ce04ba6e27f2bd603cec692d2695d7a8a3c1f Mon Sep 17 00:00:00 2001 From: web <candymxq888@outlook.com> Date: 星期三, 07 五月 2025 08:38:18 +0800 Subject: [PATCH] fix:修改水温深度监测 --- src/views/screen/temperature/home/index.vue | 112 ++++++++++++++++++++++++++++++++++++++----------------- 1 files changed, 77 insertions(+), 35 deletions(-) diff --git a/src/views/screen/temperature/home/index.vue b/src/views/screen/temperature/home/index.vue index 9fa20bc..8bfe5d4 100644 --- a/src/views/screen/temperature/home/index.vue +++ b/src/views/screen/temperature/home/index.vue @@ -2,27 +2,43 @@ <div class="home"> <div class="home-bg"></div> <div class="home-c"> - <div class="point" v-for="(item, index) in monitorList" :key="index" :style="{left: item.left, top: item.top}"> + <div class="point" v-for="(item, index) in monitorList" :key="index" + :style="{left: item.left, top: item.top}"> <div class="point-address" @click="handleShow(index)"></div> <div class="point-message" v-show="item.showMsg"> - <div class="msg-box"> - <div class="msg-t">{{ item.pointName }}</div> - <div class="num"> - <div class="item"> - <div class="item-t">水温:</div> - <div class="item-num"><span>{{item.waterTemperature}}</span>°C</div> - </div> - <div class="item"> - <div class="item-t">水位:</div> - <div class="item-num"><span>{{ item.waterLevel }}</span>m</div> - </div> - </div> - <div class="shebei"> - 监测设备: - <span v-if="item.isOnline === 1">设备运作正常</span> - <span v-else style="color: red">设备运作异常</span> - </div> - </div> + <div class="msg-box"> + <div class="msg-t">{{ item.pointName }}</div> + <div class="num"> + <div class="item"> + <div class="item-t">水温:</div> + <div class="item-num"><span>{{ item?.dataList?.find(f => f.code === selectDeep[index]).value }}</span>°C</div> + </div> + <div class="item"> + <div class="item-t">水位:</div> + <div class="item-num"> + <el-select + v-model="selectDeep[index]" + class="val-select" + placeholder="Select" + style="width: 10rem" + > + <el-option + v-for="item in item?.dataList" + :key="item.code" + :label='item.code' + :value="item.code" + /> + </el-select> + m + </div> + </div> + </div> + <div class="shebei"> + 监测设备: + <span v-if="item.isOnline === 1">设备运作正常</span> + <span v-else style="color: red">设备运作异常</span> + </div> + </div> </div> </div> </div> @@ -35,19 +51,21 @@ import {ref, onMounted} from "vue"; const monitorList = ref([]) +const selectDeep = ref([]) // 标点配置 const config = [ - { left: '15%', top: '53%', showMsg: false }, - { left: '12%', top: '68%', showMsg: false }, + {left: '15%', top: '53%', showMsg: false}, + {left: '12%', top: '68%', showMsg: false}, ] // 获取监控点列表 const getMonitorList = () => { pointApi().search({type: 1, page: 1, limit: 3}).then(res => { let data = res.data.list.filter(el => el.parentId !== 0) - if(data.length > 2) data = data.splice(0, 1) + if (data.length > 2) data = data.splice(0, 1) monitorList.value = data.map((item, index) => { + selectDeep.value[index] = item?.dataList[0].code return { ...item, ...config[index] @@ -67,9 +85,10 @@ <style scoped lang="scss"> -.home{ +.home { height: 100%; - .home-bg{ + + .home-bg { position: absolute; left: 0; top: 0; @@ -79,20 +98,24 @@ background-size: 100% 100%; z-index: 11; } - .home-c{ + + .home-c { width: 100%; height: 100%; position: relative; z-index: 20; - .point{ + + .point { position: absolute; - .point-address{ + + .point-address { width: 35px; height: 40px; background: url("@/assets/images/point.png") no-repeat; background-size: 100% 100%; } - .point-message{ + + .point-message { width: 500px; height: 180px; background: url("@/assets/images/messageInfo-right.png") no-repeat; @@ -102,30 +125,49 @@ top: -60px; padding: 30px 50px; color: #fff; - .msg-box{ + + .msg-box { width: 100%; height: 100%; display: flex; flex-direction: column; justify-content: space-between; } - .msg-t{ + + .msg-t { font-size: 26px; font-weight: bold; } - .num{ + + .num { display: flex; align-items: center; - gap: 50px; - .item{ + gap: 30px; + + .item { display: flex; align-items: center; - span{ + + span { display: inline-block; - padding: 0 30px; + padding: 0 20px; font-size: 22px; font-weight: bold; } + .val-select{ + padding: 0 20px; + :deep(.el-select__wrapper){ + background-color: transparent; + box-shadow: 0 0 0 1px #fff inset; + font-size: 20px; + .el-select__caret{ + color: #fff; + } + .el-select__placeholder{ + color: #fff; + } + } + } } } } -- Gitblit v1.9.3