ll
liukangdong
2024-12-06 86baa8ff948d2e79588e0dd7efa16f6b8ac3b157
screen/src/views/SecurityControl.vue
@@ -659,23 +659,24 @@
    }]),
    new echarts.graphic.LinearGradient(0, 1, 0, 0, [{
      offset: 0,
      color: '#4370f2'
    }, {
      offset: 1,
      color: '#61d3f9'
    }]),
    new echarts.graphic.LinearGradient(0, 1, 0, 0, [{
      offset: 0,
      color: '#4679f6'
    }, {
      offset: 1,
      color: '#4674f6'
    }]),
    new echarts.graphic.LinearGradient(0, 1, 0, 0, [{
      offset: 0,
      color: '#4370f2'
    }, {
      offset: 1,
      color: '#61d3f9'
    }])]
  ]
  const data = []
  data.push({ name: '待访问', value: data4.value.waitVisitNum, rate: data4.value.waitVisitNum / data4.value.total })
  data.push({ name: '已登记', value: data4.value.registerVisitNum, rate: data4.value.registerVisitNum / data4.value.total })
  data.push({ name: '已离开', value: data4.value.levelNum, rate: data4.value.levelNum / data4.value.total })
  data.push({ name: '滞留', value: data4.value.retentionNum, rate: data4.value.retentionNum / data4.value.total })
  data.push({ name: '待访问', value: data4.value.waitVisitNum, rate: (data4.value.waitVisitNum / data4.value.total).toFixed(1) })
  data.push({ name: '已登记', value: data4.value.registerVisitNum, rate: (data4.value.registerVisitNum / data4.value.total).toFixed(1) })
  data.push({ name: '已离开', value: data4.value.levelNum, rate: (data4.value.levelNum / data4.value.total).toFixed(1) })
  data.push({ name: '滞留', value: data4.value.retentionNum, rate: (data4.value.retentionNum / data4.value.total).toFixed(1) })
  const option = {
    color: colors,
    tooltip: {
@@ -739,12 +740,16 @@
        label: {
          show: true,
          position: 'outside',
          formatter: '{a|{b}}  {a|{d}%}',
          rich: {
            a: {
              color: '#869CC9',
              fontSize: 13
          formatter: (params) => {
            const index = params.dataIndex;
            return `{color${index}|${params.data.name} ${params.data.rate}%}`
            // return `<div>${params.data.name}</div>`
            },
          rich: {
            color0: { color: 'orange', fontSize: 14 },
            color1: { color: '#869CC9', fontSize: 13 },
            color2: { color: '#869CC9', fontSize: 13 },
            color3: { color: '#869CC9', fontSize: 13 }
          }
        },
        labelLine: {
@@ -823,7 +828,6 @@
      dataListT2.value = temp
    }
    initEchart2()
    loopFn2()
  })
}
@@ -851,36 +855,8 @@
      return i
    })
    initEchart3()
    loopFn3()
  })
  // getVisitRetentionData().then(res => {
  //   const result = res.data || []
  //   dataList3.value = result.map(i => {
  //     if (i.timeOutMinute) {
  //       i.timeOutMinute = Math.abs(i.timeOutMinute)
  //     }
  //     if (i.timeOutMinute > 60 * 24) {
  //       i.timeOutMinuteT = dayjs.duration(i.timeOutMinute * 60 * 1000).format('D天H时m分')
  //     } else if (i.timeOutMinute > 60) {
  //       i.timeOutMinuteT = dayjs.duration(i.timeOutMinute * 60 * 1000).format('H时m分')
  //     } else {
  //       i.timeOutMinuteT = item.timeOutMinuteT + '分'
  //     }
  //     return i
  //   })
  //   loopFn3()
  // })
}
// const data4 = ref({})
// const getData4 = () => {
//   afgetVisitData().then(res => {
//     const result = res.data || {}
//     data4.value = result
//     initEchart3()
//   })
// }
const warningTab = ref('0')
const warningNum = ref(0)
@@ -898,7 +874,6 @@
    warningList.value.forEach((item, i) => {
      // console.log(i);
      if (i == 0 || i % 2 == 0) {
        console.log(i)
        temp.push(item)
      } else {
        temp[temp.length - 1].addr0 = item.addr
@@ -910,7 +885,6 @@
    })
    warningList.value = temp
    // console.log('temp', warningList.value);
    loopFn1()
  })
}
const tasClick = (val) => {
@@ -1005,6 +979,12 @@
  setInterval(() => {
    getData5()
  }, 1000 * 60 * 60)
  setTimeout(() => {
    loopFn1()
    loopFn2()
    loopFn3()
  }, 12000)
})
@@ -1286,7 +1266,7 @@
          .menu_wrap {
            margin-top: 15px;
            max-height: 440px;
            overflow: hidden;
            overflow: auto;
            .menu {
              .menu_name {