黄何裕
2024-07-30 1995e710dcf70e635c4edaa8173f8b66cd67d499
src/views/system/data-manage/index.vue
@@ -1,55 +1,414 @@
<template>
  <div>
    <div class="container">
        <el-row type="flex" justify="center">
            <el-col :span="24">
                <h3 style="color: rgb(104,104,103);padding-top: 20px;padding-bottom: 20px;">人脸数据异常检测</h3>
            </el-col>
        </el-row>
        <el-row type="flex" justify="center">
            <el-col :span="6" v-for="(item, index) in faceData" :key="index">
                <el-link @click="handleDetail(item)">
                    <el-card style="width:150px;height: 150px;text-align: center;">
                        <i style="font-size: 40px;padding: 15px;" :class="item.icon"></i>
                        <div>{{ item.name }}</div>
                    </el-card>
                </el-link>
            </el-col>
        </el-row>
      <el-row type="flex" justify="center">
        <el-col :span="24">
          <h3
            style="
              color: rgb(104, 104, 103);
              padding-top: 20px;
              padding-bottom: 20px;
            "
          >
            视频运行监控
          </h3>
        </el-col>
      </el-row>
      <el-row :gutter="20">
        <el-col
          :xl="4"
          :lg="4"
          :md="6"
          :sm="6"
          :xs="12"
          v-for="(item, index) in videoData"
          :key="index"
          :style="item.name == '' ? 'display:none' : ''"
          class="col-margin"
        >
          <el-link @click="handleDetail(item, index)" style="width: 100%">
            <el-card
              style="min-width: 150px;width:100%; height: 150px; text-align: center"
            >
              <i style="font-size: 40px; padding: 15px" :class="item.icon"></i>
              <div>{{ item.name }}</div>
            </el-card>
          </el-link>
        </el-col>
      </el-row>
    </div>
    <div class="container">
      <el-row type="flex" justify="center">
        <el-col :span="24">
          <h3
            style="
              color: rgb(104, 104, 103);
              padding-top: 20px;
              padding-bottom: 20px;
            "
          >
            车辆运行监控
          </h3>
        </el-col>
      </el-row>
      <el-row :gutter="20">
        <el-col
          :xl="4"
          :lg="4"
          :md="6"
          :sm="6"
          :xs="12"
          v-for="(item, index) in carData"
          :key="index"
          :style="item.name == '' ? 'display:none' : ''"
          class="col-margin"
        >
          <el-link @click="handleDetail(item, index)" style="width: 100%">
            <el-card style="min-width: 150px;width:100%; height: 150px; text-align: center">
              <i style="font-size: 40px; padding: 15px" :class="item.icon"></i>
              <div>{{ item.name }}</div>
            </el-card>
          </el-link>
        </el-col>
      </el-row>
    </div>
    <div class="container">
      <el-row type="flex" justify="center">
        <el-col :span="24">
          <h3
            style="
              color: rgb(104, 104, 103);
              padding-top: 20px;
              padding-bottom: 20px;
            "
          >
            人脸运行监控
          </h3>
        </el-col>
      </el-row>
      <el-row :gutter="20">
        <el-col
          :xl="4"
          :lg="4"
          :md="6"
          :sm="6"
          :xs="12"
          v-for="(item, index) in faceData"
          :key="index"
          :style="item.name == '' ? 'display:none' : ''"
          class="col-margin"
        >
          <el-link @click="handleDetail(item, index)" style="width: 100%">
            <el-card style="min-width: 150px;width:100%; height: 150px; text-align: center">
              <i style="font-size: 40px; padding: 15px" :class="item.icon"></i>
              <div>{{ item.name }}</div>
            </el-card>
          </el-link>
        </el-col>
      </el-row>
    </div>
    <div class="container">
      <el-row type="flex" justify="center">
        <el-col :span="24">
          <h3
            style="
              color: rgb(104, 104, 103);
              padding-top: 20px;
              padding-bottom: 20px;
            "
          >
            资产管理
          </h3>
        </el-col>
      </el-row>
      <el-row :gutter="20">
        <el-col
          :xl="4"
          :lg="4"
          :md="6"
          :sm="6"
          :xs="12"
          v-for="(item, index) in equipment"
          :key="index"
          :style="item.name == '' ? 'display:none' : ''"
          class="col-margin"
        >
          <el-link @click="handleDetail(item, index)" style="width: 100%">
            <el-card style="min-width: 150px;width:100%; height: 150px; text-align: center">
              <i style="font-size: 40px; padding: 15px" :class="item.icon"></i>
              <div>{{ item.name }}</div>
            </el-card>
          </el-link>
        </el-col>
      </el-row>
      <br />
    </div>
    <br /><br /><br /><br />
  </div>
</template>
<script>
export default {
    data() {
        return {
            faceData: [
                { name: '人脸识别时钟准确性', icon: 'el-icon-alarm-clock', description: '描述信息', routerUrl: 'vehicle-data-monitor' },
                { name: '人脸抓拍数据监测', icon: 'el-icon-user', description: '描述信息', routerUrl: '/face/faceClock' },
                { name: '人脸数据趋势分析', icon: 'el-icon-data-line', description: '描述信息', routerUrl: '/face/faceClock' },
                { name: '人脸抓拍设备活跃性', icon: 'el-icon-timer', description: '描述信息', routerUrl: '/face/faceClock' },
                { name: '人脸抓拍上传及时性', icon: 'el-icon-money', description: '描述信息', routerUrl: '/face/faceClock' },
                { name: '人脸抓拍大图可用性', icon: 'el-icon-data-analysis', description: '描述信息', routerUrl: '/face/faceClock' },
            ]
        }
  data() {
    return {
      videoData: [
        {
          name: "平台在线",
          icon: "el-icon-connection",
          description: "描述信息",
          type: "1",
        },
        {
          name: "一机一档",
          icon: "el-icon-folder",
          description: "描述信息",
          type: "1",
        },
        {
          name: "点位在线",
          icon: "el-icon-search",
          description: "描述信息",
          type: "1",
        },
        {
          name: "录像可用",
          icon: "el-icon-turn-off",
          description: "描述信息",
          type: "1",
        },
        {
          name: "视频标注",
          icon: "el-icon-place",
          description: "描述信息",
          type: "1",
        },
        {
          name: "重点指挥图像在线率",
          icon: "el-icon-film",
          description: "描述信息",
          type: "1",
        },
        {
          name: "视频图像资源安全管理",
          icon: "el-icon-house",
          description: "描述信息",
          type: "1",
        },
        {
          name: "视频图像质量",
          icon: "el-icon-set-up",
          description: "描述信息",
          type: "1",
        },
        {
          name: "",
          icon: "el-icon-connection",
          description: "描述信息",
          type: "1",
        },
        {
          name: "",
          icon: "el-icon-connection",
          description: "描述信息",
          type: "1",
        },
        {
          name: "",
          icon: "el-icon-connection",
          description: "描述信息",
          type: "1",
        },
        {
          name: "",
          icon: "el-icon-connection",
          description: "描述信息",
          type: "1",
        },
      ],
      carData: [
        {
          name: "视图库对接稳定性",
          icon: "el-icon-truck",
          description: "描述信息",
          type: "2",
        },
        {
          name: "点位在线率",
          icon: "el-icon-truck",
          description: "描述信息",
          type: "2",
        },
        {
          name: "联网卡口设备目录一致率",
          icon: "el-icon-truck",
          description: "描述信息",
          type: "2",
        },
        {
          name: "车辆卡口信息采集准确率",
          icon: "el-icon-truck",
          description: "描述信息",
          type: "2",
        },
        {
          name: "车辆卡口设备抓拍数据完整性",
          icon: "el-icon-truck",
          description: "描述信息",
          type: "2",
        },
        {
          name: "车辆卡口设备抓拍数据准确性",
          icon: "el-icon-truck",
          description: "描述信息",
          type: "2",
        },
        {
          name: "车辆卡口设备时钟准确性",
          icon: "el-icon-truck",
          description: "描述信息",
          type: "2",
        },
        {
          name: "车辆卡口设备抓拍数据上传及时性",
          icon: "el-icon-truck",
          description: "描述信息",
          type: "2",
        },
        {
          name: "车辆卡口设备url可用性",
          icon: "el-icon-truck",
          description: "描述信息",
          type: "2",
        },
        {
          name: "车辆卡口设备抓拍数据大图可用性",
          icon: "el-icon-truck",
          description: "描述信息",
          type: "2",
        },
        { name: "", icon: "el-icon-truck", description: "描述信息", type: "2" },
        { name: "", icon: "el-icon-truck", description: "描述信息", type: "2" },
      ],
      faceData: [
        {
          name: "视图库对接稳定性",
          icon: "el-icon-alarm-clock",
          description: "描述信息",
          type: "3",
        },
        {
          name: "点位在线率",
          icon: "el-icon-user",
          description: "描述信息",
          type: "3",
        },
        {
          name: "目录一致率",
          icon: "el-icon-data-line",
          description: "描述信息",
          type: "3",
        },
        {
          name: "人脸卡口信息采集准确率",
          icon: "el-icon-timer",
          description: "描述信息",
          type: "3",
        },
        {
          name: "设备抓拍图片合格性",
          icon: "el-icon-money",
          description: "描述信息",
          type: "3",
        },
        {
          name: "设备抓拍图片时钟准确性",
          icon: "el-icon-data-analysis",
          description: "描述信息",
          type: "3",
        },
        {
          name: "抓拍人脸数据上传及时性",
          icon: "el-icon-thumb",
          description: "描述信息",
          type: "3",
        },
        {
          name: "人脸卡口设备抓拍数据大图可用性",
          icon: "el-icon-pie-chart",
          description: "描述信息",
          type: "3",
        },
        {
          name: "",
          icon: "el-icon-data-line",
          description: "描述信息",
          type: "3",
        },
        { name: "", icon: "el-icon-timer", description: "描述信息", type: "3" },
        { name: "", icon: "el-icon-money", description: "描述信息", type: "3" },
        {
          name: "",
          icon: "el-icon-data-analysis",
          description: "描述信息",
          type: "3",
        },
      ],
      equipment: [
        {
          name: "资产管理",
          icon: "el-icon-wallet",
          description: "描述信息",
          type: "4",
        },
        {
          name: "",
          icon: "el-icon-pie-chart",
          description: "描述信息",
          type: "4",
        },
        {
          name: "",
          icon: "el-icon-data-line",
          description: "描述信息",
          type: "4",
        },
        { name: "", icon: "el-icon-timer", description: "描述信息", type: "4" },
        { name: "", icon: "el-icon-money", description: "描述信息", type: "4" },
        {
          name: "",
          icon: "el-icon-data-analysis",
          description: "描述信息",
          type: "4",
        },
      ],
    };
  },
  methods: {
    handleDetail(item, index) {
      this.$router.push({
        path: `/data-manage/data-detail/index/1/1?type=${item.type}&index=${index}`,
      });
    },
    methods: {
        handleDetail(item) {
            this.$router.push({
                name: item.routerUrl,
                params: {
                    id: item.id
                }
            })
        }
    }
}
  },
};
</script>
<style scoped>
.container {
    margin-left: 100px;
    margin-right: 100px;
    margin-top: 10px;
  width: 90%;
  margin: 10px auto;
}
</style>
.col-margin {
  margin-bottom: 20px;
}
::v-deep .el-link--inner{
  width: 100% !important;
}
</style>