From b7e62ad2625121586b1254dab69b3c3d38da71de Mon Sep 17 00:00:00 2001 From: surprise <15810472099@163.com> Date: 星期二, 31 十月 2023 17:31:10 +0800 Subject: [PATCH] 投影图层修改,在线制图修改 --- src/views/layer/layerManage.vue | 151 ++++++++++++++++++++------------------------------ 1 files changed, 60 insertions(+), 91 deletions(-) diff --git a/src/views/layer/layerManage.vue b/src/views/layer/layerManage.vue index 14cee59..87ecbe6 100644 --- a/src/views/layer/layerManage.vue +++ b/src/views/layer/layerManage.vue @@ -12,20 +12,9 @@ </div> </div> <div class="layerContent"> - <el-tree - node-key="id" - :props="props" - :highlight-current="false" - :current-node-key="selectedNodeId" - :data="treeData" - :default-expanded-keys="defaultExpanded" - :expand-on-click-node="false" - show-checkbox - @check="handleCheckChange" - ref="estreeRef" - v-if="treeData.length" - :default-checked-keys="DefaultId" - > + <el-tree node-key="id" :props="props" :highlight-current="false" :current-node-key="selectedNodeId" :data="treeData" + :default-expanded-keys="defaultExpanded" :expand-on-click-node="false" show-checkbox @check="handleCheckChange" + ref="estreeRef" v-if="treeData.length" :default-checked-keys="DefaultId"> <template #default="{ node, data }"> <span class="custom-tree-node"> <span class="label">{{ node.label }}</span> @@ -44,31 +33,19 @@ </span> <template #dropdown> <el-dropdown-menu> - <el-dropdown-item - v-if="data.type != 6 && data.isLayer == 1" - @click.native="clickdropdown(1, data)" - >璇︾粏</el-dropdown-item> + <el-dropdown-item v-if="data.type != 6 && data.isLayer == 1" + @click.native="clickdropdown(1, data)">璇︾粏</el-dropdown-item> <el-dropdown-item v-if="data.type == 6 && data.isLayer == 1">鍒犻櫎</el-dropdown-item> - <el-dropdown-item - v-if="data.type == 3 && data.isLayer == 1" - @click.native="clickdropdown(2, data)" - >灞炴��</el-dropdown-item> - <el-dropdown-item - v-if="data.isLayer == 0" - @click.native="clickdropdown(3, data)" - >閫忔槑搴�</el-dropdown-item> - <el-dropdown-item - v-if="data.shpType == 'temporaryLayer'" - @click.native="clickdTemporary(1, data)" - >缂栬緫</el-dropdown-item> - <el-dropdown-item - v-if="data.shpType == 'temporaryLayer'" - @click.native="clickdTemporary(2, data)" - >鍒犻櫎</el-dropdown-item> - <el-dropdown-item - v-if="data.shpType == 'temporaryLayer'" - @click.native="clickdTemporary(3, data)" - >瀹氫綅</el-dropdown-item> + <el-dropdown-item v-if="data.type == 3 && data.isLayer == 1" + @click.native="clickdropdown(2, data)">灞炴��</el-dropdown-item> + <el-dropdown-item v-if="data.isLayer == 0" + @click.native="clickdropdown(3, data)">閫忔槑搴�</el-dropdown-item> + <el-dropdown-item v-if="data.shpType == 'temporaryLayer'" + @click.native="clickdTemporary(1, data)">缂栬緫</el-dropdown-item> + <el-dropdown-item v-if="data.shpType == 'temporaryLayer'" + @click.native="clickdTemporary(2, data)">鍒犻櫎</el-dropdown-item> + <el-dropdown-item v-if="data.shpType == 'temporaryLayer'" + @click.native="clickdTemporary(3, data)">瀹氫綅</el-dropdown-item> </el-dropdown-menu> </template> </el-dropdown> @@ -78,19 +55,9 @@ </el-tree> </div> </div> - <layer-set - v-if="layerSetIsshow" - @SETstate="SETstate" - :layerTree="treeData" - @addlayer="addlayer" - @delLayer="delLayer" - @onSubmit = "editLayer" - ></layer-set> - <attribute-list - v-if="layerAttributeIsshow" - :layerData="layerObjData" - @spatialClose="setSpatialClose" - ></attribute-list> + <layer-set v-if="layerSetIsshow" @SETstate="SETstate" :layerTree="treeData" @addlayer="addlayer" @delLayer="delLayer" + @onSubmit="editLayer"></layer-set> + <attribute-list v-if="layerAttributeIsshow" :layerData="layerObjData" @spatialClose="setSpatialClose"></attribute-list> <layer-detail :layerData="layerObjData" v-if="layerDetailIsshow" @detailClose="detailClose"></layer-detail> </template> @@ -201,11 +168,11 @@ var std = []; for (var i in keys) { - var layer_res = estreeRef.value.getNode(checkedKeys[i]).data; - if(layer_res.shpType && layer_res.shpType == 'temporaryLayer'){ - std.push(checkedKeys[i]); - }else if(layer_res.isLayer == 1){ - std.push(checkedKeys[i]); + var layer_res = estreeRef.value.getNode(keys[i]).data; + if (layer_res.shpType && layer_res.shpType == 'temporaryLayer') { + std.push(keys[i]); + } else if (layer_res.isLayer == 1) { + std.push(keys[i]); } } estreeRef.value.setCheckedKeys([], true); @@ -401,13 +368,13 @@ node = estreeRef.value.getNode(e); } }); - + var checKey = estreeRef.value.getCheckedKeys(); - let checkid=[]; - for(var i in checKey){ - if( estreeRef.value.getNode(checKey[i]).data.isLayer ==1){ - checkid.push(checKey[i]) - } + let checkid = []; + for (var i in checKey) { + if (estreeRef.value.getNode(checKey[i]).data.isLayer == 1) { + checkid.push(checKey[i]) + } } // 灏嗗彉鍔ㄤ箣鍓嶇殑node澶囦唤 estreeRef.value.setCheckedKeys([], true); @@ -445,19 +412,19 @@ // }); // treeData = handleTree(menuOption, "id", "pid", "children"); }; -const editLayer=()=>{ - var layer =store.state.chekNowLayers; - var std =[]; - for(var i in layer){ - if(layer[i].isLayer ==1){ - std.push(layer[i].id) +const editLayer = () => { + var layer = store.state.chekNowLayers; + var std = []; + for (var i in layer) { + if (layer[i].isLayer == 1) { + std.push(layer[i].id) + } } - } - estreeRef.value.setCheckedKeys([], true); - nextTick(()=>{ - estreeRef.value.setCheckedKeys(std, true); - }) - + estreeRef.value.setCheckedKeys([], true); + nextTick(() => { + estreeRef.value.setCheckedKeys(std, true); + }) + } const setRestLayerData = () => { let son = estreeRef.value.getCheckedNodes().reverse(); @@ -505,9 +472,15 @@ var children = []; if (comperLayer.code == 200 && comperLayer.result) { for (var i in comperLayer.result) { - var slayer = JSON.parse(comperLayer.result[i].wkt); - slayer.sid = comperLayer.result[i].id; - children.push(slayer); + var layer = comperLayer.result[i] + if (layer.wkt && layer.wkt.indexOf("shpType") > -1 && layer.wkt.indexOf("shpType") > -1) { + + var slayer = JSON.parse(comperLayer.result[i].wkt); + + slayer.sid = comperLayer.result[i].id; + children.push(slayer); + + } } } treeData.value.unshift({ @@ -572,7 +545,6 @@ } const addTemporaryLayer = async (res) => { var obj = { - id: res.id, name: res.cnName, wkt: JSON.stringify(res), }; @@ -582,15 +554,15 @@ store.state.temporaryLayer = null; res.sid = data.result; treeData.value[0].children.push(res); - + nextTick(() => { var std = [res.id]; for (var i in checkedKeys) { var layer_res = estreeRef.value.getNode(checkedKeys[i]).data; - if(layer_res.shpType && layer_res.shpType == 'temporaryLayer'){ + if (layer_res.shpType && layer_res.shpType == 'temporaryLayer') { std.push(checkedKeys[i]); - }else if(layer_res.isLayer == 1){ + } else if (layer_res.isLayer == 1) { std.push(checkedKeys[i]); } } @@ -643,7 +615,7 @@ () => store.state.restLayer, (nVal, oVal) => { if (nVal) { - + setRestLayerData(); } }, @@ -653,7 +625,7 @@ () => store.state.temporaryLayer, (nVal, oVal) => { if (nVal) { - + addTemporaryLayer(nVal); } }, @@ -663,7 +635,7 @@ () => store.state.editTemporarName, (nVal, oVal) => { if (nVal) { - + editTemporaryLayerName(nVal); } }, @@ -673,13 +645,13 @@ () => store.state.editTemporaryback, (nVal, oVal) => { if (nVal) { - + editTemporaryBackById(nVal); } }, { deep: true } ); - + onMounted(() => { window.setLayer = getLayer; }); @@ -805,7 +777,7 @@ padding: 8px; } -/deep/ .el-tree-node:focus > .el-tree-node__content { +/deep/ .el-tree-node:focus>.el-tree-node__content { background: transparent; } @@ -823,10 +795,7 @@ } } -/deep/ - .el-tree--highlight-current - .el-tree-node.is-current - > .el-tree-node__content { +/deep/ .el-tree--highlight-current .el-tree-node.is-current>.el-tree-node__content { background: rgba(104, 156, 255, 0.5) !important; } -- Gitblit v1.9.3