riku
2025-03-05 7b52f30bc471b7f433eea950f77ecb74a87d867c
src/components/scene/SceneSearch.vue
@@ -15,7 +15,7 @@
    width="400px"
  >
    <template #default>
      <div v-show="nextPage">
      <div v-show="!nextPage">
        <div>
          <el-text size="small" type="warning">
            共计{{ sceneStore.sceneList.length }}个点位,其中{{
@@ -82,13 +82,41 @@
          <!-- </el-col> -->
        </el-row>
      </div>
      <div v-show="!nextPage">
        <el-button
          @click="nextPage = false"
          type="primary"
          class="el-button-custom p-events-auto"
          >返回</el-button
        >
      <div v-show="nextPage">
        <DescriptionsList v-if="selectedScene" title="场景详情">
          <template #extra>
            <el-button
              @click="nextPage = false"
              icon="back"
              type="primary"
              size="small"
              class="el-button-custom p-events-auto"
              >返回</el-button
            >
          </template>
          <DescriptionsListItem label="名称" :content="selectedScene.name" />
          <DescriptionsListItem label="类型" :content="selectedScene.type" />
          <DescriptionsListItem
            label="区县"
            :content="selectedScene.districtName"
          />
          <DescriptionsListItem
            label="地址"
            :content="selectedScene.location"
          />
          <DescriptionsListItem
            label="经纬度"
            :content="selectedScene.longitude + ', ' + selectedScene.latitude"
          />
          <DescriptionsListItem
            label="靠近站点"
            :content="selectedScene.closestDevice.name"
          />
          <DescriptionsListItem
            label="相距站点"
            :content="selectedScene.closestDevice.dis + '米'"
          />
        </DescriptionsList>
      </div>
    </template>
    <template #footer>
@@ -157,7 +185,8 @@
      dialogVisible: false,
      onConfirm: undefined,
      showSceneTypes: [],
      nextPage: false
      nextPage: false,
      selectedScene: undefined
    };
  },
  computed: {
@@ -218,7 +247,7 @@
          if (!s.closestDevice || dis < s.closestDevice.dis) {
            s.closestDevice = {
              name: d.name,
              dis: dis
              dis: Math.round(dis)
            };
          }
        });
@@ -254,6 +283,7 @@
    // },
    showSceneList(nV, oV) {
      if (nV != oV) {
        this.nextPage = false;
        this.dialogVisible = true;
        this.drawMarks(nV);
      }
@@ -283,6 +313,7 @@
    },
    handleRowClick(row, col, event) {
      this.nextPage = true;
      this.selectedScene = row;
      MapUtil.setCenter([row.longitude, row.latitude], true);
    },
    filterHandler(value, row, column) {