Newer
Older
laserPTZFrontV2.0 / src / layouts / components / SocketModal / index.vue
bairujie on 7 Jun 2023 2 KB "相似度添加"
<script lang="ts" setup name="SocketModal">
import { defineExpose, defineProps, ref } from 'vue'
defineProps({
  data: {
    type: Object,
    default: () => {
      return {}
    },
  },
})
const dialogTableVisible = ref(false)
const number = ref(-1)
function initDialog() {
  number.value = -1
  dialogTableVisible.value = true

  const timer = setInterval(() => {
    console.log(number.value)
    number.value++

    if (number.value >= 3) {
      clearInterval(timer)
      closeDialog()
    }
  }, 1000)
}

function closeDialog() {
  dialogTableVisible.value = false
  number.value = -1
}

defineExpose({
  initDialog,
  closeDialog,
})
</script>

<template>
  <el-dialog
    v-if="dialogTableVisible"
    v-model="dialogTableVisible" style="z-index: 2222;" width="600px" top="5vh" title="告警消息提醒"
    :close-on-click-modal="false" append-to-body
  >
    <el-descriptions title="监控信息" border :column="2" style="margin-bottom: 20px;">
      <el-descriptions-item label="监控点名称">
        {{ data.monitorName }}
      </el-descriptions-item>
      <el-descriptions-item label="告警类型">
        {{ data.deviceStatusName }}
      </el-descriptions-item>
      <el-descriptions-item label="甲烷浓度">
        {{ data.concentration }}
      </el-descriptions-item>
      <!-- <el-descriptions-item label="水平角度">
        {{ data.alarmDirection }}
      </el-descriptions-item>
      <el-descriptions-item label="垂直角度">
        {{ data.alarmPitch }}
      </el-descriptions-item> -->
      <el-descriptions-item label="告警时间">
        {{ data.alarmTime }}
      </el-descriptions-item>
      <el-descriptions-item label="相似度">
        {{ data.alarmValue }}
      </el-descriptions-item>
    </el-descriptions>
    <el-image class="image-wrap" :src="data.url">
      <template #error>
        <div class="image-slot">
          <el-icon><icon-picture /></el-icon>
        </div>
      </template>
    </el-image>
  </el-dialog>
</template>

<style scoped>
.image-wrap {
  width: 100%;
  height: 400px;
}
</style>