|
@@ -1,17 +1,30 @@
|
|
|
<script lang="ts" setup>
|
|
|
-import {onMounted, onUnmounted, ref} from 'vue'
|
|
|
+import {computed, onMounted, onUnmounted, ref} from 'vue'
|
|
|
import {useRoute} from 'vue-router'
|
|
|
import RightFrame from '@/components/RightFrame.vue'
|
|
|
import Card01 from '@/components/card/Card01.vue'
|
|
|
import StripeTable from '@/components/StripeTable.vue'
|
|
|
-import {getDeviceByName} from '@/utils/device'
|
|
|
+import {getDeviceByName, getDeviceTypeByName} from '@/utils/device'
|
|
|
import Chart from '@/components/Chart.vue'
|
|
|
import StationRightButtonGroup from '@/components/StationRightButtonGroup.vue'
|
|
|
import {View} from "@/utils/tdInstruction";
|
|
|
+import GwVideo from "@/components/Video/index.vue";
|
|
|
+import {getVideoCodeByMark} from "@/components/Video/video";
|
|
|
+import Flow from "@/components/DeviceComponent/flow.vue";
|
|
|
+import WaterQualityAnalysis from "@/components/DeviceComponent/WaterQualityAnalysis.vue";
|
|
|
+import WaterLevel from "@/components/DeviceComponent/waterLevel.vue";
|
|
|
+import Rainfall from "@/components/DeviceComponent/rainfall.vue";
|
|
|
|
|
|
const route = useRoute()
|
|
|
const right3Ref = ref(null)
|
|
|
-const device = ref(getDeviceByName('COD分析仪'))
|
|
|
+const device = ref(getDeviceByName(route.params.deviceid) || {})
|
|
|
+// 根据仪器类型展示信息 video、waterLevel、flow、rainfall、waterQuality、default
|
|
|
+const deviceType = computed(() => getDeviceTypeByName(route.params.deviceid))
|
|
|
+const deviceDetail = computed(() => device && device.detail ? device.detail.split('\n') : [])
|
|
|
+// 视频图片
|
|
|
+const videoImageSrc = new URL('@/assets/images/tmp/jiankong.png', import.meta.url).href
|
|
|
+// 获取视频CODE
|
|
|
+const videoCode = ref(getVideoCodeByMark(route.params.stcd + '', "室外"))
|
|
|
|
|
|
|
|
|
const deviceStatusColumns = [
|
|
@@ -20,7 +33,6 @@ const deviceStatusColumns = [
|
|
|
{label: '维护日期', prop: 'updateTm'},
|
|
|
{label: '状态', prop: 'status', width: '70'}
|
|
|
]
|
|
|
-
|
|
|
const deviceStatusData = [
|
|
|
{deviceName: '总磷分析仪', woker: '陈标', updateTm: '11-20 15:00:00', status: '正常'},
|
|
|
{deviceName: '总氮分析仪', woker: '于奇', updateTm: '11-20 15:00:00', status: '正常'},
|
|
@@ -39,7 +51,6 @@ const accessoriesData = [
|
|
|
{name: '3-16泵管', days: 65, updateTm: '11-20 15:00:00'},
|
|
|
{name: '瓶子', days: 102, updateTm: '11-20 15:00:00'}
|
|
|
]
|
|
|
-
|
|
|
const reagentColumns = [
|
|
|
{label: '试剂名称', prop: 'name'},
|
|
|
{label: '添加体积', prop: 'volume', width: '110'},
|
|
@@ -51,7 +62,6 @@ const reagentData = [
|
|
|
{name: '草酸钠溶液', volume: 3, updateTm: '11-20 15:00:00'},
|
|
|
{name: '去离子水', volume: 2, updateTm: '11-20 15:00:00'}
|
|
|
]
|
|
|
-
|
|
|
// function reloadRight3(list) {
|
|
|
// if (!list || list.length === 0) {
|
|
|
// return
|
|
@@ -243,7 +253,7 @@ function reloadRight3() {
|
|
|
|
|
|
onMounted(() => {
|
|
|
// reloadRight3([])
|
|
|
- reloadRight3()
|
|
|
+ // reloadRight3()
|
|
|
})
|
|
|
|
|
|
onUnmounted(() => {
|
|
@@ -254,37 +264,105 @@ onUnmounted(() => {
|
|
|
<template>
|
|
|
<right-frame>
|
|
|
<template #leftModule>
|
|
|
- <card01 :title="device.deviceName" style="height: 65%">
|
|
|
- <h4 style="color: #00ccff">设备简介</h4>
|
|
|
- <el-row>
|
|
|
- <el-col :span="16">
|
|
|
- <p v-for="text in device.detail.split('\n')" class="introduce-text" v-html="text"></p>
|
|
|
- </el-col>
|
|
|
- <el-col :span="8">
|
|
|
- <img v-if="device.img" :src="device.img" alt="" class="introduce-float-img"/>
|
|
|
- </el-col>
|
|
|
- </el-row>
|
|
|
- <h4 style="color: #00ccff">维护记录</h4>
|
|
|
- <p>维护日期:2024年11月20日</p>
|
|
|
- <p>维护内容:</p>
|
|
|
- <p>·清洗采样过滤头及管路,检查位置确保采样顺利。</p>
|
|
|
- <p>·检查电源线路,确保干燥和稳定。</p>
|
|
|
- <p>·校准仪器,确保测量准确性。</p>
|
|
|
- </card01>
|
|
|
- <card01 style="height: 40%" title="设备维护情况">
|
|
|
- <stripe-table :columns="deviceStatusColumns" :data="deviceStatusData"></stripe-table>
|
|
|
- </card01>
|
|
|
+ <template v-if="['rainfall', 'flow','waterLevel'].includes(deviceType)">
|
|
|
+ <card01 :title="device.deviceName" style="height: 65%">
|
|
|
+ <h4 style="color: #00ccff">设备简介</h4>
|
|
|
+ <el-row>
|
|
|
+ <el-col :span="16">
|
|
|
+ <p v-for="text in deviceDetail" class="introduce-text" v-html="text"></p>
|
|
|
+ </el-col>
|
|
|
+ <el-col :span="8">
|
|
|
+ <img v-if="device.img" :src="device.img" alt="" class="introduce-float-img"/>
|
|
|
+ </el-col>
|
|
|
+ </el-row>
|
|
|
+ <h4 style="color: #00ccff">维护记录</h4>
|
|
|
+ <p>维护日期:2024年11月20日</p>
|
|
|
+ <p>维护内容:</p>
|
|
|
+ <p>·清洗采样过滤头及管路,检查位置确保采样顺利。</p>
|
|
|
+ <p>·检查电源线路,确保干燥和稳定。</p>
|
|
|
+ <p>·校准仪器,确保测量准确性。</p>
|
|
|
+ </card01>
|
|
|
+ <card01 style="height: 40%" title="设备维护情况">
|
|
|
+ <stripe-table :columns="deviceStatusColumns" :data="deviceStatusData"></stripe-table>
|
|
|
+ </card01>
|
|
|
+ </template>
|
|
|
+ <template v-if="deviceType === 'waterQuality'">
|
|
|
+ <card01 :title="device.deviceName" style="height: 65%">
|
|
|
+ <h4 style="color: #00ccff">设备简介</h4>
|
|
|
+ <el-row>
|
|
|
+ <el-col :span="16">
|
|
|
+ <p v-for="text in deviceDetail" class="introduce-text" v-html="text"></p>
|
|
|
+ </el-col>
|
|
|
+ <el-col :span="8">
|
|
|
+ <img v-if="device.img" :src="device.img" alt="" class="introduce-float-img"/>
|
|
|
+ </el-col>
|
|
|
+ </el-row>
|
|
|
+ <h4 style="color: #00ccff">维护记录</h4>
|
|
|
+ <p>维护日期:2024年11月20日</p>
|
|
|
+ <p>维护内容:</p>
|
|
|
+ <p>·清洗采样过滤头及管路,检查位置确保采样顺利。</p>
|
|
|
+ <p>·检查电源线路,确保干燥和稳定。</p>
|
|
|
+ <p>·校准仪器,确保测量准确性。</p>
|
|
|
+ </card01>
|
|
|
+ <card01 style="height: 40%" title="水质监测">
|
|
|
+ <water-quality-analysis></water-quality-analysis>
|
|
|
+ </card01>
|
|
|
+ </template>
|
|
|
</template>
|
|
|
<template #rightModule>
|
|
|
- <card01 style="height: 33%" title="配件运维信息">
|
|
|
- <stripe-table :columns="accessoriesColumns" :data="accessoriesData"></stripe-table>
|
|
|
- </card01>
|
|
|
- <card01 style="height: 33%" title="试剂运维信息">
|
|
|
- <stripe-table :columns="reagentColumns" :data="reagentData"></stripe-table>
|
|
|
- </card01>
|
|
|
- <card01 style="height: 33%" title="耗材余量监控">
|
|
|
- <chart ref="right3Ref"></chart>
|
|
|
- </card01>
|
|
|
+ <template v-if="deviceType=== 'default'">
|
|
|
+ <card01 :title="device.deviceName" style="height: 65%">
|
|
|
+ <h4 style="color: #00ccff">设备简介</h4>
|
|
|
+ <el-row>
|
|
|
+ <el-col :span="16">
|
|
|
+ <p v-for="text in deviceDetail" class="introduce-text" v-html="text"></p>
|
|
|
+ </el-col>
|
|
|
+ <el-col :span="8">
|
|
|
+ <img v-if="device.img" :src="device.img" alt="" class="introduce-float-img"/>
|
|
|
+ </el-col>
|
|
|
+ </el-row>
|
|
|
+ <h4 style="color: #00ccff">维护记录</h4>
|
|
|
+ <p>维护日期:2024年11月20日</p>
|
|
|
+ <p>维护内容:</p>
|
|
|
+ <p>·清洗采样过滤头及管路,检查位置确保采样顺利。</p>
|
|
|
+ <p>·检查电源线路,确保干燥和稳定。</p>
|
|
|
+ <p>·校准仪器,确保测量准确性。</p>
|
|
|
+ </card01>
|
|
|
+ <card01 style="height: 40%" title="设备维护情况">
|
|
|
+ <stripe-table :columns="deviceStatusColumns" :data="deviceStatusData"></stripe-table>
|
|
|
+ </card01>
|
|
|
+ </template>
|
|
|
+ <template v-if="deviceType=== 'video'">
|
|
|
+ <card01 :title="device.deviceName" style="height: 40%">
|
|
|
+ <gw-video :code="videoCode" :imageSrc="videoImageSrc"></gw-video>
|
|
|
+ </card01>
|
|
|
+ </template>
|
|
|
+ <template v-if="deviceType=== 'waterLevel'">
|
|
|
+ <card01 :title="device.deviceName" style="height: 36%">
|
|
|
+ <water-level></water-level>
|
|
|
+ </card01>
|
|
|
+ </template>
|
|
|
+ <template v-if="deviceType=== 'rainfall'">
|
|
|
+ <card01 :title="device.deviceName" style="height: 36%">
|
|
|
+ <rainfall></rainfall>
|
|
|
+ </card01>
|
|
|
+ </template>
|
|
|
+ <template v-if="deviceType=== 'flow'">
|
|
|
+ <card01 :title="device.deviceName" style="height: 36%">
|
|
|
+ <flow></flow>
|
|
|
+ </card01>
|
|
|
+ </template>
|
|
|
+ <template v-if="deviceType=== 'waterQuality'">
|
|
|
+ <card01 style="height: 33%" title="设备维护情况">
|
|
|
+ <stripe-table :columns="deviceStatusColumns" :data="deviceStatusData"></stripe-table>
|
|
|
+ </card01>
|
|
|
+ <card01 style="height: 33%" title="配件运维信息">
|
|
|
+ <stripe-table :columns="accessoriesColumns" :data="accessoriesData"></stripe-table>
|
|
|
+ </card01>
|
|
|
+ <card01 style="height: 33%" title="耗材余量监控">
|
|
|
+ <chart ref="right3Ref"></chart>
|
|
|
+ </card01>
|
|
|
+ </template>
|
|
|
</template>
|
|
|
<template #btnGroup>
|
|
|
<station-right-button-group></station-right-button-group>
|