From 23a0802841eb14b2c007f6f4b495194d2d920750 Mon Sep 17 00:00:00 2001
From: wujingjing <gersonwu@qq.com>
Date: 星期一, 10 二月 2025 15:08:34 +0800
Subject: [PATCH] 界面调整

---
 /dev/null                                                                                               |   84 ---------------------
 src/components/chat/chatComponents/summaryCom/components/recordSetTable/map/types.ts                    |    2 
 src/components/chat/chatComponents/summaryCom/components/recordSetTable/map/panelTool/LayerControl.vue  |   83 ++++++++++++++------
 src/components/chat/chatComponents/summaryCom/components/recordSetTable/map/panelTool/PropertyPanel.vue |   21 +++--
 4 files changed, 70 insertions(+), 120 deletions(-)

diff --git a/src/components/chat/chatComponents/summaryCom/components/recordSetTable/map/panelTool/LayerControl.vue b/src/components/chat/chatComponents/summaryCom/components/recordSetTable/map/panelTool/LayerControl.vue
index 158a571..c89a8a8 100644
--- a/src/components/chat/chatComponents/summaryCom/components/recordSetTable/map/panelTool/LayerControl.vue
+++ b/src/components/chat/chatComponents/summaryCom/components/recordSetTable/map/panelTool/LayerControl.vue
@@ -4,45 +4,79 @@
 			<div class="header flex-items-center pb-1.5" style="border-bottom: 1px solid black">
 				<div class="flex-items-center">
 					<span class="ywifont ywicon-guanbi cursor-pointer mr-1.5" @click="closeClick"></span>
-					<span class="text-lg font-bold">鍥惧眰</span>
+					<span class="text-lg font-bold">鍥惧眰鍙婅儗鏅湴鍥�</span>
 				</div>
 			</div>
 		</div>
 		<div class="content rounded-lg flex-auto overflow-y-auto">
-			<el-tree
-				class="w-full"
-				:data="layerInfo"
-				:props="defaultProps"
-				show-checkbox
-				node-key="id"
-				default-expand-all
-				ref="checkTreeRef"
-				@check="handleCheck"
-				@node-click="handleNodeClick"
-			>
-				<template #default="{ node, data }">
-					<span>{{ node.label }}</span>
-				</template>
-			</el-tree>
+			<div class="theme-item">
+				<div class="theme-item-title h-fit flex-items-center gap-2 mb-1">
+					<div class="w-1 h-4 bg-[#1677ff]"></div>
+					<span class="font-bold">鍥惧眰</span>
+				</div>
+				<div>
+					<el-tree
+						class="w-full"
+						:data="layerInfo"
+						:props="defaultProps"
+						show-checkbox
+						node-key="id"
+						default-expand-all
+						ref="checkTreeRef"
+						@check="handleCheck"
+						@node-click="handleNodeClick"
+					>
+						<template #default="{ node, data }">
+							<span>{{ node.label }}</span>
+						</template>
+					</el-tree>
+				</div>
+			</div>
+
+			<div class="theme-item">
+				<div class="theme-item-title h-fit flex-items-center gap-2 mb-1">
+					<div class="w-1 h-4 bg-[#1677ff]"></div>
+					<span class="font-bold">鑳屾櫙鍦板浘</span>
+				</div>
+				<div>
+					<el-radio-group v-model="activeSourceType" class="w-full" @change="changeSourceType">
+						<div class="flex w-full">
+							<el-radio :label="GaoDeSourceType.Vector" class="flex-1">{{ gaoDeSourceTypeMap[GaoDeSourceType.Vector] }}</el-radio>
+							<el-radio :label="GaoDeSourceType.Satellite" class="flex-1">{{
+								gaoDeSourceTypeMap[GaoDeSourceType.Satellite]
+							}}</el-radio>
+						</div>
+						<div class="flex w-full">
+							<el-radio :label="GaoDeSourceType.SatelliteRoad" class="flex-1">{{
+								gaoDeSourceTypeMap[GaoDeSourceType.SatelliteRoad]
+							}}</el-radio>
+						</div>
+					</el-radio-group>
+				</div>
+			</div>
 		</div>
 	</div>
 </template>
 
 <script setup lang="ts" name="LayerControl">
-import { computed, ref, watch, watchEffect } from 'vue';
-import type { OLMap } from '/@/model/map/OLMap';
 import { ElTree } from 'element-plus';
+import { computed, ref, watch } from 'vue';
+import type { OLMap } from '/@/model/map/OLMap';
+import { GaoDeSourceType, gaoDeSourceTypeMap } from '/@/model/map/OLMap';
 import { travelTree } from '/@/utils/util';
-
 const props = defineProps(['olMap']);
 const emit = defineEmits(['close']);
-
+const activeSourceType = ref(props.olMap.activeSourceType);
 const defaultProps = {
 	children: 'children',
 	label: 'title',
 };
 const closeClick = () => {
 	emit('close');
+};
+
+const changeSourceType = (val: GaoDeSourceType) => {
+	props.olMap.applySourceType(val);
 };
 const checkTreeRef = ref<InstanceType<typeof ElTree>>();
 
@@ -64,9 +98,7 @@
 
 const handleNodeClick = () => {};
 const layerInfo = computed(() => {
-	
-	
-	const info =(props.olMap as OLMap).layerInfo.value
+	const info = (props.olMap as OLMap).layerInfo.value;
 	return info;
 	const result = info.concat([
 		{
@@ -76,9 +108,8 @@
 
 			type: 'equip',
 		},
-	])
+	]);
 	return result;
-
 });
 
 watch(
@@ -90,7 +121,7 @@
 		}
 		const keys = [];
 		travelTree(val, (item) => {
-			if (item.type === 'layer'|| item.type === 'equip') {
+			if (item.type === 'layer' || item.type === 'equip') {
 				if (item.isVisible) {
 					keys.push(item.id);
 				}
diff --git a/src/components/chat/chatComponents/summaryCom/components/recordSetTable/map/panelTool/PropertyPanel.vue b/src/components/chat/chatComponents/summaryCom/components/recordSetTable/map/panelTool/PropertyPanel.vue
index f4a54d2..43942d1 100644
--- a/src/components/chat/chatComponents/summaryCom/components/recordSetTable/map/panelTool/PropertyPanel.vue
+++ b/src/components/chat/chatComponents/summaryCom/components/recordSetTable/map/panelTool/PropertyPanel.vue
@@ -1,10 +1,10 @@
 <template>
 	<div class="property-panel bg-white flex-col" style="display: flex">
-		<div class=" bg-white rounded flex-0">
+		<div class="bg-white rounded flex-0">
 			<div class="header flex-items-center pb-1.5" style="border-bottom: 1px solid black">
-				<div class="flex-items-center">
-					<span class="ywifont ywicon-guanbi cursor-pointer mr-1.5" @click="closeClick"></span>
-					<span class="text-lg font-bold">{{ propertyTitle }}</span>
+				<div class="flex-items-center w-full">
+					<span class="ywifont ywicon-guanbi cursor-pointer mr-1.5 flex-0" @click="closeClick"></span>
+					<span class="text-lg font-bold over-ellipsis flex-auto">{{ propertyTitle }}</span>
 				</div>
 			</div>
 			<div class="content rounded-lg max-h-[700px] overflow-y-auto min-h-[600px]">
@@ -89,14 +89,14 @@
 	const otype = feature.get('otype');
 	const oname = feature.get('oname');
 	if (!otype) return;
-	
+
 	const otypeProperty = props.propertyMap?.[otype] ?? {};
-	console.log("馃殌 ~ otypeProperty:", otypeProperty)
-	propertyTitle.value = otypeProperty.title;
+	console.log('馃殌 ~ otypeProperty:', otypeProperty);
+	propertyTitle.value = `${otypeProperty.title}: ${oname}`;
 	const vpropsMap = otypeProperty.vprops ?? {};
-	console.log("馃殌 ~ vpropsMap:", vpropsMap)
+	console.log('馃殌 ~ vpropsMap:', vpropsMap);
 	const config = props.propertyConfigMap?.[otype] ?? {};
-	console.log("馃殌 ~ config:", config)
+	console.log('馃殌 ~ config:', config);
 	const specialList = ['ONAME', 'OTYPE'];
 
 	const vpropsList: any[] = [];
@@ -145,6 +145,9 @@
 		border-top: unset;
 		border-bottom: unset;
 		.el-collapse-item {
+			:deep(.el-collapse-item__wrap) {
+				border: none;
+			}
 			:deep(.el-collapse-item__header) {
 				background-color: #e5e5e5;
 				padding-left: 4px;
diff --git a/src/components/chat/chatComponents/summaryCom/components/recordSetTable/map/panelTool/ThemeControl copy.vue b/src/components/chat/chatComponents/summaryCom/components/recordSetTable/map/panelTool/ThemeControl copy.vue
deleted file mode 100644
index 26872d4..0000000
--- a/src/components/chat/chatComponents/summaryCom/components/recordSetTable/map/panelTool/ThemeControl copy.vue
+++ /dev/null
@@ -1,84 +0,0 @@
-<template>
-	<div class="layer-control bg-white">
-		<div class="w-[370px] bg-white p-3 rounded">
-			<div class="header flex-items-center pb-1.5" style="border-bottom: 1px solid black">
-				<div class="flex-items-center">
-					<span class="ywifont ywicon-guanbi cursor-pointer mr-1.5" @click="closeClick"></span>
-					<span class="text-lg font-bold">涓婚</span>
-				</div>
-			</div>
-		</div>
-		<div class="content rounded-lg max-h-[700px] overflow-y-auto min-h-[600px]">
-			<el-collapse v-model="activeNames" class="mt-2 h-full">
-				<el-collapse-item v-for="group in themeInfo" :key="group.id" :title="group.title" :name="group.id" class="">
-					<pre>
-                        {{ group.children }}
-                    </pre
-					>
-				</el-collapse-item>
-			</el-collapse>
-		</div>
-	</div>
-</template>
-
-<script setup lang="ts" name="ThemeControl">
-import { computed, ref } from 'vue';
-import type { OLMap } from '/@/model/map/OLMap';
-const props = defineProps(['olMap']);
-
-const emit = defineEmits(['close']);
-const activeNames = ref(['1']);
-
-const closeClick = () => {
-	emit('close');
-};
-
-const themeList = ref([
-	{
-		id: 't1',
-		group: '鍒嗙粍1',
-		title: '涓婚1',
-	},
-	{
-		id: 't2',
-		group: '鍒嗙粍2',
-		title: '涓婚2',
-	},
-]);
-
-const themeInfo = computed(() => (props.olMap as OLMap).themeInfo.value);
-</script>
-<style scoped lang="scss">
-.content {
-	.el-collapse {
-		--item-border-radius: 0.8rem;
-		--el-collapse-border-color: black;
-		border-top: unset;
-		border-bottom: unset;
-		.el-collapse-item {
-			:deep(.el-collapse-item__header) {
-				background-color: #e5e5e5;
-				padding-left: 4px;
-			}
-			:deep(.el-collapse-item__content) {
-				padding-bottom: 0;
-			}
-
-			&:first-child {
-				:deep(.el-collapse-item__header) {
-					border-top-left-radius: var(--item-border-radius);
-					border-top-right-radius: var(--item-border-radius);
-				}
-			}
-			&:last-child {
-				:deep(.el-collapse-item__header) {
-					border: unset;
-				}
-				margin-bottom: unset;
-			}
-
-		
-		}
-	}
-}
-</style>
diff --git a/src/components/chat/chatComponents/summaryCom/components/recordSetTable/map/types.ts b/src/components/chat/chatComponents/summaryCom/components/recordSetTable/map/types.ts
index 6c2cf2f..1202e55 100644
--- a/src/components/chat/chatComponents/summaryCom/components/recordSetTable/map/types.ts
+++ b/src/components/chat/chatComponents/summaryCom/components/recordSetTable/map/types.ts
@@ -5,7 +5,7 @@
 }
 
 export const mapPanelToolMap = {
-	[MapPanelTool.Layer]: '鍥惧眰',
+	[MapPanelTool.Layer]: '鍥惧眰鍙婅儗鏅�',
 	[MapPanelTool.Theme]: '涓婚',
 	[MapPanelTool.Property]: '灞炴��',
 };

--
Gitblit v1.9.3