From ecf3ad202a851caa39660ddfaa16e1bf16565b2e Mon Sep 17 00:00:00 2001
From: surprise <15810472099@163.com>
Date: 星期一, 30 十月 2023 13:51:38 +0800
Subject: [PATCH] 图层管理修改

---
 src/views/layer/layerSet.vue |  553 +++++++++++++++++++++++++++++++++++++++++++-----------
 1 files changed, 436 insertions(+), 117 deletions(-)

diff --git a/src/views/layer/layerSet.vue b/src/views/layer/layerSet.vue
index 4f453fc..5e44712 100644
--- a/src/views/layer/layerSet.vue
+++ b/src/views/layer/layerSet.vue
@@ -19,34 +19,21 @@
           :expand-on-click-node="false"
           @node-click="handleNodeClick"
           ref="treeRef"
+          style="font-size: 16px"
         />
       </div>
     </div>
     <div class="edit_box">
       <div class="edit_box_btn btnstyle">
-        <el-button type="primary" :icon="Plus" @click="insertLayerData(1)"
-          >鏂板鍚岀骇</el-button
-        >
-        <el-button type="primary" :icon="Plus" @click="insertLayerData(2)"
-          >鏂板瀛愮骇</el-button
-        >
-        <el-button
-          type="primary"
-          :icon="Delete"
-          class="delbtn"
-          @click="delLayer"
-          >鍒犻櫎</el-button
-        >
-        <el-button type="primary" :icon="Top" @click="move(1)"
-          >鍚戜笂绉诲姩</el-button
-        >
-        <el-button type="primary" :icon="Bottom" @click="move(2)"
-          >鍚戜笅绉诲姩</el-button
-        >
+        <el-button type="primary" :icon="Plus" @click="insertLayerData(1)">鏂板鍚岀骇</el-button>
+        <el-button type="primary" :icon="Plus" @click="insertLayerData(2)">鏂板瀛愮骇</el-button>
+        <el-button type="primary" :icon="Delete" class="delbtn" @click="delLayer">鍒犻櫎</el-button>
+        <el-button type="primary" :icon="Top" @click="move(1)">鍚戜笂绉诲姩</el-button>
+        <el-button type="primary" :icon="Bottom" @click="move(2)">鍚戜笅绉诲姩</el-button>
       </div>
       <div class="edit_box_form">
         <el-form :model="formInline" label-width="120px">
-          <el-form-item label="閫変腑鍥惧眰">
+          <el-form-item label="鍥惧眰绫诲瀷">
             <el-select style="width: 100%" v-model="formInline.isLayer">
               <el-option label="鍥惧眰缁�" value="0"></el-option>
               <el-option label="鍥惧眰" value="1"></el-option>
@@ -60,23 +47,32 @@
               @click="setServiceChange('0')"
               key="0"
               :class="{ serviceActive: !serviceActive }"
-              >鍚�</el-button
-            >
+            >鍚�</el-button>
             <el-button
               size="small"
               class="serviceButton"
               @click="setServiceChange('1')"
               key="1"
               :class="{ serviceActive: serviceActive }"
-              >鏄�</el-button
-            >
+            >鏄�</el-button>
           </el-form-item>
 
           <el-form-item label="鍥惧眰鍚嶇О">
-            <el-input
-              v-model="formInline.cnName"
-              placeholder="璇疯緭鍏ュ浘灞傚悕绉�"
-            />
+            <el-input v-model="formInline.cnName" placeholder="璇疯緭鍏ュ浘灞傚悕绉�" />
+          </el-form-item>
+          <!-- 鏈嶅姟绫诲埆 -->
+          <el-form-item v-show="formInline.isLayer == 1" label="鏈嶅姟绫诲埆">
+            <el-select style="width: 100%" v-model="formInline.category" :disabled="serviceActive">
+              <el-option
+                v-for="item in category_type"
+                :key="item.value"
+                :label="item.name"
+                :value="item.value"
+              ></el-option>
+            </el-select>
+          </el-form-item>
+          <el-form-item label="琛ㄥ悕绉�" v-show="formInline.category == 2">
+            <el-input v-model="formInline.tab" placeholder="璇疯緭鍏ヨ〃鍚嶇О" :disabled="serviceActive" />
           </el-form-item>
           <!-- 鏁版嵁绫诲瀷 -->
           <el-form-item v-show="formInline.isLayer == 1" label="鏁版嵁绫诲瀷">
@@ -91,24 +87,18 @@
                 :key="item.value"
                 :label="item.label"
                 :value="item.value"
-              >
-              </el-option>
+              ></el-option>
             </el-select>
           </el-form-item>
           <!-- 鏁版嵁绫诲瀷 -->
           <el-form-item v-show="formInline.isLayer == 1" label="鏈嶅姟绫诲瀷">
-            <el-select
-              style="width: 100%"
-              v-model="formInline.type"
-              :disabled="serviceActive"
-            >
+            <el-select style="width: 100%" v-model="formInline.type" :disabled="serviceActive">
               <el-option
                 v-for="item in dataType"
                 :key="item.value"
                 :label="item.label"
                 :value="item.value"
-              >
-              </el-option>
+              ></el-option>
             </el-select>
           </el-form-item>
 
@@ -128,83 +118,144 @@
         </el-form>
       </div>
     </div>
-    <el-dialog title="鏂板" v-model:visible="dialogVisible" width="50%">
+    <el-dialog title="鏂板" v-model="dialogVisible" width="50%">
       <div style="width: 100%; max-height: 63vh; overflow-y: auto">
-        <el-form :model="formInline" label-width="120px">
-          <el-form-item label="閫変腑鍥惧眰">
-            <el-select style="width: 100%" v-model="formInline.isLayer">
+        <el-form :model="insertData" label-width="120px">
+          <el-form-item label="鍥惧眰绫诲瀷">
+            <el-select style="width: 100%" v-model="insertData.isLayer">
               <el-option label="鍥惧眰缁�" value="0"></el-option>
               <el-option label="鍥惧眰" value="1"></el-option>
             </el-select>
           </el-form-item>
           <!-- 鏈嶅姟璧勬簮-->
-          <el-form-item v-show="formInline.isLayer == 1" label="鏈嶅姟璧勬簮">
+          <el-form-item v-show="insertData.isLayer == 1" label="鏈嶅姟璧勬簮">
             <el-button
               size="small"
               class="serviceButton"
-              @click="setServiceChange('0')"
+              @click="setInsertServiceChange('0')"
               key="0"
-              :class="{ serviceActive: !serviceActive }"
-              >鍚�</el-button
-            >
+              :class="{ serviceActive: !insertServiceActive }"
+            >鍚�</el-button>
             <el-button
               size="small"
               class="serviceButton"
-              @click="setServiceChange('1')"
+              @click="setInsertServiceChange('1')"
               key="1"
-              :class="{ serviceActive: serviceActive }"
-              >鏄�</el-button
-            >
+              :class="{ serviceActive: insertServiceActive }"
+            >鏄�</el-button>
           </el-form-item>
 
           <el-form-item label="鍥惧眰鍚嶇О">
+            <el-input v-model="insertData.cnName" placeholder="璇疯緭鍏ュ浘灞傚悕绉�" />
+          </el-form-item>
+          <!-- 鏈嶅姟绫诲埆 -->
+          <el-form-item v-show="insertData.isLayer == 1" label="鏈嶅姟绫诲埆">
+            <el-select
+              style="width: 100%"
+              v-model="insertData.category"
+              :disabled="insertServiceActive"
+            >
+              <el-option
+                v-for="item in category_type"
+                :key="item.value"
+                :label="item.name"
+                :value="item.value"
+              ></el-option>
+            </el-select>
+          </el-form-item>
+          <el-form-item label="琛ㄥ悕绉�" v-show="insertData.category == 2">
             <el-input
-              v-model="formInline.cnName"
-              placeholder="璇疯緭鍏ュ浘灞傚悕绉�"
+              v-model="insertData.tab"
+              placeholder="璇疯緭鍏ヨ〃鍚嶇О"
+              :disabled="insertServiceActive"
             />
           </el-form-item>
           <!-- 鏁版嵁绫诲瀷 -->
-          <el-form-item v-show="formInline.isLayer == 1" label="鏁版嵁绫诲瀷">
+          <el-form-item v-show="insertData.isLayer == 1" label="鏁版嵁绫诲瀷">
             <el-select
               style="width: 100%"
-              v-model="formInline.data"
+              v-model="insertData.data"
               @change="setFromDataTypeClick"
+              :disabled="insertServiceActive"
             >
               <el-option
                 v-for="item in serveType"
                 :key="item.value"
                 :label="item.label"
                 :value="item.value"
-              >
-              </el-option>
+              ></el-option>
             </el-select>
           </el-form-item>
           <!-- 鏁版嵁绫诲瀷 -->
-          <el-form-item v-show="formInline.isLayer == 1" label="鏈嶅姟绫诲瀷">
-            <el-select style="width: 100%" v-model="formInline.type">
+          <el-form-item v-show="insertData.isLayer == 1" label="鏈嶅姟绫诲瀷">
+            <el-select
+              style="width: 100%"
+              v-model="insertData.type"
+              :disabled="insertServiceActive"
+            >
               <el-option
                 v-for="item in dataType"
                 :key="item.value"
                 :label="item.label"
                 :value="item.value"
-              >
-              </el-option>
+              ></el-option>
             </el-select>
           </el-form-item>
 
-          <el-form-item label="鏈嶅姟鍦板潃" v-show="formInline.isLayer == 1">
+          <el-form-item label="鏈嶅姟鍦板潃" v-show="insertData.isLayer == 1">
             <el-input
-              v-model="formInline.serviceUrl"
+              v-model="insertData.serviceUrl"
               placeholder="璇疯緭鍏ユ湇鍔″湴鍧�"
+              :disabled="insertServiceActive"
             />
           </el-form-item>
           <el-form-item>
             <div class="btnstyle editBtn">
-              <el-button type="primary" @click="onSubmit">纭畾</el-button>
-              <el-button class="delbtn" @click="updateRest">鍙栨秷</el-button>
+              <el-button type="primary" size="small" @click="added()">纭畾</el-button>
+              <el-button class="delbtn" type="info" size="small" @click="submitCancel()">鍙栨秷</el-button>
             </div>
           </el-form-item>
         </el-form>
+      </div>
+    </el-dialog>
+    <el-dialog v-model="dialogService" width="50%" :show-close="false">
+      <div style="width: 100%; max-height: 63vh; overflow-y: auto">
+        <div style="display: flex; justify-content: space-between" class="tableForm">
+          <div>
+            <el-input size="small" v-model="listData.name">
+              <template #suffix>
+                <el-icon class="el-input__icon el-icon-search" @click="setServiceQuery">
+                  <search />
+                </el-icon>
+              </template>
+            </el-input>
+          </div>
+          <div class="btnstyle">
+            <el-button type="info" size="small" @click="setServiceRest">閲嶇疆</el-button>
+
+            <el-button type="primary" size="small" @click="setServiceConfirm">纭</el-button>
+            <el-button type="info" size="small" @click="setServiceCanel" class="delbtn">鍙栨秷</el-button>
+          </div>
+        </div>
+        <el-table ref="multipleTable" :data="tableData" @select="selectChange">
+          <el-table-column type="selection" width="55"></el-table-column>
+          <el-table-column align="center" type="index" label="搴忓彿" width="70px" />
+          <el-table-column align="center" prop="cnName" label="璧勬簮鍚嶇О" />
+
+          <el-table-column align="center" prop="category" label="鏈嶅姟绫诲瀷" :formatter="setResCategory" />
+          <el-table-column align="center" prop="type" label="鏁版嵁绫诲瀷" :formatter="setResType" />
+        </el-table>
+        <div class="pagination_box" style="margin-top: 15px">
+          <el-pagination
+            @size-change="handleSizeChange"
+            @current-change="handleCurrentChange"
+            :current-page="listData.pageIndex"
+            :page-sizes="[10, 50, 100, 200]"
+            :page-size="listData.pageSize"
+            layout="total, sizes, prev, pager, next, jumper"
+            :total="listData.count"
+          ></el-pagination>
+        </div>
       </div>
     </el-dialog>
   </div>
@@ -221,8 +272,10 @@
 } from "vue";
 import { Plus, Delete, Top, Bottom } from "@element-plus/icons-vue";
 import { ElMessage } from "element-plus";
-import { serve_type, data_type } from "./js/layerManage.js";
+import { serve_type, data_type, category_type } from "./js/layerManage.js";
 import { removeToken, getToken } from "@/utils/auth";
+import { res_selectByPageAndCount } from "@/api/api";
+import { Search } from "@element-plus/icons-vue";
 const stretchValue = ref("");
 const emits = defineEmits(["SETstate", "addlayer", "delLayer"]);
 //defineProps 鏉ユ帴鏀剁粍浠剁殑浼犲��
@@ -230,7 +283,7 @@
   layerTree: Array,
 });
 let treeRef = ref();
-
+let multipleTable = ref();
 const stretchOptions = [
   {
     value: "鐩綍",
@@ -291,6 +344,7 @@
   children: "children",
 };
 let dialogVisible = ref(false);
+let dialogService = ref(false);
 // 褰撳墠閫変腑鐨勮妭鐐� id
 const selectedNodeId = ref(null as any); //鍋氱被鍨嬫柇瑷�澶勭悊
 const selectedObj = ref(null);
@@ -299,34 +353,193 @@
 let dataType = ref(null);
 let serveType = ref(null);
 let backUpData = ref(null);
+let listData = ref({
+  pageIndex: 1,
+  pageSize: 10,
+  count: 0,
+  name: "",
+});
+let tableData = ref([]);
+let multipleSelection = ref([]);
+let insertServiceActive = ref(false);
+let addlocation = 0;
+let checkedStaste = false;
+const insertStart = () => {
+  var data = serveType.value[0].value;
+  setInsertDataTypeChange(serveType.value[0].value);
+  var type = dataType.value[0].value;
+  insertData.value = {
+    cnName: null,
+    serveType: null,
+    url: null,
+    dataType: null,
+    bak: null,
+    isShow: "1",
+    isProject: "0",
+    enName: "",
+    isLayer: null,
+    category: null,
+    service: "0",
+    status: "1",
+    type: type,
+    data: data,
+  };
+};
+// 鏂板鍙栨秷
+const submitCancel = () => {
+  dialogVisible.value = false;
+  insertStart();
+};
+
+const handleCurrentChange = (val) => {
+  listData.value.pageIndex = val;
+  getServiceData();
+};
+const handleSizeChange = (val) => {
+  listData.value.pageSize = val;
+  getServiceData();
+};
+const setResType = (row, column) => {
+  switch (row.type) {
+    case 0:
+      return "URL";
+    case 1:
+      return "TMS";
+    case 2:
+      return "WMTS";
+    case 3:
+      return "WMS";
+    case 4:
+      return "WFS";
+    case 5:
+      return "Tileset";
+    default:
+      return "";
+  }
+};
+const setResCategory = (row, column) => {
+  switch (row.category) {
+    case 0:
+      return "鍏朵粬";
+    case 1:
+      return "GisServer";
+    case 2:
+      return "GeoServer";
+    case 3:
+      return "鏁扮畝";
+    default:
+      return "";
+  }
+};
+const selectChange = (selection, row) => {
+  multipleSelection.value = row;
+  if (selection.length > 1) {
+    let del_row = selection.shift();
+    multipleTable.value.toggleRowSelection(del_row, false);
+  }
+};
+const setServiceCanel = () => {
+  dialogService.value = false;
+  multipleSelection.value = [];
+  tableData.value = [];
+  listData.value = {
+    pageIndex: 1,
+    pageSize: 10,
+    count: 0,
+    name: "",
+  };
+};
+const setServiceConfirm = () => {
+  if (multipleSelection.value.length <= 0) {
+    return ElMessage("鏈�夋嫨璧勬簮鏁版嵁");
+  }
+  var url, serviceUrl;
+  if (multipleSelection.value.status == 1) {
+    serviceUrl = multipleSelection.value.url;
+    url = multipleSelection.value.url;
+  } else if (multipleSelection.value.status == 2) {
+    var token = getToken();
+    if (
+      multipleSelection.value.proxy &&
+      multipleSelection.value.proxy.indexOf("{token}") > -1
+    ) {
+      serviceUrl =
+        config.BASE_URL +
+        multipleSelection.value.proxy.replaceAll("{token}", token);
+    } else {
+      serviceUrl = multipleSelection.value.url;
+    }
+
+    url = multipleSelection.value.proxy;
+  }
+  if (dialogVisible.value) {
+    setInsertDataTypeChange(multipleSelection.value.data);
+    insertData.value.cnName = multipleSelection.value.cnName;
+    insertData.value.enName = multipleSelection.value.enName;
+    insertData.value.type = multipleSelection.value.type;
+    insertData.value.resid = multipleSelection.value.id;
+    insertData.value.serviceUrl = serviceUrl;
+    insertData.value.url = url;
+    insertData.value.data = multipleSelection.value.data;
+    insertData.value.tab = multipleSelection.value.tab;
+    insertData.value.category = multipleSelection.value.category;
+    insertServiceActive.value = true;
+  } else {
+    formInline.value.cnName = multipleSelection.value.cnName;
+    formInline.value.enName = multipleSelection.value.enName;
+    formInline.value.type = multipleSelection.value.type;
+    formInline.value.resid = multipleSelection.value.id;
+    formInline.value.serviceUrl = serviceUrl;
+    formInline.value.data = multipleSelection.value.data;
+    formInline.value.tab = multipleSelection.value.tab;
+    formInline.value.url = url;
+    serviceActive.value = true;
+    // this.formInline.status = '1';
+  }
+  dialogService.value = false;
+};
+const setServiceRest = () => {
+  listData.value = {
+    pageIndex: 1,
+    pageSize: 10,
+    count: 0,
+    name: "",
+  };
+  getServiceData();
+};
+const setServiceQuery = () => {
+  listData.value.pageIndex = 1;
+  listData.value.pageSize = 10;
+  listData.value.count = 0;
+  getServiceData();
+};
+const getServiceData = async () => {
+  const data = await res_selectByPageAndCount(listData.value);
+  tableData.value = data.result;
+  listData.value.count = data.count;
+  dialogService.value = true;
+};
+
 const insertLayerData = (res) => {
-  // if (res == 1) {
-  //   //鏂板鍚岀骇
-  //   id = this.formInline.pid;
-  //   let pchildNodes = this.$refs.tree.getNode(this.newNode.id).parent
-  //     .childNodes;
-  //   orderNum = this.getMaxOrderNum(pchildNodes);
-  //   lever = this.formInline.level;
-  // } else if (res == 2) {
-  //   //鏂板瀛愮骇
-  //   id = this.formInline.id;
-  //   let pchildNodes = this.$refs.tree.getNode(this.newNode.id).childNodes;
-  //   orderNum = this.getMaxOrderNum(pchildNodes);
-  //   lever = this.formInline.level + 1;
-  // }
-  // this.insertData.pid = id;
-  // this.insertData.level = lever;
-  // this.insertData.orderNum = orderNum;
+  if (!checkedStaste) {
+    return ElMessage.warning("璇峰厛鐐瑰嚮閫変腑鐩稿簲鍥惧眰");
+  }
+  addlocation = res;
 
   dialogVisible.value = true;
 };
 //淇敼閲嶇疆
 const updateRest = () => {
   var res = JSON.parse(backUpData.value);
-  formInline.value = res;
-  formInline.value.isLayer = res.isLayer.toString();
+  if (res) {
+    formInline.value = res;
+    formInline.value.isLayer = res.isLayer.toString();
 
-  formInline.value.status = res.status.toString();
+    if (formInline.value.status) {
+      formInline.value.status = res.status.toString();
+    }
+  }
+  dialogVisible.value = false;
   // this.formInline.isProject = res.isProject.toString();
 };
 //涓嬫媺鑿滃崟鍒濆鍖�
@@ -374,9 +587,17 @@
   setInsertDataTypeChange(res);
   formInline.value.type = dataType.value[0].value;
 };
+const setInsertServiceChange = (res) => {
+  if (res == "1") {
+    setServiceRest();
+  } else {
+    insertServiceActive.value = false;
+    insertData.value.resid = 0;
+  }
+};
 const setServiceChange = (res) => {
   if (res == "1") {
-    // this.setServiceRest()
+    setServiceRest();
   } else {
     serviceActive.value = false;
     formInline.value.resid = 0;
@@ -386,28 +607,65 @@
   data: Tree,
   checked: boolean,
   indeterminate: boolean
-) => {
-  console.log(data, checked, indeterminate);
-};
+) => {};
 const onSubmit = () => {
-  console.log("submit!");
+  if (!checkedStaste) {
+    return ElMessage.warning("璇峰厛鐐瑰嚮閫変腑鐩稿簲鍥惧眰");
+  }
+  // selectedObj.value = formInline.value;
+  let node = treeRef.value.getNode(selectedObj.value);
+  // 灏嗗彉鍔ㄤ箣鍓嶇殑node澶囦唤
+  let copyNode = { ...node };
+  copyNode.previousSibling = { ...node.previousSibling };
+  copyNode.nextSibling = { ...node.nextSibling };
+  copyNode.parent = { ...node.parent };
+
+  if (Object.keys(copyNode.previousSibling).length !== 0) {
+    // 鍒犻櫎鍘熷厛鐨刵ode
+    treeRef.value.remove(node.data);
+    // 澶嶅埗璇ode鍒版寚瀹氫綅缃�(鍙傛暟锛�1. 瑕佸鍔犵殑鑺傜偣鐨� data 2. 瑕佸鍔犵殑鑺傜偣鐨勫悗涓�涓妭鐐圭殑 data銆乲ey 鎴栬�� node)
+    treeRef.value.insertAfter(formInline.value, copyNode.previousSibling.data);
+
+    return;
+  } else if (Object.keys(copyNode.nextSibling).length !== 0) {
+    // 鍒犻櫎鍘熷厛鐨刵ode
+    treeRef.value.remove(node.data);
+    treeRef.value.insertBefore(formInline.value, copyNode.nextSibling.data);
+
+    return;
+  } else if (Object.keys(copyNode.parent).length !== 0) {
+    // 鍒犻櫎鍘熷厛鐨刵ode
+    treeRef.value.remove(node.data);
+    treeRef.value.append(
+      formInline.value,
+      treeRef.value.getNode(copyNode.parent.data)
+    );
+
+    return;
+  }
+  ElMessage({
+    message: "淇敼鎴愬姛",
+    type: "success",
+  });
+  dialogVisible.value = false;
 };
 
 // 澶勭悊鑺傜偣鐐瑰嚮浜嬩欢
 function handleNodeClick(data: any) {
-  console.log(data);
-  console.log(formInline.value);
   if (data.id === selectedNodeId.value) {
     // 濡傛灉褰撳墠鑺傜偣宸茬粡閫変腑锛屽垯鍙栨秷閫変腑
     selectedNodeId.value = null;
+    checkedStaste = false;
   } else {
+    checkedStaste = true;
     // 鍚﹀垯閫変腑褰撳墠鑺傜偣
     selectedNodeId.value = data.id;
     selectedObj.value = data;
     backUpData.value = JSON.stringify(data);
     // this.currentData = JSON.stringify(result)
-    formInline.value = data;
-    formInline.value.isLayer = data.isLayer.toString();
+    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;
     } else {
@@ -419,7 +677,7 @@
     } else if (serviceActive.value) {
       var token = getToken();
       if (data.url.indexOf("{token}") > -1) {
-        url = BASE_URL + data.url.replaceAll("{token}", token);
+        url = config.BASE_URL + data.url.replaceAll("{token}", token);
       } else {
         url = data.url;
       }
@@ -428,41 +686,47 @@
   }
 }
 //鏂板
-const added = (t) => {
+const added = () => {
   var id = "";
   for (var i = 0; i < 7; i++) {
     id += Math.floor(Math.random() * 10);
   }
   var addObj = {
+    isLayer: parseInt(insertData.value.isLayer),
     id: id,
-    cnName: formInline.value.name,
-    region: formInline.value.region,
-    url: formInline.value.layerUrl,
-    children: [],
-    type: 2, //鏁版嵁绫诲瀷
+    cnName: insertData.value.cnName,
+    url: insertData.value.serviceUrl,
+    type: insertData.value.type, //鏁版嵁绫诲瀷
     proxy: null,
-    data: 0,
-    tab: "", //Geoserver 鍚嶇О锛�
-    category: "", //鏈嶅姟绫诲埆 Geoserver ,
+    data: insertData.value.data, //鏁版嵁绫诲瀷
+    tab: insertData.value.tab, //Geoserver 鍚嶇О锛�
+    category: insertData.value.category, //鏈嶅姟绫诲埆 Geoserver , 1 GisServer 2 GeoServer 3鏁扮畝
   };
-  if (formInline.value.region == "鐩綍") {
-    addObj.type = 1;
-  }
-
-  if (t == "t") {
-    // console.log(treeRef.value.getNode(selectedObj.value));
-    // addObj.parentId = selectedObj.value.parentId;
+  debugger;
+  if (addlocation == 1) {
+    //鏂板鍚岀骇
     treeRef.value.insertAfter(addObj, treeRef.value.getNode(selectedObj.value));
-  } else {
-    // addObj.parentId = selectedNodeId.value;
+  } else if (addlocation == 2) {
+    //鏂板瀛愮骇
     treeRef.value.append(addObj, treeRef.value.getNode(selectedObj.value));
   }
+  dialogVisible.value = false;
+  ElMessage({
+    message: "娣诲姞鎴愬姛",
+    type: "success",
+  });
 };
 //鍒犻櫎
 const delLayer = () => {
-  console.log(selectedObj.value);
-  console.log(treeRef.value.getNode(selectedObj.value));
+  if (!selectedObj.value) {
+    return ElMessage.warning("璇峰厛鐐瑰嚮閫変腑鐩稿簲鍥惧眰");
+  }
+
   treeRef.value.remove(treeRef.value.getNode(selectedObj.value));
+  ElMessage({
+    message: "鍒犻櫎鎴愬姛",
+    type: "success",
+  });
   // emits("delLayer", selectedNodeId.value);
 };
 //鍥惧眰璁剧疆寮规
@@ -589,7 +853,7 @@
       align-items: center;
 
       .titleLable {
-        font-size: 24px;
+        font-size: 18px;
         font-family: Source Han Sans CN;
         font-weight: 400;
         color: #ffffff;
@@ -609,6 +873,11 @@
     height: 92%;
     overflow: auto;
   }
+
+  /deep/.el-tree-node__content {
+    font-size: 16px;
+  }
+
   .layerContent::-webkit-scrollbar {
     width: 8px;
   }
@@ -769,4 +1038,54 @@
   color: #46a6ff;
   border: 1px solid #46a6ff;
 }
+/deep/ .el-dialog {
+  background-color: rgba(7, 8, 14, 1) !important;
+  box-shadow: inset 0px 10px 40px 10px rgba(38, 47, 71, 1) !important;
+  border: 1px solid #d6e4ff !important;
+  .el-dialog__title {
+    color: #dcdfe6;
+  }
+  .el-form-item__label {
+    color: #fff;
+  }
+}
+.tableForm {
+  margin-bottom: 20px;
+}
+.el-table {
+  background: rgba(7, 8, 14, 1);
+}
+.el-table /deep/ td {
+  background-color: rgba(7, 8, 14, 1);
+  color: white;
+}
+
+.el-table /deep/ th {
+  background-color: rgba(7, 8, 14, 1);
+  color: white;
+}
+/deep/ .el-table__header th,
+/deep/ .el-table__header tr,
+.el-table /deep/ th.el-table__cell,
+/deep/ .el-table--enable-row-transition .el-table__body td.el-table__cell {
+  background-color: rgba(7, 8, 14, 1);
+}
+
+/deep/ .el-table tr:hover > td {
+  background-color: rgba(7, 8, 14, 1) !important;
+}
+.el-table /deep/ tbody tr:hover {
+  background-color: rgba(7, 8, 14, 1) !important;
+}
+.el-pagination {
+  /deep/ .btn-prev,
+  /deep/ .btn-next,
+  /deep/ .number {
+    background-color: transparent;
+    color: #fff;
+  }
+  /deep/ .is-active {
+    color: #409eff;
+  }
+}
 </style>

--
Gitblit v1.9.3