智慧园区前端大屏
linwe
2024-11-12 8b207d4ea5a01c64f639464cebf54ea99d998d14
src/views/space/components/box/dataContent.vue
@@ -52,7 +52,7 @@
  total: 0,
}
function positionColor () {
function positionColor() {
  return (row) => {
    if (
      (row.X && row.X != 0) ||
@@ -67,7 +67,7 @@
  }
}
function positionDisabled () {
function positionDisabled() {
  return (row) => {
    if (
      (row.X && row.X != 0) ||
@@ -137,50 +137,42 @@
    })
}
// 行点击
function rowClick (row) {
  // 读取定位飞
  window.$viewer.zoomToPosition(new DC.Position(
    Number(row.lng),
    Number(row.lat),
    800,
    0,
    -80,
    0
  ), () => {
  })
let state = reactive({
  layer: {}
})
  // let layer = new DC.VectorLayer('layer')
  // window.$viewer.addLayer(layer)
  // let positions = generatePosition(row.lng, row.lat)
  // let material = new DC.PolylineDashMaterialProperty({
  //   color: DC.Color.ORANGE
  // })
  // positions.forEach(item => {
  //   let label = new DC.CustomLabel(
  //     item,
  //     row.name
  //   )
  //   label.setStyle({
  //     fillColor: DC.Color.YELLOW,
  //     font: '12px',
  //     pixelOffset: { x: 0, y: -10 }
  //   })
  //   label.setVLine({
  //     width: 2,
  //     material
  //   })
  //   layer.addOverlay(label)
  // })
// 行点击
function rowClick(row) {
  if (state.layer) {
    window.$viewer.removeLayer(state.layer)
  }
  let layer = new DC.HtmlLayer(`${row.id}`)
  state.layer = layer
  window.$viewer.addLayer(layer)
  let iconEl = `<div class="marsBlueGradientPnl">
                  <div>${row.name}</div>
                </div>`
  let divIcon = new DC.DivIcon(
    new DC.Position(row.lng, row.lat, 0),
    `<div class="public-map-popup">
                    ${iconEl}
                  </div>`
  )
  // divIcon.attrParams = row
  let incident = () => { }
  // if (item.incident) incident = item.incident
  divIcon.on(DC.MouseEventType.CLICK, incident)
  layer.addOverlay(divIcon)
  window.$viewer.flyToPosition(new DC.Position(row.lng, row.lat, 600, 0, -90, 0))
}
function generatePosition (lng, lat) {
  let list = []
  list.push(new DC.Position(lng, lat, 100))
  return list
}
// 查看详情
function goDetail (row) { }
function goDetail(row) { }
const searchBtn = (params) => {
  resetPage()
@@ -210,8 +202,7 @@
<template>
  <div class="w100 h0 flex-1 flex f-d-c">
    <global-search :options="options" @searchBtn="searchBtn" @resetBtn="resetBtn"
      ref="SeachBarCondition"></global-search>
    <global-search :options="options" @searchBtn="searchBtn" @resetBtn="resetBtn" ref="SeachBarCondition"></global-search>
    <div class="h0 flex-1 table-content" ref="TableContent">
      <el-table :data="tableData" :height="curTableHeight" style="width: 100%" v-loading="loading">