From ec86ce630c3bf6ef4abe5f52ecde21eeda03c5e7 Mon Sep 17 00:00:00 2001
From: WX <1377869194@qq.com>
Date: 星期二, 15 八月 2023 10:59:21 +0800
Subject: [PATCH] Merge branch 'master' of http://192.168.20.39:8989/r/LunarMidplane

---
 src/views/datamanage/layerManagement.vue |  710 ++++++++++++++++++++++++++++++++++++++++++----------------
 1 files changed, 515 insertions(+), 195 deletions(-)

diff --git a/src/views/datamanage/layerManagement.vue b/src/views/datamanage/layerManagement.vue
index 9caeb2c..9ddd70c 100644
--- a/src/views/datamanage/layerManagement.vue
+++ b/src/views/datamanage/layerManagement.vue
@@ -1,9 +1,9 @@
 <template>
   <div class="subpage_Box">
     <My-bread :list="[
-          `${$t('dataManage.dataManage')}`,
-          `${$t('dataManage.layerManage')}`,
-        ]"></My-bread>
+            `${$t('dataManage.dataManage')}`,
+            `${$t('dataManage.layerManage')}`,
+          ]"></My-bread>
     <el-divider />
     <div class="mainBox">
 
@@ -35,15 +35,15 @@
         <div
           class="inquire"
           style="
-            align-items: center;
-            display: flex;
-            justify-content: space-between;
-          "
+              align-items: center;
+              display: flex;
+              justify-content: space-between;
+            "
         >
           <el-breadcrumb separator="/">
             <el-breadcrumb-item :to="{ path: '/' }">{{
-              
-            }}</el-breadcrumb-item>
+                
+              }}</el-breadcrumb-item>
           </el-breadcrumb>
           <div style="margin-right: -5px">
             <div class="menuTop">
@@ -58,7 +58,7 @@
                   >{{ $t("shuJuGuanLi.butten.NewPeer") }}</el-button>
                 </el-form-item>
                 <!-- 瀛愮骇鑺傜偣娣诲姞 -->
-                <el-form-item v-show="menuStatus.insert">
+                <el-form-item v-show="menuStatus.insert  &&  formInline.isLayer == 0">
                   <el-button
                     type="success"
                     size="small"
@@ -105,83 +105,74 @@
             class="demo-form-inline"
             label-width="150px"
           >
+
+            <!-- 鑿滃崟绫诲瀷 -->
+            <el-form-item :label="$t('dataManage.layerObj.layerType')">
+              <el-select
+                :placeholder="$t('dataManage.layerObj.prompt2')"
+                style="width: 60%;"
+                v-model="formInline.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="$t('dataManage.layerObj.serviceResources')"
+            >
+              <el-button
+                size="small"
+                class="serviceButton"
+                @click="setServiceChange('0')"
+                key="0"
+                :class="{serviceActive: !serviceActive }"
+              >{{$t('dataManage.layerObj.isfalse')}}</el-button>
+              <el-button
+                size="small"
+                class="serviceButton"
+                @click="setServiceChange('1')"
+                key="1"
+                :class="{serviceActive: serviceActive}"
+              >{{$t('dataManage.layerObj.istrue')}}</el-button>
+
+            </el-form-item>
             <!-- 鑿滃崟鍚嶇О -->
             <el-form-item :label="$t('dataManage.layerObj.layerName')">
               <el-input
                 :placeholder="$t('dataManage.layerObj.prompt1')"
                 style="width: 60%;"
                 v-model="formInline.cnName"
-               
+                :disabled="serviceActive"
               ></el-input>
             </el-form-item>
-            <!-- 鑿滃崟绫诲瀷 -->
-            <el-form-item :label="$t('dataManage.layerObj.layerType')">
-              <el-select
-                :placeholder="$t('dataManage.layerObj.prompt2')"
-                clearable
-                style="width: 60%;"
-                v-model="formInline.type"
-               
-              >
-                <el-option
-                  label="鐩綍"
-                  value='1'
-                ></el-option>
-                <el-option
-                  label="鍥惧眰"
-                  value='2'
-                ></el-option>
-              </el-select>
-            </el-form-item>
-            <!-- 鏈嶅姟绫诲瀷 -->
-            <el-form-item
-              v-show="formInline.type == 2"
-              :label="$t('dataManage.layerObj.serviceType')"
-            >
-              <el-select
-                clearable
-                style="width: 60%;"
-                v-model="formInline.serveType"
-                :placeholder="$t('dataManage.layerObj.prompt3')"
-              >
-                <el-option
-                  v-for="item in serveType"
-                  :key="item.value"
-                  :label="item.label"
-                  :value="item.value"
-                >
-                </el-option>
-              </el-select>
-            </el-form-item>
-            <!-- 鏈嶅姟鍦板潃 -->
-            <el-form-item
-              v-show="formInline.type == 2"
-              :label="$t('dataManage.layerObj.serviceAddress')"
-            >
-              <el-input
-                :placeholder="$t('dataManage.layerObj.prompt4')"
-                style="width: 60%;"
-                v-model="formInline.url"
-              ></el-input>
-            </el-form-item>
-            <!-- 鑻辨枃琛ㄥ悕 -->
-            <el-form-item
-              v-show="formInline.type == 2 && formInline.serveType =='WMS'"
-              :label="$t('dataManage.layerObj.enTableName')"
-            >
+            <!-- 鑻辨枃鍚嶇О -->
+            <el-form-item :label="$t('dataManage.layerObj.englishName')">
               <el-input
                 :placeholder="$t('dataManage.layerObj.prompt6')"
                 style="width: 60%;"
                 v-model="formInline.enName"
+                :disabled="serviceActive"
               ></el-input>
             </el-form-item>
+
             <!-- 鏁版嵁绫诲瀷 -->
-            <el-form-item :label="$t('dataManage.layerObj.dataType')">
+            <el-form-item
+              v-show="formInline.isLayer == 1"
+              :label="$t('dataManage.layerObj.firm')"
+            >
               <el-select
-                clearable
                 style="width: 60%;"
-                v-model="formInline.dataType"
-                :placeholder="$t('dataManage.layerObj.prompt8')"
+                v-model="formInline.type"
+                :placeholder="$t('dataManage.layerObj.prompt3')"
+                :disabled="serviceActive"
               >
                 <el-option
                   v-for="item in dataType"
@@ -192,34 +183,35 @@
                 </el-option>
               </el-select>
             </el-form-item>
+            <!-- 鏈嶅姟鍦板潃 -->
+            <el-form-item
+              v-show="formInline.isLayer == 1"
+              :label="$t('dataManage.layerObj.serviceAddress')"
+            >
+              <el-input
+                :placeholder="$t('dataManage.layerObj.prompt4')"
+                style="width: 60%;"
+                v-model="formInline.serviceUrl"
+                :disabled="serviceActive"
+              ></el-input>
+            </el-form-item>
+
             <!-- 鏄惁鏄剧ず -->
             <el-form-item
-              v-show="formInline.type == 2"
+              v-show="formInline.isLayer == 1"
               :label="$t('dataManage.layerObj.displayOrNot')"
             >
+
               <el-radio
-                v-model="formInline.isShow"
+                v-model="formInline.status"
                 label="0"
-              > {{$t('dataManage.layerObj.isfalse')}}</el-radio>
+              >{{$t('dataManage.layerObj.isStop')}}</el-radio>
               <el-radio
-                v-model="formInline.isShow"
+                v-model="formInline.status"
                 label="1"
-              >{{$t('dataManage.layerObj.istrue')}}</el-radio>
+              > {{$t('dataManage.layerObj.isEnable')}}</el-radio>
             </el-form-item>
-            <!-- 鏄惁涓洪」鐩暟鎹� -->
-            <el-form-item
-              v-show="formInline.type == 2"
-              :label="$t('dataManage.layerObj.isItProjectData')"
-            >
-              <el-radio
-                v-model="formInline.isProject"
-                label="0"
-              > {{$t('dataManage.layerObj.isfalse')}}</el-radio>
-              <el-radio
-                v-model="formInline.isProject"
-                label="1"
-              >{{$t('dataManage.layerObj.istrue')}}</el-radio>
-            </el-form-item>
+
             <!-- 鎻忚堪 -->
             <el-form-item :label="$t('common.bak')">
               <el-input
@@ -250,86 +242,94 @@
       width="50%"
     >
       <div style="width: 100%;max-height: 63vh;overflow-y: auto; ">
+        <!-- <el-form
+          :model="insertData"
+          class="demo-form-inline"
+          label-width="150px"
+        > -->
         <el-form
           :model="insertData"
           class="demo-form-inline"
           label-width="150px"
         >
-          <!-- 鑿滃崟鍚嶇О -->
-          <el-form-item :label="$t('dataManage.layerObj.layerName')">
-            <el-input
-              style="width: 80%;"
-              v-model="insertData.cnName"
-              :placeholder="$t('dataManage.layerObj.prompt1')"
-            ></el-input>
-          </el-form-item>
           <!-- 鑿滃崟绫诲瀷 -->
           <el-form-item :label="$t('dataManage.layerObj.layerType')">
             <el-select
-              clearable
-              style="width: 80%;"
-              v-model="insertData.type"
               :placeholder="$t('dataManage.layerObj.prompt2')"
+              style="width: 60%;"
+              v-model="insertData.isLayer"
             >
               <el-option
-                label="鐩綍"
-                value='1'
+                label="鍥惧眰缁�"
+                value='0'
               ></el-option>
               <el-option
                 label="鍥惧眰"
-                value='2'
+                value='1'
               ></el-option>
             </el-select>
           </el-form-item>
-          <!-- 鏈嶅姟绫诲瀷 -->
           <el-form-item
-            v-show="insertData.type == 2"
-            :label="$t('dataManage.layerObj.serviceType')"
+            v-show="insertData.isLayer == 1"
+            :label="$t('dataManage.layerObj.serviceResources')"
           >
-            <el-select
-              clearable
-              style="width: 80%;"
-              v-model="insertData.serveType"
-              :placeholder="$t('dataManage.layerObj.prompt3')"
-            >
-              <el-option
-                v-for="item in serveType"
-                :key="item.value"
-                :label="item.label"
-                :value="item.value"
-              >
-              </el-option>
-            </el-select>
+            <!-- <el-button
+              size="small"
+              class="serviceButton"
+              @click="setServiceChange('0')"
+              :class="{serviceActive: insertData.service === '0'}"
+            >{{$t('dataManage.layerObj.isfalse')}}</el-button>
+            <el-button
+              size="small"
+              class="serviceButton"
+              @click="setServiceChange('1')"
+              :class="{serviceActive: insertData.service === '1'}"
+            >{{$t('dataManage.layerObj.istrue')}}</el-button> -->
+            <el-button
+              size="small"
+              class="serviceButton"
+              @click="setInsertServiceChange('0')"
+              key="0"
+              :class="{serviceActive: !insertServiceActive }"
+            >{{$t('dataManage.layerObj.isfalse')}}</el-button>
+            <el-button
+              size="small"
+              class="serviceButton"
+              @click="setInsertServiceChange('1')"
+              key="1"
+              :class="{serviceActive: insertServiceActive}"
+            >{{$t('dataManage.layerObj.istrue')}}</el-button>
+
           </el-form-item>
-          <!-- 鏈嶅姟鍦板潃 -->
-          <el-form-item
-            v-show="insertData.type == 2"
-            :label="$t('dataManage.layerObj.serviceAddress')"
-          >
+          <!-- 鑿滃崟鍚嶇О -->
+          <el-form-item :label="$t('dataManage.layerObj.layerName')">
             <el-input
-              :placeholder="$t('dataManage.layerObj.prompt4')"
-              style="width: 80%;"
-              v-model="insertData.url"
+              :disabled="insertServiceActive"
+              :placeholder="$t('dataManage.layerObj.prompt1')"
+              style="width: 60%;"
+              v-model="insertData.cnName"
             ></el-input>
           </el-form-item>
-          <!-- 鑻辨枃琛ㄥ悕 -->
-          <el-form-item
-            v-show="insertData.type == 2 && insertData.serveType =='WMS'"
-            :label="$t('dataManage.layerObj.enTableName')"
-          >
+          <!-- 鑻辨枃鍚嶇О -->
+          <el-form-item :label="$t('dataManage.layerObj.englishName')">
             <el-input
+              :disabled="insertServiceActive"
               :placeholder="$t('dataManage.layerObj.prompt6')"
-              style="width: 80%;"
+              style="width: 60%;"
               v-model="insertData.enName"
             ></el-input>
           </el-form-item>
+
           <!-- 鏁版嵁绫诲瀷 -->
-          <el-form-item :label="$t('dataManage.layerObj.dataType')">
+          <el-form-item
+            v-show="insertData.isLayer == 1"
+            :label="$t('dataManage.layerObj.firm')"
+          >
             <el-select
-              clearable
-              style="width: 80%;"
-              v-model="insertData.dataType"
-              :placeholder="$t('dataManage.layerObj.prompt8')"
+              :disabled="insertServiceActive"
+              style="width: 60%;"
+              v-model="insertData.type"
+              :placeholder="$t('dataManage.layerObj.prompt3')"
             >
               <el-option
                 v-for="item in dataType"
@@ -340,41 +340,39 @@
               </el-option>
             </el-select>
           </el-form-item>
+          <!-- 鏈嶅姟鍦板潃 -->
+          <el-form-item
+            v-show="insertData.isLayer == 1"
+            :label="$t('dataManage.layerObj.serviceAddress')"
+          >
+            <el-input
+              :disabled="insertServiceActive"
+              :placeholder="$t('dataManage.layerObj.prompt4')"
+              style="width: 60%;"
+              v-model="insertData.serviceUrl"
+            ></el-input>
+          </el-form-item>
           <!-- 鏄惁鏄剧ず -->
           <el-form-item
-            v-show="insertData.type == 2"
+            v-show="insertData.isLayer == 1"
             :label="$t('dataManage.layerObj.displayOrNot')"
           >
             <el-radio
-              v-model="insertData.isShow"
+              v-model="insertData.status"
               label="0"
-            > {{$t('dataManage.layerObj.isfalse')}}</el-radio>
+            >{{$t('dataManage.layerObj.isStop')}}</el-radio>
             <el-radio
-              v-model="insertData.isShow"
+              v-model="insertData.status"
               label="1"
-            >{{$t('dataManage.layerObj.istrue')}}</el-radio>
+            > {{$t('dataManage.layerObj.isEnable')}}</el-radio>
           </el-form-item>
-          <!-- 鏄惁涓洪」鐩暟鎹� -->
-          <el-form-item
-            v-show="insertData.type == 2"
-            :label="$t('dataManage.layerObj.isItProjectData')"
-          >
-            <el-radio
-              v-model="insertData.isProject"
-              label="0"
-            > {{$t('dataManage.layerObj.isfalse')}}</el-radio>
-            <el-radio
-              v-model="insertData.isProject"
-              label="1"
-            >{{$t('dataManage.layerObj.istrue')}}</el-radio>
-          </el-form-item>
+
           <!-- 鎻忚堪 -->
           <el-form-item :label="$t('common.bak')">
             <el-input
-              :placeholder="$t('dataManage.layerObj.prompt7')"
-              style="width: 80%;"
+              style="width: 60%;"
               v-model="insertData.bak"
-        
+              :placeholder="$t('dataManage.layerObj.prompt7')"
             ></el-input>
           </el-form-item>
           <el-form-item v-show="menuStatus.update">
@@ -386,15 +384,104 @@
             <el-button
               type="info"
               size="small"
+              @click="submitCancel( )"
             >{{$t('common.cancel')}}</el-button>
           </el-form-item>
 
         </el-form>
       </div>
     </el-dialog>
+    <el-dialog
+      :visible.sync="dialogService"
+      width="50%"
+      :show-close="false"
+    >
+      <div style="width: 100%;max-height: 63vh;overflow-y: auto; ">
+        <div style="  display: flex; justify-content: space-between;">
+          <div> <el-input
+              size="small"
+              v-model="listData.name"
+            > <i
+                slot="suffix"
+                class="el-input__icon el-icon-search"
+                @click="setServiceQuery"
+              ></i></el-input></div>
+          <div>
+            <el-button
+              type="info"
+              size="small"
+              @click="setServiceRest"
+            >{{$t('common.reset')}}</el-button>
+
+            <el-button
+              type="primary"
+              size="small"
+              @click="setServiceConfirm"
+            >{{$t('common.confirm')}}</el-button>
+            <el-button
+              type="info"
+              size="small"
+              @click="setServiceCanel"
+            >{{$t('common.cancel')}}</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="$t('common.index')"
+            width="70px"
+          />
+          <el-table-column
+            align="center"
+            prop="cnName"
+            :label="$t('dataManage.layerObj.resourceName')"
+          />
+
+          <el-table-column
+            align="center"
+            prop="category"
+            :label="$t('dataManage.layerObj.firm')"
+            :formatter="setResCategory"
+          />
+          <el-table-column
+            align="center"
+            prop="type"
+            :label="$t('dataManage.layerObj.dataType')"
+            :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>
 </template>
-<script>
+  <script>
 import MyBread from "../../components/MyBread.vue";
 import {
   getPerms,
@@ -402,7 +489,8 @@
   layer_update,
   layer_updates,
   layer_insert,
-  layer_delete
+  layer_delete,
+  res_selectByPageAndCount,
 } from "../../api/api";
 import $ from 'jquery'
 import { getToken } from '../../utils/auth';
@@ -415,19 +503,23 @@
     MyBread,
   },
   data() {
-
     return {
       filterText: null,
       formInline: {
         cnName: null,
         type: null,
         serveType: null,
-        serveType: null,
         url: null,
         dataType: null,
         bak: null,
-        isShow: '0',
-        isProject: '0'
+        isShow: '1',
+        isProject: '0',
+        enName: '',
+        isLayer: null,
+        category: null,
+        status: null,
+        service: '0',
+        serviceUrl: null
       },
       serveType: null,
       dataType: null,
@@ -450,6 +542,17 @@
       newNode: null,
       newData: [],
       oriData: [],
+      dialogService: false,
+      listData: {
+        pageIndex: 1,
+        pageSize: 10,
+        count: 0,
+        name: ''
+      },
+      tableData: [],
+      multipleSelection: [],
+      serviceActive: true,
+      insertServiceActive: false
     };
   },
   watch: {
@@ -458,6 +561,151 @@
     },
   },
   methods: {
+    setServiceConfirm() {
+      if (this.multipleSelection.length <= 0) {
+        return this.$message("鏈�夋嫨璧勬簮鏁版嵁");
+      }
+      var url, serviceUrl;
+      if (this.multipleSelection.status == 1) {
+        serviceUrl = this.multipleSelection.url;
+        url = this.multipleSelection.url;
+      } else if (this.multipleSelection.status == 2) {
+        var token = getToken()
+        serviceUrl = BASE_URL + this.multipleSelection.proxy.replaceAll('{token}', token);
+        url = this.multipleSelection.proxy;
+      }
+      if (this.dialogVisible) {
+        this.insertData.cnName = this.multipleSelection.cnName;
+        this.insertData.enName = this.multipleSelection.enName;
+        this.insertData.type = this.multipleSelection.type;
+        this.insertData.resid = this.multipleSelection.id
+        this.insertData.serviceUrl = serviceUrl;
+        this.insertData.url = url;
+        this.insertServiceActive = true
+        // this.insertData.status = this.multipleSelection.status;
+      } else {
+        this.formInline.cnName = this.multipleSelection.cnName;
+        this.formInline.enName = this.multipleSelection.enName;
+        this.formInline.type = this.multipleSelection.type;
+        this.formInline.resid = this.multipleSelection.id
+        this.formInline.serviceUrl = serviceUrl;
+        this.formInline.url = url;
+        this.serviceActive = true
+        // this.formInline.status = '1';
+
+      }
+      this.dialogService = false
+    },
+    setServiceRest() {
+      this.listData = {
+        pageIndex: 1,
+        pageSize: 10,
+        count: 0,
+        name: ''
+      }
+      this.getServiceData();
+    },
+    setServiceQuery() {
+      this.listData.pageIndex = 1;
+      this.listData.pageSize = 10;
+      this.listData.count = 0;
+      this.getServiceData();
+    },
+    setServiceCanel() {
+      this.dialogService = false;
+      this.multipleSelection = [];
+      this.tableData == [];
+      this.listData = {
+        pageIndex: 1,
+        pageSize: 10,
+        count: 0,
+        name: ''
+      }
+    },
+    selectChange(selection, row) {
+      this.multipleSelection = row
+      if (selection.length > 1) {
+        let del_row = selection.shift()
+        this.$refs.multipleTable.toggleRowSelection(del_row, false)
+      }
+    },
+    setResType(row, column) {
+      switch (row.type) {
+        case 0:
+          return "URL"
+          break;
+        case 1:
+          return "TMS"
+          break;
+        case 2:
+          return "WMTS"
+          break;
+        case 3:
+          return "WMS"
+          break;
+        case 4:
+          return "WFS"
+          break;
+        case 5:
+          return "Tileset"
+          break;
+        default:
+          return ""
+          break;
+      }
+    },
+    setResCategory(row, column) {
+      switch (row.category) {
+        case 0:
+          return "鍏朵粬"
+          break;
+        case 1:
+          return "GisServer"
+          break;
+        case 2:
+          return "GeoServer"
+          break;
+        case 3:
+          return "鏁扮畝"
+          break;
+        default:
+          return ""
+          break;
+      }
+    },
+    handleSizeChange(val) {
+      this.listData.pageSize = val;
+      this.getServiceData();
+    },
+    handleCurrentChange(val) {
+      this.listData.pageIndex = val;
+      this.getServiceData();
+    },
+    setServiceChange(res) {
+      if (res == '1') {
+        this.setServiceRest()
+      } else {
+        this.serviceActive = false
+        this.formInline.resid = 0
+      }
+    },
+    setInsertServiceChange(res) {
+      if (res == '1') {
+        this.setServiceRest()
+      } else {
+        this.insertServiceActive = false
+        this.insertData.resid = 0
+      }
+    },
+    async getServiceData() {
+      const data = await res_selectByPageAndCount(this.listData);
+      if (data.code != 200) {
+        return this.$message.error("璧勬簮鏁版嵁鑾峰彇澶辫触");
+      }
+      this.tableData = data.result;
+      this.listData.count = data.count;
+      this.dialogService = true
+    },
     //鍚戜笂鍚戜笅绉诲姩
     setEditNode(res) {
       let node = this.$refs.tree.getCurrentNode();
@@ -558,10 +806,19 @@
 
       this.getLayerTree();
     },
+    submitCancel() {
+      this.dialogVisible = false;
+      this.insertStart();
+    },
     async submitForm() {
-      var val = this.insertData;
-      val.isShow = parseInt(val.isShow);
-      val.isProject = parseInt(val.isProject);
+      var val = JSON.parse(JSON.stringify(this.insertData));
+      val.status = parseInt(val.status);
+      var token = getToken();
+      if (val.serviceUrl.indexOf(BASE_URL) > -1) {
+        val.serviceUrl = val.serviceUrl.replaceAll(BASE_URL, '');
+        val.serviceUrl = val.serviceUrl.replaceAll(token, '{token}')
+      }
+      val.url = val.serviceUrl
       const data = await layer_insert(val);
       if (data.code != 200) {
         return this.$message.error("鏂板澶辫触");
@@ -598,7 +855,7 @@
       this.dialogVisible = true;
     },
     getMaxOrderNum(res) {
-      var val = -100;
+      var val = 1;
       for (var i in res) {
         if (res[i].data.orderNum > val) {
           val = res[i].data.orderNum;
@@ -612,17 +869,28 @@
         cnName: null,
         type: null,
         serveType: null,
-        serveType: null,
         url: null,
         dataType: null,
         bak: null,
-        isShow: '0',
-        isProject: '0'
+        isShow: '1',
+        isProject: '0',
+        enName: '',
+        isLayer: null,
+        category: null,
+        status: null,
+        service: '0',
+        status: '1'
       }
     },
     //淇敼鏁版嵁
     async updateSend() {
       var val = JSON.parse(JSON.stringify(this.formInline));
+      var token = getToken();
+      if (val.serviceUrl.indexOf(BASE_URL) > -1) {
+        val.serviceUrl = val.serviceUrl.replaceAll(BASE_URL, '');
+        val.serviceUrl = val.serviceUrl.replaceAll(token, '{token}')
+      }
+      val.url = val.serviceUrl
       const data = await layer_update(val);
       this.currentData = JSON.stringify(this.formInline)
       if (data.code != 200) {
@@ -638,9 +906,10 @@
     updateRest() {
       var res = JSON.parse(this.backUpData);
       this.formInline = res;
-      this.formInline.type = res.type.toString();
-      this.formInline.isShow = res.isShow.toString();
-      this.formInline.isProject = res.isProject.toString();
+      this.formInline.isLayer = res.isLayer.toString();
+
+      this.formInline.status = res.status.toString();
+      // this.formInline.isProject = res.isProject.toString();
     },
     //鑾峰彇鍥惧眰鍒楄〃
     async getLayerTree() {
@@ -673,9 +942,23 @@
       this.backUpData = JSON.stringify(result)
       this.currentData = JSON.stringify(result)
       this.formInline = result;
-      this.formInline.type = result.type.toString();
-      this.formInline.isShow = result.isShow.toString();
-      this.formInline.isProject = result.isProject.toString();
+      this.formInline.isLayer = res.isLayer.toString();
+      this.formInline.status = result.status.toString();
+      if (res.resid && res.resid > 0) {
+        this.serviceActive = true
+      } else {
+        this.serviceActive = false
+      }
+      var url;
+      if (!this.serviceActive) {
+        url = result.url;
+      } else if (this.serviceActive) {
+        var token = getToken()
+        url = BASE_URL + result.url.replaceAll('{token}', token);
+      }
+      this.formInline.serviceUrl = url;
+
+      // this.formInline.isProject = result.isProject.toString();
     },
     //鍥惧眰鍒楄〃鐐瑰嚮浜嬩欢
     handleNodeClick(data, node) {
@@ -710,16 +993,16 @@
       var std = [];
       var ste = [];
       for (var i in serve_type) {
-        std.push({
-          value: serve_type[i],
-          label: serve_type[i],
+        ste.push({
+          value: serve_type[i].value,
+          label: serve_type[i].name,
         })
       }
       this.serveType = std;
       for (var i in data_type) {
-        ste.push({
-          value: data_type[i],
-          label: data_type[i],
+        std.push({
+          value: data_type[i].value,
+          label: data_type[i].name,
         })
       }
       this.dataType = ste;
@@ -730,12 +1013,15 @@
         cnName: null,
         type: null,
         serveType: null,
-        serveType: null,
         url: null,
         dataType: null,
         bak: null,
-        isShow: '0',
-        isProject: '0'
+        isShow: '1',
+        isProject: '0',
+        enName: '',
+        isLayer: null,
+        category: null,
+        serviceUrl: null
       }
     },
     //鑾峰彇鏉冮檺
@@ -778,9 +1064,9 @@
     this.getLayerTree();
   },
 };
-</script>
-
-<style lang="less" scoped>
+  </script>
+  
+  <style lang="less" scoped>
 .subpage_Box {
   //height: 96%;
   width: 98%;
@@ -816,9 +1102,43 @@
     }
   }
 }
+.serviceButton {
+  background: transparent !important;
+  color: #dcdfe6;
+}
+.serviceActive {
+  background: transparent !important;
+  color: #46a6ff;
+  border: 1px solid #46a6ff;
+}
 /deep/ .el-input__suffix {
-
-    top: 50%;
-    transform: translateY(-50%);
+  top: 50%;
+  transform: translateY(-50%);
+}
+/deep/.el-radio {
+  color: white;
 }
 </style>
+  <style>
+.el-select-dropdown {
+  background: #303030 !important;
+
+  border: 1px solid gray;
+}
+
+.el-select-dropdown__item {
+  background-color: transparent !important;
+  color: #fff;
+}
+
+.el-select-dropdown__item.hover,
+.el-select-dropdown__item:hover {
+  color: #ffff !important;
+  background: rgba(7, 8, 14, 0.3) !important;
+}
+
+.el-popper .popper__arrow,
+.el-popper .popper__arrow::after {
+  display: none !important;
+}
+</style>
\ No newline at end of file

--
Gitblit v1.9.3