月球大数据地理空间分析展示平台-【前端】-月球2期前端
surprise
2023-10-30 5251468b491c8cbc34b92bd2fdf144c08ae38196
图层管理修改
已修改2个文件
42 ■■■■ 文件已修改
src/views/layer/layerManage.vue 32 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/layer/layerSet.vue 10 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/layer/layerManage.vue
@@ -84,6 +84,7 @@
    :layerTree="treeData"
    @addlayer="addlayer"
    @delLayer="delLayer"
    @onSubmit = "editLayer"
  ></layer-set>
  <attribute-list
    v-if="layerAttributeIsshow"
@@ -400,7 +401,16 @@
      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])
      }
  }
  // 将变动之前的node备份
  estreeRef.value.setCheckedKeys([], true);
  let copyNode = { ...node };
  copyNode.previousSibling = { ...node.previousSibling };
  copyNode.nextSibling = { ...node.nextSibling };
@@ -426,6 +436,7 @@
      estreeRef.value.insertAfter(copyNode.data, copyNode.nextSibling.data);
    }
  }
  estreeRef.value.setCheckedKeys(checkid, true);
};
//删除图层树
const delLayer = (res) => {
@@ -434,7 +445,20 @@
  // });
  // 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)
  }
 }
 estreeRef.value.setCheckedKeys([], true);
 nextTick(()=>{
  estreeRef.value.setCheckedKeys(std, true);
 })
}
const setRestLayerData = () => {
  let son = estreeRef.value.getCheckedNodes().reverse();
@@ -619,6 +643,7 @@
  () => store.state.restLayer,
  (nVal, oVal) => {
    if (nVal) {
      setRestLayerData();
    }
  },
@@ -628,6 +653,7 @@
  () => store.state.temporaryLayer,
  (nVal, oVal) => {
    if (nVal) {
      addTemporaryLayer(nVal);
    }
  },
@@ -637,6 +663,7 @@
  () => store.state.editTemporarName,
  (nVal, oVal) => {
    if (nVal) {
      editTemporaryLayerName(nVal);
    }
  },
@@ -646,12 +673,13 @@
  () => store.state.editTemporaryback,
  (nVal, oVal) => {
    if (nVal) {
      editTemporaryBackById(nVal);
    }
  },
  { deep: true }
);
onMounted(() => {
  window.setLayer = getLayer;
});
src/views/layer/layerSet.vue
@@ -277,7 +277,7 @@
import { res_selectByPageAndCount } from "@/api/api";
import { Search } from "@element-plus/icons-vue";
const stretchValue = ref("");
const emits = defineEmits(["SETstate", "addlayer", "delLayer"]);
const emits = defineEmits(["SETstate", "addlayer", "delLayer","onSubmit"]);
//defineProps 来接收组件的传值
const defineProp = defineProps({
  layerTree: Array,
@@ -619,7 +619,7 @@
  copyNode.previousSibling = { ...node.previousSibling };
  copyNode.nextSibling = { ...node.nextSibling };
  copyNode.parent = { ...node.parent };
  emits("onSubmit",true);
  if (Object.keys(copyNode.previousSibling).length !== 0) {
    // 删除原先的node
    treeRef.value.remove(node.data);
@@ -643,6 +643,8 @@
    return;
  }
  ElMessage({
    message: "修改成功",
    type: "success",
@@ -664,7 +666,7 @@
    backUpData.value = JSON.stringify(data);
    // this.currentData = JSON.stringify(result)
    formInline.value = JSON.parse(backUpData.value);
    debugger;
    ;
    formInline.value.isLayer = parseInt(data.isLayer) == 0 ? "0" : "1";
    if (data.resid && data.resid > 0) {
      serviceActive.value = true;
@@ -702,7 +704,6 @@
    tab: insertData.value.tab, //Geoserver 名称,
    category: insertData.value.category, //服务类别 Geoserver , 1 GisServer 2 GeoServer 3数简
  };
  debugger;
  if (addlocation == 1) {
    //新增同级
    treeRef.value.insertAfter(addObj, treeRef.value.getNode(selectedObj.value));
@@ -745,6 +746,7 @@
//移动
const move = (type) => {
  // let node = treeRef.value.getCurrentNode();
  let node = treeRef.value.getNode(selectedObj.value);
  let data = selectedObj.value;
  // 将变动之前的node备份