无人机管理后台前端(已迁走)
张含笑
2025-09-01 2ca94de8ede18ac07ccfd8dec7b6f6a707adde9b
src/views/device/airport.vue
@@ -51,8 +51,8 @@
        </span>
      </template>
      <template #mode_code="{ row }">
        <span class="text" v-if="row.domain == 3" :style="row.mode_code != '-1' ? 'color: #00ee8b' : 'color: #de5e5e'">
          {{ getDockModeText(row.mode_code) }}
        <span class="text" v-if="row.domain == 3 || row.domain == 0" :style="row.mode_code != '-1' ? 'color: #00ee8b' : 'color: #de5e5e'">
          {{ getModelText(row.mode_code) }}
        </span>
      </template>
      <template #menu="scope">
@@ -689,6 +689,7 @@
            editDisplay: false,
            viewDisplay: false,
            labelWidth: 100,
            hide: true,
            // searchSpan: 4,
            // search: true,
            slot: true,
@@ -723,9 +724,11 @@
            search: true,
            type: 'select',
            dicData: [
              { label: '在线', value: 4 },
              { label: '离线', value: 0 },
              { label: '在线', value: 0 },
              { label: '离线', value: -1 },
              { label: '远程调试', value: 2 },
              { label: '现场调试', value: 1 },
              { label: '固件升级中', value: 3 }
            ],
            slot: true,
            width: 110,
@@ -783,14 +786,24 @@
    })
  },
  mounted() {
    document.addEventListener("click", this.handleClickOutside);
  },
  beforeDestroy() {
    document.removeEventListener("click", this.handleClickOutside);
  },
  methods: {
    getDockModeText (value) {
      return EDockModeText[value] || ''
    },
    getModelText (value) {
      let txt = '离线'
      if (value === 0 || value === 4) {
        txt = '在线'
      } else if(value === 1) {
        txt = '现场调试'
      } else if(value === 2) {
        txt = '远程调试'
      } else if(value === 3) {
        txt = '固件升级中'
      }
      return txt
    },
    // 关闭所有的webscoket
    closeAllWebsoket () {
@@ -887,14 +900,6 @@
            })
        })
        .catch(() => { })
    },
    handleClickOutside(event) {
      // 检查点击是否发生在 .more-container 内
      const moreContainer = document.querySelector('.more-container');
      if (moreContainer && moreContainer.contains(event.target)) {
        return; // 如果点击在容器内,什么都不做
      }
    },
    // 打开存储对象配置页面