From 1113ced19c32c1b9b65571c48491d9435dbaf085 Mon Sep 17 00:00:00 2001
From: wujingjing <gersonwu@qq.com>
Date: 星期日, 19 一月 2025 12:16:49 +0800
Subject: [PATCH] 图层控制

---
 src/components/chat/chatComponents/summaryCom/components/recordSetTable/map/LayerControl.vue |   22 +++++++++++++---------
 1 files changed, 13 insertions(+), 9 deletions(-)

diff --git a/src/components/chat/chatComponents/summaryCom/components/recordSetTable/map/LayerControl.vue b/src/components/chat/chatComponents/summaryCom/components/recordSetTable/map/LayerControl.vue
index 45d3017..5e88d05 100644
--- a/src/components/chat/chatComponents/summaryCom/components/recordSetTable/map/LayerControl.vue
+++ b/src/components/chat/chatComponents/summaryCom/components/recordSetTable/map/LayerControl.vue
@@ -23,16 +23,16 @@
 				</div> -->
 
 				<el-tabs v-model="activeTab">
-					<el-tab-pane label="搴曞浘" name="components"
+					<el-tab-pane label="鍥惧眰" name="components"
 						><div class="flex flex-col gap-2">
 							<el-radio-group v-model="activeSourceType" class="flex flex-col gap-2" @change="changeSourceType">
-								<el-radio class="w-full mr-0" v-for="item in Object.keys(gaoDeSourceTypeMap)" :key="item" :label="parseInt(item)">
+								<el-radio class="w-full mr-0" v-for="item in layerList" :key="item" :label="item">
 									<span>{{ gaoDeSourceTypeMap[item] }}</span>
 								</el-radio>
 							</el-radio-group>
 						</div></el-tab-pane
 					>
-					<el-tab-pane label="瑕嗙洊灞�" name="overlays">
+					<el-tab-pane label="瑕嗙洊鐗�" name="overlays">
 						<el-tree
 							class="w-full"
 							:data="treeData"
@@ -76,16 +76,15 @@
 <script setup lang="ts">
 import { Close } from '@element-plus/icons-vue';
 import { ElTree } from 'element-plus';
-import type Overlay from 'ol/Overlay';
 import { onMounted, ref, watch } from 'vue';
 import { useDrag } from '/@/hooks/useDrag';
-import type { GaoDeSourceType, OLMap } from '/@/model/map/OLMap';
-import { gaoDeSourceTypeMap } from '/@/model/map/OLMap';
+import type { OLMap } from '/@/model/map/OLMap';
+import { GaoDeSourceType, gaoDeSourceTypeMap, OverlayType } from '/@/model/map/OLMap';
 import { sleep } from '/@/utils/util';
 const searchText = ref('');
 const activeTab = ref('components');
 const treeRef = ref();
-
+const layerList = [GaoDeSourceType.Vector, GaoDeSourceType.Satellite, GaoDeSourceType.SatelliteRoad];
 const props = defineProps<{
 	olMap: OLMap;
 }>();
@@ -110,7 +109,7 @@
 	{
 		id: ROOT_OVERLAY_TYPE.Marker,
 		label: '璁惧',
-		checked: props.olMap.overlayIsVisible.value,
+		checked: props.olMap.markerIsVisible.value,
 	},
 ]);
 const initTreeChecked = () => {
@@ -124,7 +123,12 @@
 const handleNodeClick = (data: any, node: any) => {
 	if (data.id === ROOT_OVERLAY_TYPE.Marker) {
 		const overlays = props.olMap.map.getOverlays().getArray();
-		props.olMap.adjustViewToOverlays(overlays);
+
+		const filteredOverlays = overlays.filter((overlay) => {
+			const type = overlay.get('type');
+			return type === OverlayType.Marker;
+		});
+		props.olMap.adjustViewToOverlays(filteredOverlays);
 	}
 };
 

--
Gitblit v1.9.3