fuliqi
2024-09-24 b3be6406c8105376eef209af3bd6635cb95fa81d
src/views/system/monitor/car/index.vue
@@ -1,13 +1,16 @@
<template>
  <div class="app-container">
    <div
      style="display: flex;flex-direction: row;min-width: 158px;max-width: 158px;margin-bottom: 5px;border-radius: 1px; user-select: none"
      style="display: flex;flex-direction: row;min-width: 300px;max-width: 300px;margin-bottom: 5px;border-radius: 1px; user-select: none"
    >
      <div @click="clickTab(null)" class="tab"
           :class="{tabActive: null == queryParams.provinceTag, tabInactive: null != queryParams.provinceTag}">全部
           :class="{tabActive: !queryParams.provinceTag && !queryParams.deptTag, tabInactive: queryParams.provinceTag || queryParams.deptTag}">全部
      </div>
      <div @click="clickTab(0)" class="tab"
           :class="{tabActive: 0 === queryParams.provinceTag, tabInactive: 0 !== queryParams.provinceTag}">省厅考核
           :class="{tabActive: queryParams.provinceTag, tabInactive: !queryParams.provinceTag}">省厅考核
      </div>
      <div @click="clickTab(1)" class="tab"
           :class="{tabActive: queryParams.deptTag, tabInactive: !queryParams.deptTag}">公安部考核
      </div>
    </div>
    <el-card class="box-card" >
@@ -93,7 +96,13 @@
      <el-table-column label="ip" align="center" prop="ip" width="180"/>
      <el-table-column label="标签" align="center" width="180" v-if="columns[0].visible">
        <template slot-scope="scope">
          <div>{{ scope.row.provinceTag == 0 ? "省厅" : "市局" }}</div>
          <div>
            {{
              (
                (scope.row.provinceTag ? '省厅、' : '') +
                (scope.row.deptTag ? '公安部、' : '')).replace(/、$/, '')
            }}
          </div>
        </template>
      </el-table-column>
      <el-table-column label="区域" align="center" prop="area" width="180" v-if="columns[1].visible" />
@@ -125,7 +134,8 @@
      <el-table-column label="当日抓拍量" align="center" prop="snapCount" width="180" v-if="columns[9].visible"/>
      <el-table-column label="时钟准确率" align="center" prop="clockPercent" width="180" v-if="columns[10].visible"/>
      <el-table-column label="上传及时率" align="center" prop="uploadPercent" width="180" v-if="columns[11].visible"/>
      <el-table-column label="主要属性一致率" align="center" prop="importantConPercent" width="180" v-if="columns[12].visible"/>
      <el-table-column label="主要属性一致率" align="center" prop="importantConPercent" width="180"
                       v-if="columns[12].visible"/>
      <el-table-column label="全量属性一致率" align="center" prop="majorConPercent" width="180" v-if="columns[13].visible"/>
      <el-table-column label="大图可用率" align="center" prop="bigUsefulPercent" width="180" v-if="columns[14].visible"/>
      <el-table-column label="url可用率" align="center" prop="urlPercent" width="180" v-if="columns[15].visible"/>
@@ -136,7 +146,8 @@
              type="text"
              icon="el-icon-view"
              @click="handleView(scope.row,scope.index)"
            >详细</el-button>
          >详细
          </el-button>
          </template>
      </el-table-column>
    </el-table>
@@ -156,7 +167,12 @@
          <el-form-item label="设备名称:">{{ form.name }}</el-form-item>
          <el-col :span="12">
            <el-form-item label="设备编码:">{{ form.serialNumber }}</el-form-item>
            <el-form-item label="标签:">{{ form.provinceTag == 0 ? '省厅' : '市局' }}</el-form-item>
            <el-form-item label="标签:">
              {{
                ((form.provinceTag ? '省厅、' : '') +
                  (form.deptTag ? '公安部、' : '')).replace(/、$/, '')
              }}
            </el-form-item>
            <el-form-item label="设备状态:">
              <div v-if="form.onState === 0">离线</div>
              <div v-else-if="form.onState === 1">在线</div>
@@ -218,6 +234,7 @@
<script>
import { videoCount, listMonitor, getMonitor, delMonitor, addMonitor, updateMonitor } from "@/api/platform/monitor";
import { listDept } from "@/api/system/dept";
export default {
  name: "Monitor",
  dicts: ['sys_normal_disable','platform_yes_no','camera_state'],
@@ -310,7 +327,16 @@
  },
  methods: {
    clickTab(active) {
      this.queryParams.provinceTag = active
      if (active === 0) {
        this.queryParams.provinceTag = true
        this.queryParams.deptTag =null
      } else if (active === 1) {
        this.queryParams.provinceTag = null
        this.queryParams.deptTag = true
      }else {
        this.queryParams.provinceTag = null
        this.queryParams.deptTag = null
      }
      this.getList()
      this.getVideoCount()
    },
@@ -415,7 +441,8 @@
      }).then(() => {
        this.getList();
        this.$modal.msgSuccess("删除成功");
      }).catch(() => {});
      }).catch(() => {
      });
    },
    /** 导出按钮操作 */
    handleExport() {
@@ -454,13 +481,13 @@
}
.box-card {
  background-color: #ffffff;
  width: 100%;
  margin-bottom: 20px;
  height: 120px
}
.icon-container {
  display: flex;
  justify-content: center;
@@ -470,6 +497,7 @@
  height: 80px;
  margin-left: 5%;
}
.el-icon-truck {
  font-size: 50px;
  color: #FFFFFF;