From bfe436e493006bea75d32383d6bdfc0af8c7e5d0 Mon Sep 17 00:00:00 2001
From: surprise <15810472099@163.com>
Date: 星期四, 19 十月 2023 13:44:19 +0800
Subject: [PATCH] 图层组透明度,临时图层组

---
 src/views/layer/layerManage.vue |  150 ++++++++++++++++++++++---------------------------
 1 files changed, 67 insertions(+), 83 deletions(-)

diff --git a/src/views/layer/layerManage.vue b/src/views/layer/layerManage.vue
index 7d5b0c9..c405184 100644
--- a/src/views/layer/layerManage.vue
+++ b/src/views/layer/layerManage.vue
@@ -127,7 +127,11 @@
     }
     store.state.editTemporaryId = data.id;
     sgworld.Creator.SimpleGraphic.SimpleGraphicObj.push(data.id);
-    sgworld.Creator.SimpleGraphic.edit(true, { editProp: false });
+    sgworld.Creator.SimpleGraphic.edit(true, {
+      editProp: false, tipText: {
+        ActiveText: '鐐瑰嚮婵�娲荤紪杈�'
+      }
+    });
   } else if (res == 2) {
     var layerId = []
     layerId.push(data.sid)
@@ -151,7 +155,18 @@
     if (checkedKeys.indexOf(temporary.value) > -1) {
       checkedKeys.splice(checkedKeys.indexOf(temporary.value), 1)
     }
-    estreeRef.value.setCheckedKeys(checkedKeys, true);
+    estreeRef.value.setCheckedKeys([], true);
+    nextTick(() => {
+      var layerIds = [];
+      for (var i in checkedKeys) {
+
+        var val = estreeRef.value.getNode(checkedKeys[i]).data;
+        if (val.isLayer == 1) {
+          layerIds.push(checkedKeys[i]);
+        }
+      }
+      estreeRef.value.setCheckedKeys(layerIds, true);
+    })
   }
 };
 //閫夋嫨鍥惧眰
@@ -160,16 +175,34 @@
   layerDetailIsshow.value = false;
   let isCheck = checked.checkedKeys.indexOf(data.id) > -1;
   if (isCheck) {
-    let son = estreeRef.value.getCheckedNodes().reverse();
-    for (var i in son) {
-      var layerArr = son[i];
-      layerArr.checked = true;
-      if (layerArr.shpType && layerArr.shpType == 'temporaryLayer') {//涓存椂鍥惧眰娣诲姞
-        temporaryTool.addTemporaryTool(layerArr);
+    if (data.isLayer == 0) {
+      let son = estreeRef.value.getCheckedNodes().reverse();
+      for (var i in son) {
+        var layerArr = son[i];
+        layerArr.checked = true;
+        if (layerArr.shpType && layerArr.shpType == 'temporaryLayer') {//涓存椂鍥惧眰娣诲姞
+          temporaryTool.addTemporaryTool(layerArr);
+        } else {
+          server.addTreeData(layerArr);
+        }
+      }
+    } else {
+      if (data.shpType && data.shpType == 'temporaryLayer') {//涓存椂鍥惧眰娣诲姞
+        temporaryTool.addTemporaryTool(data);
       } else {
-        server.addTreeData(layerArr);
+        let son = estreeRef.value.getCheckedNodes().reverse();
+        for (var i in son) {
+          var layerArr = son[i];
+          layerArr.checked = true;
+          if (layerArr.shpType && layerArr.shpType == 'temporaryLayer') {//涓存椂鍥惧眰娣诲姞
+
+          } else {
+            server.addTreeData(layerArr);
+          }
+        }
       }
     }
+
   } else {
 
     if (data.isLayer == 0) {
@@ -182,6 +215,7 @@
         }
       }
     } else {
+
       if (data.shpType && data.shpType == 'temporaryLayer') {//涓存椂鍥惧眰娣诲姞
         temporaryTool.removeTemporaryLayer(data);
       } else {
@@ -190,52 +224,6 @@
     }
 
   }
-
-
-
-
-  //鍒ゆ柇鏄惁涓虹埗绾�
-  // if (data.isLayer == 0) {//涓虹埗绾�
-
-  //   let son = estreeRef.value.getCheckedNodes().reverse();
-  //   for(var i in )
-
-
-
-
-  // } else {//涓哄瓙绾�
-
-  // }
-
-
-  //
-  // if (data.shpType && data.shpType == 'temporaryLayer') {
-  //   if (isCheck) {
-  //     temporaryTool.addTemporaryTool(data);
-  //   } else if(!isCheck) {
-  //     temporaryTool.removeTemporaryLayer(data); 
-  //   }
-  // } else {
-  //   if (isCheck) {
-  //     let son = estreeRef.value.getCheckedNodes().reverse();
-  //     for (var i in son) {
-  //       var layerArr = son[i];
-  //       layerArr.checked = true;
-  //       if (layerArr.category == 2 && layerArr.type == 3) {
-
-  //         if (layerArr.tab != "moon:geo_mappable_unit") {
-
-  //           server.addTreeData(layerArr)
-  //         }
-  //       } else {
-  //         server.addTreeData(layerArr);
-  //       }
-  //     }
-  //     store.commit("SET_CHECKLAYER", son);
-  //   } else {
-  //     
-  //   }
-  // }
 };
 const setVisiable = (treeNode, checked) => {
   if (checked !== undefined) {
@@ -276,10 +264,15 @@
       layerAttributeIsshow.value = true;
       store.state.tab = e;
     } else if (res == 3) {
-      let son = estreeRef.value.getCheckedNodes()
-      var layerId = getCheckedLayerID(e, son);
+      let son = estreeRef.value.getCheckedKeys();
+      var layerId = getCheckedLayerPID(e, son);
       if (layerId.length <= 0) {
         return ElMessage.error("璇峰厛鍕鹃�夊浘灞�");
+      }
+      layerDetailIsshow.value = true;
+      store.state.layerGroups = {
+        id: e.id,
+        layerIds: layerId
       }
     } else {
       var val = estreeRef.value!.getCheckedKeys(false);
@@ -292,14 +285,15 @@
   })
 
 };
-const getCheckedLayerID = (res, result) => {
+const getCheckedLayerPID = (res, result) => {
   var temp = [];
+  var ids = result
   let forFn = (data) => {
     data.children.forEach(item => {
       if (item.children) {
-        forFn(item)
+        temp.push(item.id)
       } else {
-        if (result.indexOf(item.id) > -1) {
+        if (ids.indexOf(item.id) > -1) {
           temp.push(item.id)
         }
       }
@@ -309,10 +303,14 @@
   return temp;
 };
 const setSpatialClose = (res) => {
+
   layerAttributeIsshow.value = res;
 };
 const detailClose = (res) => {
-  layerDetailIsshow.value = res;
+  if (res.type == 0) {
+    estreeRef.value.getNode(store.state.layerGroups.id).data.alpha = res.val;
+  }
+  layerDetailIsshow.value = res.flag;
 };
 //缂栬緫鍥惧眰鏍�
 const addlayer = (res) => {
@@ -381,7 +379,14 @@
   // server.delLayerAll();
   const dt = await perms_selectLayers();
   if (dt.code == 200) {
-    treeData.value = setTreeData(dt.result).sort(function (a, b) {
+
+    var va_data = dt.result.filter((res) => {
+      if (res.isLayer == 0) {
+        res.alpha = 1;
+      }
+      return res;
+    })
+    treeData.value = setTreeData(va_data).sort(function (a, b) {
       return a.orderNum - b.orderNum;
     });
     const comperLayer = await mark_selectByPageAndCount({
@@ -430,25 +435,7 @@
     //娣诲姞榛樿閫変腑鍥惧眰
     layerListData.value = dt.result;
     defaultLayer(dt.result);
-    // var setGeoWms = [];
-    // var url = null;
 
-    // for (var i in adLayer) {
-    //   var layer = adLayer[i];
-    //   if (layer.category == 2 && layer.type == 3) {
-    //     if (layer.tab != "moon:geo_mappable_unit") {
-    //       // setGeoWms.push(layer.tab);
-    //       // url = layer.url;
-    //       server.addTreeData(layer);
-    //     }
-    //   } else {
-    //     server.addTreeData(layer);
-    //   }
-    // }
-    // if (setGeoWms.length > 0) {
-    //   server.addGeoServerMmsLayers(setGeoWms, url);
-    // }
-    //;
     nextTick(() => {
       let son = estreeRef.value.getCheckedNodes();
       setRestLayerData()
@@ -526,10 +513,7 @@
     }
   }
   nextTick(() => {
-
-
     estreeRef.value.setCheckedKeys(checkedKeys, true);
-
   });
 };
 const setEditLayerChange = async (res) => {

--
Gitblit v1.9.3