From 81a0e26f1ba5fd0b95381ee902caa1579a8ec043 Mon Sep 17 00:00:00 2001 From: web <candymxq888@outlook.com> Date: 星期五, 11 四月 2025 17:31:47 +0800 Subject: [PATCH] fix:修改报警提示 --- src/views/screen/pumpInfo/index.vue | 397 +++++++++++++++++++++++++++++++------------------------- 1 files changed, 222 insertions(+), 175 deletions(-) diff --git a/src/views/screen/pumpInfo/index.vue b/src/views/screen/pumpInfo/index.vue index ac6d161..fb16372 100644 --- a/src/views/screen/pumpInfo/index.vue +++ b/src/views/screen/pumpInfo/index.vue @@ -1,173 +1,194 @@ <script setup> +import {onMounted, ref, onUnmounted} from 'vue' +import {getPumpData} from '@/api/screen/index.js' -const list = [ - { - name: '康妮一号泵房', - data: { - longtime: '1280天13小时59分', - shuijin: '正常', - ssll: '+10m³/h', - ljll: '1021m³', - ls: '10m/s', - qdnumber: '10次', - dianya: '15v', - dianliu: '15A', - power: '100w', - dianneng: '500kw·h', - onewater: '226m', - twowater: '426m', - adianya: '380v', - adianliu: '0.15A', - bdianya: '380v', - bdianliu: '0.15A', - cdianya: '380v', - cdianliu: '0.15A', - onepumpNumber: 10, - onepumpStatus: 1, - twopumpNumber: 10, - twopumpStatus: 0, - threepumpNumber: 10, - threepumpStatus: 0, - fourpumpNumber: 10, - fourpumpStatus: 0, - } - }, - { - name: '康妮一号泵房', - data: { - longtime: '1280天13小时59分', - shuijin: '正常', - ssll: '+10m³/h', - ljll: '1021m³', - ls: '10m/s', - qdnumber: '10次', - dianya: '15v', - dianliu: '15A', - power: '100w', - dianneng: '500kw·h', - onewater: '226m', - twowater: '426m', - adianya: '380v', - adianliu: '0.15A', - bdianya: '380v', - bdianliu: '0.15A', - cdianya: '380v', - cdianliu: '0.15A', - onepumpNumber: 10, - onepumpStatus: 1, - twopumpNumber: 10, - twopumpStatus: 0, - threepumpNumber: 10, - threepumpStatus: 0, - fourpumpNumber: 10, - fourpumpStatus: 0, - } +const list = ref([]) +let timer = null + +const gongdainStatus = (n1, n2, n3) => { + if ((n1 > 350 && n1 < 400) && (n2 > 350 && n2 < 400) && (n3 > 350 && n3 < 400)) { + return true + } else { + return false } -] +} +const getData = () => { + let newArr = [{}, {}, {}, {}] + let hasPump = 0; // 最多四个泵,有几个泵就累加数字 + getPumpData().then(res => { + newArr.forEach((item, index) => { + item['facilityName'] = res.data[0].facilityName + (index+1) +'号泵' + }) + res.data[0].parameterVOList.forEach(el => { + if(el.parameterType === 0) { //公共数据 + newArr.forEach(item => { + item['c'+el.columnsCode] = el.columnValue + }) + } else if(el.parameterType === 1) { + if(hasPump < 1) { + hasPump = 1 + } + newArr[0]['c'+el.columnsCode] = el.columnValue + } else if (el.parameterType === 2) { + if(hasPump < 2) { + hasPump = 2 + } + newArr[1]['c'+el.columnsCode] = el.columnValue + } else if(el.parameterType === 3) { + if(hasPump < 3) { + hasPump = 3 + } + newArr[2]['c'+el.columnsCode] = el.columnValue + } else if(el.parameterType === 4) { + hasPump = 4 + newArr[3]['c'+el.columnsCode] = el.columnValue + } + }) + list.value = newArr.splice(0,hasPump) + }).catch(err => { + if(err.message.includes("timeout")){ + clearInterval(timer) + } + }) +} + +onMounted(() => { + getData() + // 定时3秒回调一次,更新数据 + timer = setInterval(() => { + getData() + }, 3000) +}) + +onUnmounted(() => { + if(timer) { + clearInterval(timer) + } +}) </script> <template> <div class="info"> <div class="item" v-for="(item, index) in list" :key="index"> - <div class="item-t">{{ item.name }}</div> - <div class="item-c"> - <div class="list"> - <div class="lc"> - <span class="name">运行时长</span> - <span class="val">{{item.data.longtime}}</span> + <div class="item-t">{{item.facilityName}}</div> + <div class="item-c"> + <div class="allTime"> + <div>{{index+1}}号泵累计运行时长</div> + <div class="val">{{ item[`cB00${index+1}TimeSum`] }}</div> </div> - <div class="lc"> - <span class="name">水浸</span> - <span class="val">{{item.data.shuijin}}</span> - </div> - <div class="lc"> - <span class="name">瞬时流量</span> - <span class="val">{{item.data.ssll}}</span> - </div> - <div class="lc"> - <span class="name">累计流量</span> - <span class="val">{{item.data.ljll}}</span> - </div> - <div class="lc"> - <span class="name">流 速</span> - <span class="val">{{item.data.ls}}</span> - </div> - <div class="lc"> - <span class="name">启泵次数</span> - <span class="val">{{item.data.qdnumber}}</span> - </div> - <div class="lc"> - <span class="name">水泵电压</span> - <span class="val">{{item.data.dianya}}</span> - </div> - <div class="lc"> - <span class="name">水泵电流</span> - <span class="val">{{item.data.dianliu}}</span> - </div> - <div class="lc"> - <span class="name">水泵功率</span> - <span class="val">{{item.data.power}}</span> - </div> - <div class="lc"> - <span class="name">总 电 能</span> - <span class="val">{{item.data.dianneng}}</span> - </div> - <div class="lc"> - <span class="name">1号泵组</span> - <span class="status">{{ !!item.data.onepumpStatus ? '开' : '关' }}</span> - <span class="val">{{item.data.onepumpNumber}}次</span> - </div> - <div class="lc"> - <span class="name">1号泵组</span> - <span class="status">{{ !!item.data.twopumpStatus ? '开' : '关' }}</span> - <span class="val">{{item.data.twopumpNumber}}次</span> - </div> - <div class="lc"> - <span class="name">1号泵组</span> - <span class="status">{{ !!item.data.threepumpStatus ? '开' : '关' }}</span> - <span class="val">{{item.data.threepumpNumber}}次</span> - </div> - <div class="lc"> - <span class="name">1号泵组</span> - <span class="status">{{ !!item.data.fourpumpStatus ? '开' : '关' }}</span> - <span class="val">{{item.data.fourpumpNumber}}次</span> - </div> - <div class="lc"> - <span class="name">1号水池液位</span> - <span class="val">{{item.data.onewater}}</span> - </div> - <div class="lc"> - <span class="name">2号水池液位</span> - <span class="val">{{item.data.twowater}}</span> - </div> - <div class="lc"> - <span class="name">市电供电A相电压</span> - <span class="val">{{item.data.adianya}}</span> - </div> - <div class="lc"> - <span class="name">市电供电A相电流</span> - <span class="val">{{item.data.adianliu}}</span> - </div> - <div class="lc"> - <span class="name">市电供电B相电压</span> - <span class="val">{{item.data.bdianya}}</span> - </div> - <div class="lc"> - <span class="name">市电供电B相电流</span> - <span class="val">{{item.data.bdianliu}}</span> - </div> - <div class="lc"> - <span class="name">市电供电C相电压</span> - <span class="val">{{item.data.cdianya}}</span> - </div> - <div class="lc"> - <span class="name">市电供电C相电流</span> - <span class="val">{{item.data.cdianliu}}</span> + <div class="pumbVal"> + <div class="environment"> + <div class="env-item"> + <div class="name">水浸状态</div> + <div :class="Number(item.cSQ) === 0 ? 'val' : 'error'">{{Number(item.cSQ) === 0 ? '正常' : '异常'}}</div> + </div> + <div class="env-item"> + <div class="name">水池液位</div> + <div class="val">{{item.c1001}}cm</div> + </div> + <div class="env-item"> + <div class="name">供电状态</div> + <div :class="gongdainStatus(Number(item.c2001A), Number(item.c2001B), Number(item.c2001C)) ? 'val' : 'error'">{{gongdainStatus(Number(item.c2001A), Number(item.c2001B), Number(item.c2001C)) ? '正常' : '异常'}}</div> + </div> + <div class="env-item"> + <div class="name">A相电压</div> + <div class="val">{{ item.c2001A }}V</div> + </div> + <div class="env-item"> + <div class="name">A相电流</div> + <div class="val">{{item.c2002A}}A</div> + </div> + <div class="env-item"> + <div class="name">B相电压</div> + <div class="val">{{ item.c2001B }}V</div> + </div> + <div class="env-item"> + <div class="name">B相电流</div> + <div class="val">{{ item.c2002B }}A</div> + </div> + <div class="env-item"> + <div class="name">C相电压</div> + <div class="val">{{ item.c2001C }}V</div> + </div> + <div class="env-item"> + <div class="name">C相电流</div> + <div class="val">{{ item.c2002C }}A</div> + </div> + <div class="env-item"> + <div class="name">总 电 能</div> + <div class="val">{{ item.c2007 }}Kw·h</div> + </div> + </div> + <div class="run"> + <div class="run-item"> + <div class="name">工作状态</div> + <div :class="(item[`cB00${index+1}Start`] === '开' || item[`cB00${index+1}Run`] === '开') ? 'val' : 'error'">{{(item[`cB00${index+1}Start`] === '开' || item[`cB00${index+1}Run`] === '开') ? '启动' : '关闭'}}</div> + </div> + <div class="run-item"> + <div class="name">运行状态</div> + <div :class="Number(item.c1012) < 0 ? 'error' : 'val'">{{Number(item.c1012) < 0 ? '吸水' : '排水'}}</div> + </div> + <div class="run-item"> + <div class="name">瞬时流量</div> + <div class="val">{{Number(item.c1012)}}m³/h</div> + </div> + <div class="run-item"> + <div class="name">控制状态</div> + <div class="val">{{item.cAuto === '关' ? '远程' : '自动'}}</div> + </div> + <div class="run-item"> + <div class="name">流 速</div> + <div class="val">{{ Number(item.c1011) }}m/s</div> + </div> + <div class="run-item"> + <div class="name">启泵次数</div> + <div class="val">{{Number(item[`cB00${index+1}StartNumber`]) + '次'}}</div> + </div> + <div class="run-item"> + <div class="name">1号空开</div> + <div class="val"> + <span style="margin-right: 2rem" :class="item.cQF1 === '开' ? 'val' : 'error'">{{item.cQF1 === '开' ? '开' : '关'}}</span> + <span>{{Number(item.cQF1Number) + '次'}}</span> + </div> + </div> + <div class="run-item"> + <div class="name">2号空开</div> + <div class="val"> + <span style="margin-right: 2rem" :class="item.cQF2 === '开' ? 'val' : 'error'">{{item.cQF2 === '开' ? '开' : '关'}}</span> + <span>{{Number(item.cQF2Number) + '次'}}</span> + </div> + </div> + <div class="run-item"> + <div class="name">3号空开</div> + <div class="val"> + <span style="margin-right: 2rem" :class="item.cQF3 === '开' ? 'val' : 'error'">{{item.cQF3 === '开' ? '开' : '关'}}</span> + <span>{{Number(item.cQF3Number) + '次'}}</span> + </div> + </div> + <div class="run-item"> + <div class="name">备用空开</div> + <div class="val"> + <span style="margin-right: 2rem" :class="item.cQF4 === '开' ? 'val' : 'error'">{{item.cQF4 === '开' ? '开' : '关'}}</span> + <span>{{Number(item.cQF4Number) + '次'}}</span> + </div> + </div> + <div class="run-item"> + <div class="name">单次运行时长</div> + <div :class="item[`cB00${index+1}Time`].includes('时') ? 'error' : 'val'">{{ item[`cB00${index+1}Time`] }}</div> + </div> + <div class="run-item"> + <div class="name">正向累计流量</div> + <div class="val">{{item.c1013}}m³</div> + </div> + <div class="run-item"> + <div class="name">负向累计流量</div> + <div class="val">{{ item.c10130 }}m³</div> + </div> + </div> </div> </div> </div> - </div> </div> </template> @@ -178,6 +199,10 @@ align-items: center; justify-content: space-between; padding: 0 5rem; + overflow-x: scroll; + &::-webkit-scrollbar{ + display: none; + } .item{ width: 48%; height: 98%; @@ -192,31 +217,53 @@ &-c{ height: calc(100% - 2rem); padding: 1rem; - .list{ - height: 100%; + .allTime{ + height: 10%; + padding: 0 8rem; + color: #fff; + font-size: 1.5rem; display: flex; - flex-direction: column; - flex-wrap: wrap; - .lc{ + justify-content: space-between; + align-items: center; + } + .pumbVal{ + height: 90%; + padding-top: 5%; + color: #fff; + display: flex; + .environment, + .run{ + height: 100%; width: 50%; - padding: 0.75rem 0; - color: #fff; - font-size: 1.3rem; - .name{ - display: inline-block; - width: 12rem; + font-size: 1.5rem; + } + .env-item{ + height: 10%; + display: flex; + align-items: center; + div{ + width: 50%; } - .status{ - display: inline-block; - width: 6rem; - color: #1ab394; - } - .val{ - color: #1ab394; + } + .run{ + padding-left: 1rem; + &-item{ + height: 7.7%; + display: flex; + align-items: center; + div{ + width: 50%; + } } } } } + .val{ + color: #22E195; + } + .error{ + color: red; + } } } </style> \ No newline at end of file -- Gitblit v1.9.3