From 7a69092f8acc6862877d3692208f1a9f623befb2 Mon Sep 17 00:00:00 2001 From: supermap123 Date: Wed, 8 May 2024 13:48:42 +0800 Subject: [PATCH] =?UTF-8?q?=E7=BC=BA=E9=99=B7=E4=BF=AE=E6=94=B9:=E6=94=AF?= =?UTF-8?q?=E6=8C=81s3m=E9=87=8D=E5=A4=8D=E5=9B=BE=E5=B1=82=E5=90=8D?= =?UTF-8?q?=E6=B7=BB=E5=8A=A0=EF=BC=8C=E9=87=8D=E5=A4=8D=E5=9C=BA=E6=99=AF?= =?UTF-8?q?=E5=90=8D=E6=8F=90=E7=A4=BA?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../layer-custom/components/layers.vue | 22 ++++++++++++++++-- .../addData/layer-custom/components/scene.vue | 23 +++++++++++++++++++ SuperMap iEarth/src/store/global/global.d.ts | 3 ++- SuperMap iEarth/src/store/global/global.ts | 1 + 4 files changed, 46 insertions(+), 3 deletions(-) diff --git a/SuperMap iEarth/src/package/addData/layer-custom/components/layers.vue b/SuperMap iEarth/src/package/addData/layer-custom/components/layers.vue index f70b7a8e..7b369921 100644 --- a/SuperMap iEarth/src/package/addData/layer-custom/components/layers.vue +++ b/SuperMap iEarth/src/package/addData/layer-custom/components/layers.vue @@ -37,7 +37,7 @@ type="text" :placeholder="$t('layerName')" :title="state.layerName" - :disabled="true" + :disabled="state.layerType != 'S3M'" /> @@ -180,7 +180,12 @@ function openLayer() { switch (state.layerType) { case "S3M": - addS3M(state.layerUrl); + let isExist = checkS3MLayeExist(state.layerName); + if (isExist) { + message.warning('图层名重复,请修改当前图层名称'); + }else{ + addS3M(state.layerUrl); + } break; case "Imagery": addImage(state.layerUrl); @@ -206,6 +211,10 @@ function handleChange() { state.layerUrl, "S3M" ); + let isExist = checkS3MLayeExist(state.layerName); + if(isExist){ + message.warning('图层名重复,请修改当前图层名称'); + } } break; case "Imagery": @@ -238,6 +247,15 @@ function handleChange() { } } +function checkS3MLayeExist(s3mLayerName:string){ + let layerQueue = viewer.scene.layers.layerQueue; + let findIndex = layerQueue.findIndex((layer:any) => { + return layer.name == s3mLayerName; + }) + + return findIndex >= 0 ? true : false; +} + // 添加s3m let promiseArray: any[] = []; function addS3M(s3mLayerUrl: string) { diff --git a/SuperMap iEarth/src/package/addData/layer-custom/components/scene.vue b/SuperMap iEarth/src/package/addData/layer-custom/components/scene.vue index 8bed5d9e..1cec65a7 100644 --- a/SuperMap iEarth/src/package/addData/layer-custom/components/scene.vue +++ b/SuperMap iEarth/src/package/addData/layer-custom/components/scene.vue @@ -35,8 +35,10 @@