Browse Source

Merge branch 'feature-v1.0.0' of ssh://gitlab.datameta.com:2224/project/water/data-board-2025 into feature-v1.0.0

feature-v1.0.0
邱伟洋 1 month ago
parent
commit
aff76ee138
  1. 8
      src/views/BottomPanel/index.vue
  2. 41
      src/views/Main/Map/components/LayerTree.vue
  3. 1
      src/views/Main/ProjectOperation/index.vue

8
src/views/BottomPanel/index.vue

@ -32,13 +32,7 @@ const layerData: any = computed(() => {
});
const selectedKeys = computed(() => projectStore.selectedLayerKeys);
function handleChangeLayer(item: any) {
if (activeLayers.value.includes(item.id)) {
activeLayers.value = activeLayers.value.filter((id: any) => id !== item.id);
// projectStore.setLayerVisibility(item.id, false);
} else {
activeLayers.value.push(item.id);
// projectStore.setLayerVisibility(item.id, true);
}
window.$bus.$emit("change-layer", item);
}
</script>

41
src/views/Main/Map/components/LayerTree.vue

@ -1,9 +1,5 @@
<template>
<SyDialog
dialog-class="layer-tree-dialog"
:dialog-show="showDialog"
:style="style"
>
<SyDialog dialog-class="layer-tree-dialog" :dialog-show="showDialog" :style="style">
<template #body>
<Tree
ref="layerTreeRef"
@ -22,11 +18,7 @@
<template v-slot:default="{ data, onMouseoverTip }">
<div class="item-name">
<div class="icon">
<img
v-if="data && !data.iconCls"
src="@/assets/map/icon-layer.png"
alt=""
/>
<img v-if="data && !data.iconCls" src="@/assets/map/icon-layer.png" alt="" />
<img v-else src="@/assets/map/icon-folder.png" alt="" />
</div>
<span class="name" @mouseover="onMouseoverTip($event)">
@ -35,11 +27,7 @@
</div>
</template>
<template v-slot:right="{ data }">
<span
class="btn-item"
v-if="data && !data.iconCls"
@click.stop="flyTo(data)"
>
<span class="btn-item" v-if="data && !data.iconCls" @click.stop="flyTo(data)">
<iconpark-icon size="16" name="location"></iconpark-icon>
</span>
</template>
@ -49,14 +37,7 @@
</template>
<script setup lang="ts">
import {
ref,
watch,
computed,
nextTick,
onMounted,
onBeforeUnmount,
} from "vue";
import { ref, watch, computed, nextTick, onMounted, onBeforeUnmount } from "vue";
import SyDialog from "@/components/Dialog/index.vue";
import { useProjectStore } from "@/store/modules/project";
import { useLayer } from "@/hooks/web/useProject";
@ -118,6 +99,13 @@ const handleCheckChange = (data: any, checkedData: any) => {
}
};
const layerChange = (data: any) => {
const node = layerTreeRef.value?.getNode(data.id);
node.checked = !node.checked;
const checkedKeys = layerTreeRef.value?.getCheckedKeys();
handleCheckChange(data, { checkedKeys });
};
watch(
() => sceneConfig.value,
(val) => {
@ -133,10 +121,15 @@ watch(
}, 500);
});
}
}
},
);
onMounted(() => {
window.$bus.$on("change-layer", layerChange);
});
onBeforeUnmount(() => {
window.$bus.$off("change-layer");
removeViewerClick();
});
</script>

1
src/views/Main/ProjectOperation/index.vue

@ -56,7 +56,6 @@ watch(
() => props.data,
(val) => {
if (val) {
debugger;
resCode.value = val.code;
}
},

Loading…
Cancel
Save