From 1346c413ebdbbaed423a96172ae89854618ef30a Mon Sep 17 00:00:00 2001
From: surprise <15810472099@163.com>
Date: 星期二, 28 十一月 2023 10:51:25 +0800
Subject: [PATCH] 数据上传入库修改,图层管理添加单位信息

---
 src/views/datamanage/layerManagement.vue |  705 +++++++++++++++++++++++++++-------------------------------
 1 files changed, 333 insertions(+), 372 deletions(-)

diff --git a/src/views/datamanage/layerManagement.vue b/src/views/datamanage/layerManagement.vue
index 5d1dedc..f55216b 100644
--- a/src/views/datamanage/layerManagement.vue
+++ b/src/views/datamanage/layerManagement.vue
@@ -1,97 +1,60 @@
 <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">
 
-      <div
-        class="cataLogContent leftTree subpage_Div"
-        style="border: 1px solid #dcdfe6;"
-      >
+      <div class="cataLogContent leftTree subpage_Div" style="border: 1px solid #dcdfe6;">
         <div>
-          <el-input
-            v-model="filterText"
-            :placeholder="$t('dataManage.layerObj.prompt1')"
-            suffix-icon="el-icon-search"
-          ></el-input>
+          <el-input v-model="filterText" :placeholder="$t('dataManage.layerObj.prompt1')"
+            suffix-icon="el-icon-search"></el-input>
 
-          <el-tree
-            ref="tree"
-            :props="defaultProps"
-            node-key="id"
-            accordion
-            :data="treeData"
-            :default-expanded-keys="expandData"
-            @node-click="handleNodeClick"
-            :filter-node-method="filterNode"
-          >
+          <el-tree ref="tree" :props="defaultProps" node-key="id" accordion :data="treeData"
+            :default-expanded-keys="expandData" @node-click="handleNodeClick" :filter-node-method="filterNode">
           </el-tree>
         </div>
       </div>
       <div class="cataLog_rightContent right subpage_Div">
-        <div
-          class="inquire"
-          style="
+        <div class="inquire" style="
               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">
               <el-form :inline="true">
                 <el-form-item v-show="menuStatus.insert">
                   <!-- 鍚岀骇鑺傜偣娣诲姞 -->
-                  <el-button
-                    type="success"
-                    size="small"
-                    icon="el-icon-plus"
-                    @click="insertLayerData(1)"
-                  >{{ $t("shuJuGuanLi.butten.NewPeer") }}</el-button>
+                  <el-button type="success" size="small" icon="el-icon-plus" @click="insertLayerData(1)">{{
+                    $t("shuJuGuanLi.butten.NewPeer") }}</el-button>
                 </el-form-item>
                 <!-- 瀛愮骇鑺傜偣娣诲姞 -->
-                <el-form-item v-show="menuStatus.insert  &&  formInline.isLayer == 0">
-                  <el-button
-                    type="success"
-                    size="small"
-                    icon="el-icon-plus"
-                    @click="insertLayerData(2)"
-                  >{{ $t("shuJuGuanLi.butten.AddChild") }}</el-button>
+                <el-form-item v-show="menuStatus.insert && formInline.isLayer == 0">
+                  <el-button type="success" size="small" icon="el-icon-plus" @click="insertLayerData(2)">{{
+                    $t("shuJuGuanLi.butten.AddChild") }}</el-button>
                 </el-form-item>
                 <!-- 鍒犻櫎 -->
                 <el-form-item v-show="menuStatus.delete">
-                  <el-button
-                    icon="el-icon-delete"
-                    type="danger"
-                    size="small"
-                    @click="setDeleteNode( )"
-                  >{{ $t("shuJuGuanLi.butten.Delete") }}</el-button>
+                  <el-button icon="el-icon-delete" type="danger" size="small" @click="setDeleteNode()">{{
+                    $t("shuJuGuanLi.butten.Delete") }}</el-button>
                 </el-form-item>
                 <!-- 鍚戜笂绉诲姩 -->
                 <el-form-item v-show="menuStatus.delete">
-                  <el-button
-                    type="info"
-                    icon="el-icon-top"
-                    size="small"
-                    @click="setEditNode(1)"
-                  >{{ $t("shuJuGuanLi.butten.MoveUp") }}</el-button>
+                  <el-button type="info" icon="el-icon-top" size="small" @click="setEditNode(1)">{{
+                    $t("shuJuGuanLi.butten.MoveUp") }}</el-button>
                 </el-form-item>
                 <!-- 鍚戜笅绉诲姩 -->
                 <el-form-item v-show="menuStatus.delete">
-                  <el-button
-                    type="info"
-                    icon="el-icon-bottom"
-                    size="small"
-                    @click="setEditNode(2)"
-                  >{{ $t("shuJuGuanLi.butten.MoveDown") }}</el-button>
+                  <el-button type="info" icon="el-icon-bottom" size="small" @click="setEditNode(2)">{{
+                    $t("shuJuGuanLi.butten.MoveDown") }}</el-button>
                 </el-form-item>
               </el-form>
             </div>
@@ -99,179 +62,118 @@
 
         </div>
         <div class="dividing-line"></div>
-        <div style="padding: 10px;">
-          <el-form
-            :model="formInline"
-            class="demo-form-inline"
-            label-width="150px"
-          >
+        <div style="padding: 10px;height: 70vh;margin-top: 10px; overflow: auto;">
+          <el-form :model="formInline" 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 :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')"
-                :class="{serviceActive: formInline.service === '0'}"
-              >{{$t('dataManage.layerObj.isfalse')}}</el-button>
-              <el-button
-                size="small"
-                class="serviceButton"
-                @click="setServiceChange('1')"
-                :class="{serviceActive: formInline.service === '1'}"
-              >{{$t('dataManage.layerObj.istrue')}}</el-button>
+            <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="formInline.service =='1'"
-              ></el-input>
+              <el-input :placeholder="$t('dataManage.layerObj.prompt1')" style="width: 60%;"
+                v-model="formInline.cnName"></el-input>
             </el-form-item>
-            <!-- 鑻辨枃鍚嶇О -->
-            <el-form-item :label="$t('dataManage.layerObj.englishName')">
-              <el-input
-                :placeholder="$t('dataManage.layerObj.prompt6')"
-                style="width: 60%;"
-                v-model="formInline.enName"
-                :disabled="formInline.service =='1'"
-              ></el-input>
-            </el-form-item>
-
-            <!-- 鏁版嵁绫诲瀷 -->
-            <el-form-item
-              v-show="formInline.isLayer == 1"
-              :label="$t('dataManage.layerObj.serviceType')"
-            >
-              <el-select
-                style="width: 60%;"
-                v-model="formInline.type"
-                :placeholder="$t('dataManage.layerObj.prompt3')"
-                :disabled="formInline.service =='1'"
-              >
-                <el-option
-                  v-for="item in dataType"
-                  :key="item.value"
-                  :label="item.label"
-                  :value="item.value"
-                >
+            <!-- 璧勬簮绫诲埆 -->
+            <el-form-item v-show="formInline.isLayer == 1" :label="$t('dataManage.layerObj.firm')">
+              <el-select style="width: 60%;" v-model="formInline.category" :disabled="serviceActive"
+                :placeholder="$t('dataManage.layerObj.prompt3')">
+                <el-option v-for="item in serviceType" :key="item.value" :label="item.label" :value="item.value">
                 </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.url"
-                :disabled="formInline.service =='1'"
-              ></el-input>
+            <!-- 鏁版嵁绫诲瀷 -->
+            <el-form-item v-show="formInline.isLayer == 1" :label="$t('dataManage.layerObj.dataType')">
+              <el-select style="width: 60%;" v-model="formInline.data" :placeholder="$t('dataManage.layerObj.prompt3')"
+                :disabled="serviceActive" @change="setFromDataTypeClick">
+                <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.isLayer == 1" :label="$t('dataManage.layerObj.serviceType')">
+              <el-select style="width: 60%;" v-model="formInline.type" :placeholder="$t('dataManage.layerObj.prompt3')"
+                :disabled="serviceActive">
+                <el-option v-for="item in dataType" :key="item.value" :label="item.label" :value="item.value">
+                </el-option>
+              </el-select>
             </el-form-item>
 
-            <!-- 鏄惁鏄剧ず -->
-            <el-form-item
-              v-show="formInline.isLayer == 1"
-              :label="$t('dataManage.layerObj.displayOrNot')"
-            >
+            <!-- 鏈嶅姟鍦板潃 -->
+            <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.isLayer == 1 && formInline.category == 2"
+              :label="$t('dataManage.layerObj.englishName')">
+              <el-input :disabled="serviceActive" :placeholder="$t('dataManage.layerObj.prompt6')" style="width: 60%;"
+                v-model="formInline.tab"></el-input>
+            </el-form-item>
 
-              <el-radio
-                v-model="formInline.status"
-                label="0"
-              >{{$t('dataManage.layerObj.isStop')}}</el-radio>
-              <el-radio
-                v-model="formInline.status"
-                label="1"
-              > {{$t('dataManage.layerObj.isEnable')}}</el-radio>
+            <!-- 鑻辨枃鍚嶇О -->
+            <el-form-item v-show="formInline.isLayer == 1  "
+              :label="$t('dataManage.layerObj.unitName')">
+              <el-input :placeholder="$t('dataManage.layerObj.prompt20')" style="width: 60%;"
+                v-model="formInline.unit"></el-input>
+            </el-form-item>
+
+
+
+            <!-- 鏄惁鏄剧ず -->
+            <el-form-item v-show="formInline.isLayer == 1" :label="$t('dataManage.layerObj.enableOrNot')">
+
+              <el-radio v-model="formInline.status" label="0">{{ $t('dataManage.layerObj.isStop') }}</el-radio>
+              <el-radio v-model="formInline.status" label="1"> {{ $t('dataManage.layerObj.isEnable') }}</el-radio>
+            </el-form-item>
+            <!-- 鏄惁鏄剧ず -->
+            <el-form-item v-show="formInline.isLayer == 1" :label="$t('dataManage.layerObj.displayOrNot')">
+              <el-radio v-model="formInline.isShow" label="0">{{ $t('dataManage.layerObj.isfalse') }}</el-radio>
+              <el-radio v-model="formInline.isShow" label="1"> {{ $t('dataManage.layerObj.istrue') }}</el-radio>
             </el-form-item>
 
             <!-- 鎻忚堪 -->
             <el-form-item :label="$t('common.bak')">
-              <el-input
-                style="width: 60%;"
-                v-model="formInline.bak"
-                :placeholder="$t('dataManage.layerObj.prompt7')"
-              ></el-input>
+              <el-input style="width: 60%;" v-model="formInline.bak"
+                :placeholder="$t('dataManage.layerObj.prompt7')"></el-input>
             </el-form-item>
             <el-form-item v-show="menuStatus.update">
-              <el-button
-                type="primary"
-                size="small"
-                @click="updateSend()"
-              >{{$t('common.confirm')}}</el-button>
-              <el-button
-                type="info"
-                size="small"
-                @click="updateRest()"
-              >{{$t('common.reset')}}</el-button>
+              <el-button type="primary" size="small" @click="updateSend()">{{ $t('common.confirm') }}</el-button>
+              <el-button type="info" size="small" @click="updateRest()">{{ $t('common.reset') }}</el-button>
             </el-form-item>
           </el-form>
         </div>
       </div>
     </div>
-    <el-dialog
-      :title="$t('common.append')"
-      :visible.sync="dialogVisible"
-      width="50%"
-    >
+    <el-dialog :title="$t('common.append')" :visible.sync="dialogVisible" 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 :model="insertData" 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="insertData.isLayer"
-            >
-              <el-option
-                label="鍥惧眰缁�"
-                value='0'
-              ></el-option>
-              <el-option
-                label="鍥惧眰"
-                value='1'
-              ></el-option>
+            <el-select :placeholder="$t('dataManage.layerObj.prompt2')" style="width: 60%;" 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="insertData.isLayer == 1"
-            :label="$t('dataManage.layerObj.serviceResources')"
-          >
-            <el-button
+          <el-form-item v-show="insertData.isLayer == 1" :label="$t('dataManage.layerObj.serviceResources')">
+            <!-- <el-button
               size="small"
               class="serviceButton"
               @click="setServiceChange('0')"
@@ -282,182 +184,112 @@
               class="serviceButton"
               @click="setServiceChange('1')"
               :class="{serviceActive: insertData.service === '1'}"
-            >{{$t('dataManage.layerObj.istrue')}}</el-button>
+            >{{$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 :label="$t('dataManage.layerObj.layerName')">
-            <el-input
-              :disabled="insertData.service =='1'"
-              :placeholder="$t('dataManage.layerObj.prompt1')"
-              style="width: 60%;"
-              v-model="insertData.cnName"
-            ></el-input>
+            <el-input :placeholder="$t('dataManage.layerObj.prompt1')" style="width: 60%;"
+              v-model="insertData.cnName"></el-input>
           </el-form-item>
-          <!-- 鑻辨枃鍚嶇О -->
-          <el-form-item :label="$t('dataManage.layerObj.englishName')">
-            <el-input
-              :disabled="insertData.service =='1'"
-              :placeholder="$t('dataManage.layerObj.prompt6')"
-              style="width: 60%;"
-              v-model="insertData.enName"
-            ></el-input>
+          <!-- 璧勬簮绫诲埆 -->
+          <el-form-item v-show="insertData.isLayer == 1" :label="$t('dataManage.layerObj.firm')">
+            <el-select style="width: 60%;" v-model="insertData.category" :disabled="insertServiceActive"
+              :placeholder="$t('dataManage.layerObj.prompt3')">
+              <el-option v-for="item in serviceType" :key="item.value" :label="item.label" :value="item.value">
+              </el-option>
+            </el-select>
           </el-form-item>
-
           <!-- 鏁版嵁绫诲瀷 -->
-          <el-form-item
-            v-show="insertData.isLayer == 1"
-            :label="$t('dataManage.layerObj.serviceType')"
-          >
-            <el-select
-              :disabled="insertData.service =='1'"
-              style="width: 60%;"
-              v-model="insertData.type"
-              :placeholder="$t('dataManage.layerObj.prompt3')"
-            >
-              <el-option
-                v-for="item in dataType"
-                :key="item.value"
-                :label="item.label"
-                :value="item.value"
-              >
+          <el-form-item v-show="insertData.isLayer == 1" :label="$t('dataManage.layerObj.dataType')">
+            <el-select style="width: 60%;" v-model="insertData.data" :placeholder="$t('dataManage.layerObj.prompt3')"
+              :disabled="insertServiceActive" @change="setInsertDataTypeClick">
+              <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="insertData.isLayer == 1" :label="$t('dataManage.layerObj.serviceType')">
+            <el-select :disabled="insertServiceActive" style="width: 60%;" v-model="insertData.type"
+              :placeholder="$t('dataManage.layerObj.prompt3')">
+              <el-option v-for="item in dataType" :key="item.value" :label="item.label" :value="item.value">
               </el-option>
             </el-select>
           </el-form-item>
           <!-- 鏈嶅姟鍦板潃 -->
-          <el-form-item
-            v-show="insertData.isLayer == 1"
-            :label="$t('dataManage.layerObj.serviceAddress')"
-          >
-            <el-input
-              :disabled="insertData.service =='1'"
-              :placeholder="$t('dataManage.layerObj.prompt4')"
-              style="width: 60%;"
-              v-model="insertData.url"
-            ></el-input>
+          <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.isLayer == 1 && insertData.category == 2"
+            :label="$t('dataManage.layerObj.englishName')">
+            <el-input :disabled="insertServiceActive" :placeholder="$t('dataManage.layerObj.prompt6')" style="width: 60%;"
+              v-model="insertData.tab"></el-input>
+          </el-form-item>
+           <!-- 鑻辨枃鍚嶇О -->
+           <el-form-item v-show="formInline.isLayer == 1  "
+              :label="$t('dataManage.layerObj.unitName')">
+              <el-input :placeholder="$t('dataManage.layerObj.prompt20')" style="width: 60%;"
+                v-model="insertData.unit"></el-input>
+            </el-form-item>
+
+
+          <!-- 鏄惁鍚敤 -->
+          <el-form-item v-show="insertData.isLayer == 1" :label="$t('dataManage.layerObj.enableOrNot')">
+            <el-radio v-model="insertData.status" label="0">{{ $t('dataManage.layerObj.isStop') }}</el-radio>
+            <el-radio v-model="insertData.status" label="1"> {{ $t('dataManage.layerObj.isEnable') }}</el-radio>
           </el-form-item>
           <!-- 鏄惁鏄剧ず -->
-          <el-form-item
-            v-show="insertData.isLayer == 1"
-            :label="$t('dataManage.layerObj.displayOrNot')"
-          >
-            <el-radio
-              v-model="insertData.status"
-              label="0"
-            >{{$t('dataManage.layerObj.isStop')}}</el-radio>
-            <el-radio
-              v-model="insertData.status"
-              label="1"
-            > {{$t('dataManage.layerObj.isEnable')}}</el-radio>
+          <el-form-item v-show="insertData.isLayer == 1" :label="$t('dataManage.layerObj.displayOrNot')">
+            <el-radio v-model="insertData.isShow" label="0">{{ $t('dataManage.layerObj.isfalse') }}</el-radio>
+            <el-radio v-model="insertData.isShow" label="1"> {{ $t('dataManage.layerObj.istrue') }}</el-radio>
           </el-form-item>
-
           <!-- 鎻忚堪 -->
           <el-form-item :label="$t('common.bak')">
-            <el-input
-              style="width: 60%;"
-              v-model="insertData.bak"
-              :placeholder="$t('dataManage.layerObj.prompt7')"
-            ></el-input>
+            <el-input style="width: 60%;" v-model="insertData.bak"
+              :placeholder="$t('dataManage.layerObj.prompt7')"></el-input>
           </el-form-item>
           <el-form-item v-show="menuStatus.update">
-            <el-button
-              type="primary"
-              size="small"
-              @click="submitForm( )"
-            >{{$t('common.confirm')}}</el-button>
-            <el-button
-              type="info"
-              size="small"
-              @click="submitCancel( )"
-            >{{$t('common.cancel')}}</el-button>
+            <el-button type="primary" size="small" @click="submitForm()">{{ $t('common.confirm') }}</el-button>
+            <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"
-    >
+    <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-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="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>
+            <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 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" 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.serviceType')"
-            :formatter="setResCategory"
-          />
-          <el-table-column
-            align="center"
-            prop="type"
-            :label="$t('dataManage.layerObj.dataType')"
-            :formatter="setResType"
-          />
+          <el-table-column align="center" prop="category" :label="$t('dataManage.layerObj.serviceType')"
+            :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"
-          >
+        <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>
 
@@ -465,7 +297,7 @@
     </el-dialog>
   </div>
 </template>
-  <script>
+<script>
 import MyBread from "../../components/MyBread.vue";
 import {
   getPerms,
@@ -478,7 +310,7 @@
 } from "../../api/api";
 import $ from 'jquery'
 import { getToken } from '../../utils/auth';
-import { serve_type, data_type } from './js/layerManage.js'
+import { serve_type, data_type, category_type } from './js/layerManage.js'
 import { json } from "body-parser";
 
 export default {
@@ -496,13 +328,14 @@
         url: null,
         dataType: null,
         bak: null,
-        isShow: '1',
+        isShow: '0',
         isProject: '0',
         enName: '',
         isLayer: null,
         category: null,
         status: null,
-        service: '0'
+        service: '0',
+        serviceUrl: null
       },
       serveType: null,
       dataType: null,
@@ -520,7 +353,10 @@
       checkData: null,
       backUpData: null,
       dialogVisible: false,
-      insertData: {},
+      insertData: {
+        type: null,
+        data: null,
+      },
       currentData: null,
       newNode: null,
       newData: [],
@@ -534,6 +370,9 @@
       },
       tableData: [],
       multipleSelection: [],
+      serviceActive: true,
+      insertServiceActive: false,
+      serviceType: null
     };
   },
   watch: {
@@ -542,40 +381,83 @@
     },
   },
   methods: {
+    setFromDataTypeClick(res) {
+      this.setInsertDataTypeChange(res)
+      this.formInline.type = this.dataType[0].value
+    },
+    setInsertDataTypeClick(res) {
+      this.setInsertDataTypeChange(res)
+      this.insertData.type = this.dataType[0].value
+    },
+    setInsertDataTypeChange(res) {
+      var filter = this.serveType.filter(rs => {
+        if (rs.value == res) {
+          return rs
+        }
+      })
+      if (filter.length <= 0) return
+      var std = [];
+      var data = filter[0].children;
+      for (var i in data) {
+        for (var j in serve_type) {
+          if (serve_type[j].value == data[i]) {
+            std.push({
+              value: serve_type[j].value,
+              label: serve_type[j].name,
+            })
+          }
+        }
+      }
+      this.dataType = std
+    },
     setServiceConfirm() {
       if (this.multipleSelection.length <= 0) {
         return this.$message("鏈�夋嫨璧勬簮鏁版嵁");
       }
-
-      var url;
+      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()
-        url = BASE_URL + this.multipleSelection.proxy.replaceAll('{token}', token);
-      }
+        if (this.multipleSelection.proxy && this.multipleSelection.proxy.indexOf('{token}') > -1) {
+          serviceUrl = BASE_URL + this.multipleSelection.proxy.replaceAll('{token}', token);
+        } else {
+          serviceUrl = this.multipleSelection.url
+        }
 
+        url = this.multipleSelection.proxy;
+      }
       if (this.dialogVisible) {
+        this.setInsertDataTypeChange(this.multipleSelection.data);
         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.insertData.service = '1'
+        this.insertData.data = this.multipleSelection.data;
+        this.insertData.tab = this.multipleSelection.tab;
+        this.insertData.category = this.multipleSelection.category;
+        this.insertServiceActive = true
       } 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.data = this.multipleSelection.data;
+        this.formInline.tab = this.multipleSelection.tab;
+        this.formInline.category = this.multipleSelection.category;
         this.formInline.url = url;
-        this.formInline.service = '1'
+        this.serviceActive = true
+        // this.formInline.status = '1';
+
       }
-
-
-
       this.dialogService = false
-
     },
+
+
     setServiceRest() {
       this.listData = {
         pageIndex: 1,
@@ -664,6 +546,17 @@
     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() {
@@ -780,9 +673,15 @@
       this.insertStart();
     },
     async submitForm() {
-      var val = this.insertData;
+      var val = JSON.parse(JSON.stringify(this.insertData));
       val.status = parseInt(val.status);
-      // val.isProject = parseInt(val.isProject);
+      var token = getToken();
+      if (val.serviceUrl && val.serviceUrl.indexOf(BASE_URL) > -1) {
+        val.serviceUrl = val.serviceUrl.replaceAll(BASE_URL, '');
+        val.serviceUrl = val.serviceUrl.replaceAll(token, '{token}')
+      }
+      val.isShow = parseInt(val.isShow)
+      val.url = val.serviceUrl
       const data = await layer_insert(val);
       if (data.code != 200) {
         return this.$message.error("鏂板澶辫触");
@@ -801,11 +700,17 @@
       this.newNode = node;
       var id, lever, orderNum;
       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;
+        if (this.formInline.pid) {
+          id = this.formInline.pid;
+          let pchildNodes = this.$refs.tree.getNode(this.newNode.id).parent.childNodes
+          orderNum = this.getMaxOrderNum(pchildNodes);
+          lever = this.formInline.level;
+        } else {
+          let pchildNodes = this.$refs.tree.getNode(this.newNode.id).parent.childNodes
+          orderNum = this.getMaxOrderNum(pchildNodes);
+          lever = this.formInline.level;
+          id = this.formInline.pid;
+        }
       } else if (res == 2) {
         //鏂板瀛愮骇
         id = this.formInline.id;
@@ -816,6 +721,7 @@
       this.insertData.pid = id;
       this.insertData.level = lever;
       this.insertData.orderNum = orderNum;
+
       this.dialogVisible = true;
     },
     getMaxOrderNum(res) {
@@ -829,6 +735,10 @@
       return val;
     },
     insertStart() {
+      var data = this.serveType[0].value;
+      this.setInsertDataTypeChange(this.serveType[0].value)
+      var type = this.dataType[0].value
+      var category = this.serviceType[0].value
       this.insertData = {
         cnName: null,
         type: null,
@@ -836,19 +746,28 @@
         url: null,
         dataType: null,
         bak: null,
-        isShow: '1',
+        isShow: '0',
         isProject: '0',
         enName: '',
         isLayer: null,
-        category: null,
+        category: category,
         status: null,
         service: '0',
-        status: '1'
+        status: '1',
+        type: type,
+        data: data,
       }
     },
     //淇敼鏁版嵁
     async updateSend() {
       var val = JSON.parse(JSON.stringify(this.formInline));
+      var token = getToken();
+      if (val.serviceUrl && val.serviceUrl.indexOf(BASE_URL) > -1) {
+        val.serviceUrl = val.serviceUrl.replaceAll(BASE_URL, '');
+        val.serviceUrl = val.serviceUrl.replaceAll(token, '{token}')
+      }
+      val.isShow = parseInt(val.isShow)
+      val.url = val.serviceUrl
       const data = await layer_update(val);
       this.currentData = JSON.stringify(this.formInline)
       if (data.code != 200) {
@@ -871,13 +790,17 @@
     },
     //鑾峰彇鍥惧眰鍒楄〃
     async getLayerTree() {
-      const data = await layer_selectAll();
+      const data = await layer_selectAll({ flag: 0 });
       if (data.code != 200) {
         return this.$message.error("鍥惧眰鍒楄〃鏌ヨ澶辫触");
       }
       this.oriData = data.result;
       this.newData = data.result;
       var val = this.setTreeData(data.result);
+      val.sort(function (a, b) {
+        return a.orderNum - b.orderNum
+      })
+
       this.treeData = val;
       var cdata;
       if (this.currentData) {
@@ -902,11 +825,30 @@
       this.formInline = result;
       this.formInline.isLayer = res.isLayer.toString();
       this.formInline.status = result.status.toString();
+
+      this.formInline.isShow = res.isShow.toString();
+
+
       if (res.resid && res.resid > 0) {
-        this.formInline.service = '1'
+        this.serviceActive = true
       } else {
-        this.formInline.service = '0'
+        this.serviceActive = false
       }
+
+      var url;
+      if (!this.serviceActive) {
+        url = result.url;
+      } else if (this.serviceActive) {
+        var token = getToken()
+        if (result.url.indexOf('{token}') > -1) {
+          url = BASE_URL + result.url.replaceAll('{token}', token);
+        } else {
+          url = result.url;
+        }
+
+      }
+      this.formInline.serviceUrl = url;
+      this.setInsertDataTypeChange(this.formInline.data)
       // this.formInline.isProject = result.isProject.toString();
     },
     //鍥惧眰鍒楄〃鐐瑰嚮浜嬩欢
@@ -925,7 +867,6 @@
             return a.orderNum - b.orderNum
           })
         }
-
         branchArr.length > 0 ? (father.children = branchArr) : ""; // 缁欑埗绾ф坊鍔犱竴涓猚hildren灞炴�э紝骞惰祴鍊�
         // 灞炰簬鍚屼竴瀵硅薄闂锛屼緥濡傦細浠� a=b銆乧=1 锛岀劧鍚庡啀浠� b.c=c 锛� 閭d箞 a.c=b.c=c=1 锛涘悓鐞嗭紝鍚庣画浠� c.d=2 ,閭d箞 a.c.d 涔熸槸=2锛�
         // 鐢辨寰幆澶氭鍚庯紝灏辫兘褰㈡垚鐩稿簲鐨勬爲褰㈡暟鎹粨鏋�
@@ -941,6 +882,7 @@
     optionsStart() {
       var std = [];
       var ste = [];
+      var str = [];
       for (var i in serve_type) {
         ste.push({
           value: serve_type[i].value,
@@ -952,9 +894,20 @@
         std.push({
           value: data_type[i].value,
           label: data_type[i].name,
+          children: data_type[i].children
         })
       }
       this.dataType = ste;
+
+      for (var i in category_type) {
+        str.push({
+          value: category_type[i].value,
+          label: category_type[i].name,
+        })
+      }
+      this.serviceType = str;
+
+
     },
     //鏁版嵁鍒濆鍖�
     formInlineStart() {
@@ -965,11 +918,12 @@
         url: null,
         dataType: null,
         bak: null,
-        isShow: '1',
+        isShow: '0',
         isProject: '0',
         enName: '',
         isLayer: null,
-        category: null
+        category: null,
+        serviceUrl: null
       }
     },
     //鑾峰彇鏉冮檺
@@ -1012,9 +966,9 @@
     this.getLayerTree();
   },
 };
-  </script>
+</script>
   
-  <style lang="less" scoped>
+<style lang="less" scoped>
 .subpage_Box {
   //height: 96%;
   width: 98%;
@@ -1028,6 +982,7 @@
   height: calc(100% - 75px);
   display: flex;
   justify-content: space-around;
+
   .leftTree {
     width: calc(28% - 0px);
     height: 100%;
@@ -1036,6 +991,7 @@
     box-sizing: border-box;
     overflow-y: auto;
   }
+
   .right {
     width: 68%;
     height: 100%;
@@ -1043,6 +999,7 @@
     padding: 10px;
     box-sizing: border-box;
     border: 1px solid #dcdfe6;
+
     .menuTop {
       /deep/ .el-form-item {
         margin: 5px;
@@ -1050,24 +1007,28 @@
     }
   }
 }
+
 .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%);
 }
+
 /deep/.el-radio {
   color: white;
 }
 </style>
-  <style>
+<style>
 .el-select-dropdown {
   background: #303030 !important;
 

--
Gitblit v1.9.3