surprise
2023-12-19 fd73e99196e00c82885c83ee2f1253c2fc343756
页面修改
已修改14个文件
717 ■■■■■ 文件已修改
README.md 15 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
public/config/config.js 23 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/assets/img/lg_03.png 补丁 | 查看 | 原始文档 | blame | 历史
src/assets/img/menu/navtitle.png 补丁 | 查看 | 原始文档 | blame | 历史
src/assets/lang/zh.js 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/components/ProjectOl.vue 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/components/login.vue 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/components/mapol.vue 64 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/components/mapsdk.vue 70 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/components/navMenu.vue 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/Synthesis/LeftMenu.vue 76 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/Tools/LayerTree.vue 12 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/datamanage/js/layerManage.js 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/datamanage/layerManagement.vue 436 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
README.md
@@ -29,3 +29,18 @@
### Customize configuration
See [Configuration Reference](https://cli.vuejs.org/config/).
<!--
    系统
        账号 ad_Lf1122_min
        密码 Admin@1234_lf
    Dem,Shp 数据
        存放地址 D:\SXPW
    后端代码
        存放地址 E:\myshare\sxdw\P2022036_Service
    geoserver
        存放地址 E:\myshare\sxdw\Tomcat 9.0_TomcatSXPW\webapps\geoserver
        访问地址 http://192.168.20.53:8888/geoserver/
        账号 admin
        密码 geoserver
 -->
public/config/config.js
@@ -1,17 +1,18 @@
//var isWeb = location.hostname.indexOf("103.85.165.") > -1;
var isWeb = false;
var is_production = false;//判断是否为生产环境 //192.168.21.194
var isUrl = isWeb ? "103.85.165.99" : '192.168.20.53';
var webHost = isWeb ? isUrl + ":8052" : isUrl + ":12316";
var webHost = isWeb ? "103.85.165.99" + ":8052" : '192.168.20.205' + ":8088";
// var webHost = isWeb ? "103.85.165.99" + ":8052" : '192.168.21.194' + ":12316";
var geoHost = isWeb ? isUrl + ":8052" : isUrl + ":8888";
var fmeHost = isWeb ? "103.85.165.99" + ":8051" : '192.168.20.205' + ":88";
var fmeHost = isWeb ? isUrl + ":8051" : isUrl + ":88";
var iisHost = isWeb ? "103.85.165.99" + ":8050" : '192.168.20.205' + ":80";
var iisHost = isWeb ? isUrl + ":8050" : isUrl + ":80";
var menuStartName = "管道基础大数据平台";
var menuStartName = "配网一体化智慧指挥舱";
var LFData = "http://" + iisHost + "/LFData";
var SXData = "http://" + iisHost + "/pwyth";
var BASE_URL = 'http://' + webHost + '/server';
@@ -19,17 +20,17 @@
var socketUrl = 'ws://' + webHost + '/server/ws/select';
// GeoServerUrl
var geoServerURl = 'http://' + webHost + '/geoserver/LF/wms';
var geoServerURl = 'http://' + geoHost + '/geoserver/sxpw/wms';
var geoserverWFS = '/geoserver/LF/ows?service=WFS&version=1.0.0&request=GetFeature&typeName=LF%3Abs_project&maxFeatures=50&outputFormat=application%2Fjson&cql_filter=projname=';
var geoserverWFS = '/geoserver/sxpw/ows?service=WFS&version=1.0.0&request=GetFeature&typeName=LF%3Abs_project&maxFeatures=50&outputFormat=application%2Fjson&cql_filter=projname=';
var geoserverWFSLine = '/geoserver/LF/ows?service=WFS&version=1.0.0&request=GetFeature&typeName=LF%3Am_pipeline&maxFeatures=50&outputFormat=application%2Fjson&cql_filter=projname=';
var geoserverWFSLine = '/geoserver/sxpw/ows?service=WFS&version=1.0.0&request=GetFeature&typeName=LF%3Am_pipeline&maxFeatures=50&outputFormat=application%2Fjson&cql_filter=projname=';
// 模型加载地址
var modelUrl = LFData;
var modelUrl = SXData;
// DEM
var demLayer = LFData + '/dem';
var demLayer = SXData + '/terrain';
// 综合展示
window.sceneConfig = {
src/assets/img/lg_03.png

src/assets/img/menu/navtitle.png

src/assets/lang/zh.js
@@ -534,7 +534,7 @@
    export: '导出KML',
    import1: '导入SHP',
    export1: '导出SHP',
    pipelineAnalysis: '管道分析',
    pipelineAnalysis: '线路分析',
    synthesis: '综合展示',
    DownloadList: '下载列表',
    dataApplication: '数据申请',
@@ -635,7 +635,7 @@
    type2: '专题图',
    type3: '源数据',
    type4: '业务数据',
    type5: '管道分析',
    type5: '线路分析',
    type6: '统计报告',
  },
  loglog: {
src/components/ProjectOl.vue
@@ -81,7 +81,7 @@
      }
      var vectorLayer = new TileLayer({
        source: new XYZ({
          url: val,
          url: "http://wprd0{1-4}.is.autonavi.com/appmaptile?lang=zh_cn&size=1&style=6&x={x}&y={y}&z={z}",
        }),
      });
src/components/login.vue
@@ -219,8 +219,8 @@
                  this.$store.commit("getPermsEntity", res.result);
                  if (res.result.length != 0) {
                    sessionStorage.setItem("routerName", "/Thematic");
                    sessionStorage.setItem("changeSelectStyle", 1);
                    sessionStorage.setItem("routerName", "/Synthesis");
                    sessionStorage.setItem("changeSelectStyle", 0);
                    this.$router.push("/");
                  } else {
                    this.$message({
src/components/mapol.vue
@@ -1,7 +1,7 @@
<template>
  <div id="mapol">
    <div style="display: flex">
      <div
      <!-- <div
        @click="changeMenulayer"
        class="changeLayer"
        style="  position: absolute;
@@ -22,14 +22,10 @@
          class="mapBaseMap"
        ></div>
      </div>
      <div
        @click="changeMapType"
        class="changeMapType"
        v-if="$store.state.setChangeBaseMap"
        style="  position: absolute;
      </div> -->
      <div @click="changeMapType" class="changeMapType" v-if="$store.state.setChangeBaseMap" style="  position: absolute;
        
  bottom: 52px;
  bottom: 84px;
  right: 46px;
  height: 30px;
  width: 30px;
@@ -38,13 +34,8 @@
  justify-content: center;
  align-items: center;
  cursor: pointer;
  border: 1px solid rgba(255, 255, 255, 0.5);"
      >
        <div
          title="2/3维切换"
          id="cenBg"
          :class="show2DMap ? 'mapTypeTwo' : 'mapTypeThree'"
        ></div>
  border: 1px solid rgba(255, 255, 255, 0.5);">
        <div title="2/3维切换" id="cenBg" :class="show2DMap ? 'mapTypeTwo' : 'mapTypeThree'"></div>
      </div>
    </div>
    <!--    <div-->
@@ -58,23 +49,10 @@
    <!--      ></div>-->
    <!--    </div>-->
    <div
      class="sindagis-map-compass"
      style=" bottom: 130px; right: 40px;"
    >
      <span
        class="left"
        @click="leftClick"
      ></span>
      <span
        class="center"
        @click="recoveryClick"
        :style="{transform: `rotate(${rotate}deg)`}"
      ></span>
      <span
        class="right"
        @click="rightClick"
      ></span>
    <div class="sindagis-map-compass" style=" bottom: 130px; right: 40px;">
      <span class="left" @click="leftClick"></span>
      <span class="center" @click="recoveryClick" :style="{ transform: `rotate(${rotate}deg)` }"></span>
      <span class="right" @click="rightClick"></span>
    </div>
  </div>
</template>
@@ -205,7 +183,7 @@
    },
    changeMenulayer() {
      this.$bus.$emit("setChangeBaseMapLayer", {type:'ol',boolen:true})
      this.$bus.$emit("setChangeBaseMapLayer", { type: 'ol', boolen: true })
      // this.isActive = !this.isActive
      // this.isMenuLayer = !this.isMenuLayer
      // this.setLayerVisible()
@@ -275,9 +253,11 @@
  padding: 0;
  position: relative;
}
.center {
  left: 1%;
}
.CenDiv {
  position: absolute;
  bottom: 1%;
@@ -292,9 +272,11 @@
  border-radius: 5px;
  cursor: pointer;
}
.center1 {
  right: 1%;
}
.right {
  position: absolute;
  top: 50px;
@@ -306,6 +288,7 @@
  flex-direction: column;
  justify-content: space-between;
}
// .CenDiv:hover {
//   border: 1px solid #409eff;
// }
@@ -317,6 +300,7 @@
  background-size: 100% 100%;
  border-radius: 5px;
}
.menuLayer {
  width: 100%;
  height: 100%;
@@ -325,6 +309,7 @@
  background-size: 100% 100%;
  border-radius: 5px;
}
.ol-scale-line {
  bottom: 55px !important;
  right: 130px !important;
@@ -371,6 +356,7 @@
  transform: rotate(0deg);
  transition: 1s;
}
.sindagis-map-compass .right {
  background: url("../assets/img/compass.png") -75px -5px / 266px no-repeat;
  right: 2px;
@@ -380,9 +366,11 @@
  height: 42px;
  transform: scaleX(-1);
}
.sindagis-map-compass .right:hover {
  background: url("../assets/img/compass.png") -89px -5px / 266px no-repeat;
}
.mapBaseMap {
  width: 100%;
  height: 100%;
@@ -392,8 +380,9 @@
  background-repeat: no-repeat;
  background-size: contain;
}
.changeMapType {
}
.changeMapType {}
.mapTypeTwo {
  width: 100%;
  height: 100%;
@@ -403,6 +392,7 @@
  background-repeat: no-repeat;
  background-size: contain;
}
.mapTypeThree {
  width: 100%;
  height: 100%;
@@ -412,6 +402,6 @@
  background-repeat: no-repeat;
  background-size: contain;
}
.changeLayer {
}
.changeLayer {}
</style>
src/components/mapsdk.vue
@@ -184,7 +184,7 @@
        ></div>
      </div> -->
      <!--      class="center CenDiv"-->
      <div @click="changeMenulayer" class="changeLayer" style="  position: absolute;
      <!-- <div @click="changeMenulayer" class="changeLayer" style="  position: absolute;
  bottom: 116px;
  right: 46px;
  height: 30px;
@@ -196,10 +196,10 @@
  cursor: pointer;
  border: 1px solid rgba(255, 255, 255, 0.5);">
        <div title="底图切换" id="cenBg" class="mapBaseMap"></div>
      </div>
      </div> -->
      <div @click="changeMapType" class="changeMapType" v-if="$store.state.setChangeBaseMap" style="  position: absolute;
  bottom: 85px;
  bottom: 116px;
  right: 46px;
  height: 30px;
  width: 30px;
@@ -949,20 +949,20 @@
        licenseServer: window.sceneConfig.licenseServer,
      });
      window.Viewer = window.sgworld._Viewer;
      if (is_production) {
        Viewer.imageryLayers.removeAll();
        var base_ulr = window.sceneConfig.baseUrl;
        if (base_ulr.indexOf('{host}') > -1) {
          base_ulr = base_ulr.replace("{host}", iisHost)
        }
        Viewer.imageryLayers.addImageryProvider(
          new Cesium.UrlTemplateImageryProvider({
            url: base_ulr,
            maximumLevel: 5
          })
        );
      // if (is_production) {
      //   Viewer.imageryLayers.removeAll();
      //   var base_ulr = window.sceneConfig.baseUrl;
      //   if (base_ulr.indexOf('{host}') > -1) {
      //     base_ulr = base_ulr.replace("{host}", iisHost)
      //   }
      //   Viewer.imageryLayers.addImageryProvider(
      //     new Cesium.UrlTemplateImageryProvider({
      //       url: base_ulr,
      //       maximumLevel: 5
      //     })
      //   );
      }
      // }
      //定位
      // sgworld.Navigate.jumpTo({
      //   //跳转视角
@@ -992,24 +992,24 @@
      //开启深度检测
      // sgworld.Analysis.depthTestAgainstTerrain(true)
      Viewer.scene.globe.depthTestAgainstTerrain = true;
      if (is_production) {
      // if (is_production) {
        var base_ulr = window.sceneConfig.baseUrl;
        if (base_ulr.indexOf('{host}') > -1) {
          base_ulr = base_ulr.replace("{host}", iisHost)
        }
        window.TileMapLayer = Viewer.imageryLayers.addImageryProvider(
          new Cesium.UrlTemplateImageryProvider({
            url: base_ulr,
            maximumLevel: 9
          })
        );
        window.BaseMapLayer = Viewer.imageryLayers.addImageryProvider(
          new Cesium.UrlTemplateImageryProvider({
            url: base_ulr,
          })
        );
      }
      //   var base_ulr = window.sceneConfig.baseUrl;
      //   if (base_ulr.indexOf('{host}') > -1) {
      //     base_ulr = base_ulr.replace("{host}", iisHost)
      //   }
      //   window.TileMapLayer = Viewer.imageryLayers.addImageryProvider(
      //     new Cesium.UrlTemplateImageryProvider({
      //       url: base_ulr,
      //       maximumLevel: 9
      //     })
      //   );
      //   window.BaseMapLayer = Viewer.imageryLayers.addImageryProvider(
      //     new Cesium.UrlTemplateImageryProvider({
      //       url: base_ulr,
      //     })
      //   );
      // }
      // var option = {
      //   url: window.sceneConfig.SGUrl,
@@ -1019,11 +1019,11 @@
      // window.terrainLayer = sgworld.Creator.sfsterrainprovider("", option, "", true, "");
 
      window.terrainLayer = new Cesium.CesiumTerrainProvider({
        // url: LFData + '/3d/terrain/dem20230321'
        url: demLayer
      });
      Viewer.terrainProvider = window.terrainLayer
      window.terrainFlag = 'MPT'
      // window.terrainFlag = 'MPT'
      window.elevationTool = new SmartEarth.ElevationTool(window.sgworld);
      elevationTool.setContourColor("#F1D487");
    },
src/components/navMenu.vue
@@ -42,7 +42,7 @@
        </div>
      </div>
      <div class="topUser">
        <div class="userLanguage">
        <!-- <div class="userLanguage">
          <div
            class="userImage theme"
            @click="themeChange"
@@ -52,7 +52,7 @@
            @click="switchLang"
          ></div>
        </div>
        </div> -->
        <div class="userName">
          <div class="userImage user1"></div>
          <div class="userText">
src/views/Synthesis/LeftMenu.vue
@@ -531,58 +531,58 @@
          },
        ],
        [
          {
            id: "d1",
            label: "synthesis.contouranalysis",
            name: "等高线",
            css: "twoMenu_imge41",
          },
          {
            id: "d2",
            label: "synthesis.slopeanalysis",
            name: "坡度分析",
            css: "twoMenu_imge42",
          },
          // {
          //   id: "d1",
          //   label: "synthesis.contouranalysis",
          //   name: "等高线",
          //   css: "twoMenu_imge41",
          // },
          // {
          //   id: "d2",
          //   label: "synthesis.slopeanalysis",
          //   name: "坡度分析",
          //   css: "twoMenu_imge42",
          // },
          {
            id: "d3",
            label: "synthesis.pathanalysis",
            name: "路径分析",
            css: "twoMenu_imge43",
          },
          {
            id: "d4",
            label: "synthesis.cuttinganalysis",
            name: "地形剖切",
            css: "twoMenu_imge44",
          },
          // {
          //   id: "d4",
          //   label: "synthesis.cuttinganalysis",
          //   name: "地形剖切",
          //   css: "twoMenu_imge44",
          // },
          {
            id: "d5",
            label: "synthesis.floodanalysis",
            name: "淹没分析",
            css: "twoMenu_imge45",
          },
          {
            id: "d6",
            label: "synthesis.earthworkcalculation",
            name: "土方量计算",
            css: "twoMenu_imge46",
          },
          {
            id: "d7",
            label: "synthesis.crosssectionanalysis",
            name: "三维截面",
            css: "twoMenu_imge47",
          },
          {
            id: "d8",
            label: "synthesis.imagecontrast",
            name: "影像对比",
            css: "twoMenu_imge48",
          },
          // {
          //   id: "d6",
          //   label: "synthesis.earthworkcalculation",
          //   name: "土方量计算",
          //   css: "twoMenu_imge46",
          // },
          // {
          //   id: "d7",
          //   label: "synthesis.crosssectionanalysis",
          //   name: "三维截面",
          //   css: "twoMenu_imge47",
          // },
          // {
          //   id: "d8",
          //   label: "synthesis.imagecontrast",
          //   name: "影像对比",
          //   css: "twoMenu_imge48",
          // },
          {
            id: "d9",
            label: "synthesis.pipelineAnalysis",
            name: "管道分析",
            name: "线路分析",
            css: "twoMenu_imge49",
          },
          {
@@ -1768,7 +1768,7 @@
            this.$store.state.mapPopBoxFlag = "3";
            this.$refs &&
              this.$refs.queryinfo &&
              this.$refs.queryinfo.open("管道空间分析", null, {
              this.$refs.queryinfo.open("线路空间分析", null, {
                close: () => {
                  if (this.$store.state.pipelineEntity.length != 0) {
                    for (var i in this.$store.state.pipelineEntity) {
src/views/Tools/LayerTree.vue
@@ -2,7 +2,7 @@
  <div class="lalala tree-container">
    <el-form ref="form">
      <el-form-item>
        <el-select
        <!-- <el-select
          v-model="$store.state.pigCode"
          clearable
          filterable
@@ -17,7 +17,7 @@
            :value="item.code"
          >
          </el-option>
        </el-select>
        </el-select> -->
      </el-form-item>
      <el-form-item>
        <el-input
@@ -90,20 +90,20 @@
      >
        <i class="el-icon-tickets"></i>&nbsp;&nbsp;透明度
      </div>
      <div
      <!-- <div
        class="edit"
        @click="histogram()"
        v-show="shwoHistogram"
      >
        <i class="el-icon-tickets"></i>&nbsp;&nbsp;钻孔柱状图
      </div>
      <div
      </div> -->
      <!-- <div
        class="edit"
        v-show="shwoTileDown"
        @click="tileDownload()"
      >
        <i class="el-icon-download"></i>&nbsp;&nbsp;瓦片下载
      </div>
      </div> -->
      <div
        class="edit"
        v-show="shwoAnnex"
src/views/datamanage/js/layerManage.js
@@ -1,8 +1,7 @@
export const serve_type = [
    'Mpt', 'Tileset', 'WMS', 'TMS'
     'Tileset', 'WMS', 'TMS'
];
export const data_type = [
    '基础勘察', '基础地灾', '基础测绘', '工程线路', '工程测绘', '工程洞库',
    '自动发布模型', '工程勘察', '工程地灾', '自动发布影像', '自动发布地形场景', '其他'
    '杆塔', '配网箱', '环网柜',  '其他'
]
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">
                  <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" v-if="treeData.length > 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>
@@ -100,293 +63,131 @@
        </div>
        <div class="dividing-line"></div>
        <div style="padding: 10px;">
          <el-form
            :model="formInline"
            class="demo-form-inline"
            label-width="150px"
          >
          <el-form :model="formInline" class="demo-form-inline" label-width="150px">
            <!-- 菜单名称 -->
            <el-form-item :label="$t('dataManage.layerObj.layerName')">
              <el-input
                :placeholder="$t('dataManage.layerObj.prompt1')"
                style="width: 60%;"
                v-model="formInline.cnName"
              ></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.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 :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-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 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-input
                :placeholder="$t('dataManage.layerObj.prompt6')"
                style="width: 60%;"
                v-model="formInline.enName"
              ></el-input>
            </el-form-item>
            <!-- <el-form-item v-show="formInline.type == 2 && formInline.serveType == 'WMS'"
              :label="$t('dataManage.layerObj.enTableName')">
              <el-input :placeholder="$t('dataManage.layerObj.prompt6')" style="width: 60%;"
                v-model="formInline.enName"></el-input>
            </el-form-item> -->
            <!-- 数据类型 -->
            <el-form-item :label="$t('dataManage.layerObj.dataType')">
              <el-select
                clearable
                style="width: 60%;"
                v-model="formInline.dataType"
                :placeholder="$t('dataManage.layerObj.prompt8')"
              >
                <el-option
                  v-for="item in dataType"
                  :key="item.value"
                  :label="item.label"
                  :value="item.value"
                >
            <el-form-item v-show="formInline.type==2" :label="$t('dataManage.layerObj.dataType')">
              <el-select clearable style="width: 60%;" v-model="formInline.dataType"
                :placeholder="$t('dataManage.layerObj.prompt8')">
                <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.type == 2"
              :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 v-show="formInline.type == 2" :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
              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 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
                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-item :label="$t('dataManage.layerObj.layerName')">
            <el-input
              style="width: 80%;"
              v-model="insertData.cnName"
              :placeholder="$t('dataManage.layerObj.prompt1')"
            ></el-input>
            <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')"
            >
              <el-option
                label="目录"
                value='1'
              ></el-option>
              <el-option
                label="图层"
                value='2'
              ></el-option>
            <el-select clearable style="width: 80%;" v-model="insertData.type"
              :placeholder="$t('dataManage.layerObj.prompt2')">
              <el-option label="目录" value='1'></el-option>
              <el-option label="图层" value='2'></el-option>
            </el-select>
          </el-form-item>
          <!-- 服务类型 -->
          <el-form-item
            v-show="insertData.type == 2"
            :label="$t('dataManage.layerObj.serviceType')"
          >
            <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-form-item v-show="insertData.type == 2" :label="$t('dataManage.layerObj.serviceType')">
            <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-form-item>
          <!-- 服务地址 -->
          <el-form-item
            v-show="insertData.type == 2"
            :label="$t('dataManage.layerObj.serviceAddress')"
          >
            <el-input
              :placeholder="$t('dataManage.layerObj.prompt4')"
              style="width: 80%;"
              v-model="insertData.url"
            ></el-input>
          <el-form-item v-show="insertData.type == 2" :label="$t('dataManage.layerObj.serviceAddress')">
            <el-input :placeholder="$t('dataManage.layerObj.prompt4')" style="width: 80%;"
              v-model="insertData.url"></el-input>
          </el-form-item>
          <!-- 英文表名 -->
          <el-form-item
            v-show="insertData.type == 2 && insertData.serveType =='WMS'"
            :label="$t('dataManage.layerObj.enTableName')"
          >
            <el-input
              :placeholder="$t('dataManage.layerObj.prompt6')"
              style="width: 80%;"
              v-model="insertData.enName"
            ></el-input>
          </el-form-item>
          <!-- <el-form-item v-show="insertData.type == 2 && insertData.serveType == 'WMS'"
            :label="$t('dataManage.layerObj.enTableName')">
            <el-input :placeholder="$t('dataManage.layerObj.prompt6')" style="width: 80%;"
              v-model="insertData.enName"></el-input>
          </el-form-item> -->
          <!-- 数据类型 -->
          <el-form-item :label="$t('dataManage.layerObj.dataType')">
            <el-select
              clearable
              style="width: 80%;"
              v-model="insertData.dataType"
              :placeholder="$t('dataManage.layerObj.prompt8')"
            >
              <el-option
                v-for="item in dataType"
                :key="item.value"
                :label="item.label"
                :value="item.value"
              >
            <el-select clearable style="width: 80%;" v-model="insertData.dataType"
              :placeholder="$t('dataManage.layerObj.prompt8')">
              <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.type == 2"
            :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 v-show="insertData.type == 2" :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
            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 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%;"
              v-model="insertData.bak"
            ></el-input>
            <el-input :placeholder="$t('dataManage.layerObj.prompt7')" style="width: 80%;"
              v-model="insertData.bak"></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"
            >{{$t('common.cancel')}}</el-button>
            <el-button type="primary" size="small" @click="submitForm()">{{ $t('common.confirm') }}</el-button>
            <el-button type="info" size="small">{{ $t('common.cancel') }}</el-button>
          </el-form-item>
        </el-form>
@@ -575,23 +376,34 @@
      this.insertStart();
    },
    insertLayerData(res) {
      debugger
      console.log(this.formInline)
      this.insertStart();
      var node = this.$refs.tree.getCurrentNode();
      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;
      } 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;
      if (this.treeData.length > 0) {
        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;
        }
      } else {
        id = 0;
        orderNum = 1;
        lever = 1;
      }
      this.insertData.pid = id;
      this.insertData.level = lever;
      this.insertData.orderNum = orderNum;
@@ -652,16 +464,22 @@
      this.newData = data.result;
      var val = this.setTreeData(data.result);
      this.treeData = val;
      console.log("this.treeData", this.treeData)
      debugger
      var cdata;
      if (this.currentData) {
        cdata = JSON.parse(this.currentData);
      } else {
        cdata = this.treeData[0]
      }
      this.$nextTick(() => {
        this.expandData = [cdata.id];
        this.$refs.tree.setCurrentKey(cdata.id);
        this.layerFormInline(cdata)
        if (cdata) {
          this.expandData = [cdata.id];
          this.$refs.tree.setCurrentKey(cdata.id);
          this.layerFormInline(cdata)
        }
      });
    },
    layerFormInline(res) {
@@ -794,6 +612,7 @@
  height: calc(100% - 75px);
  display: flex;
  justify-content: space-around;
  .leftTree {
    width: calc(28% - 0px);
    height: 100%;
@@ -802,6 +621,7 @@
    box-sizing: border-box;
    overflow-y: auto;
  }
  .right {
    width: 68%;
    height: 100%;
@@ -809,6 +629,7 @@
    padding: 10px;
    box-sizing: border-box;
    border: 1px solid #dcdfe6;
    .menuTop {
      /deep/ .el-form-item {
        margin: 5px;
@@ -816,9 +637,10 @@
    }
  }
}
/deep/ .el-input__suffix {
    top: 50%;
    transform: translateY(-50%);
  top: 50%;
  transform: translateY(-50%);
}
</style>