管道基础大数据平台系统开发-【前端】-新系統界面
Surpriseplus
2023-05-28 a6ab25145a4b82f5a7fd1b8cc4a3f027b0f8c608
Merge branch 'master' of http://103.85.165.99:8989/r/LFWEB_NEW
已修改2个文件
267 ■■■■■ 文件已修改
src/views/Synthesis/LeftMenu.vue 232 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/Tools/LayerTree.vue 35 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/Synthesis/LeftMenu.vue
@@ -1,15 +1,11 @@
<template>
  <div class="menu_Box box_div">
    <div
      class="leftMen_div"
    <div class="leftMen_div"
      @click="setChangeTwoMenu(item)"
      v-for="(item, index) in setListTwoMenu"
      :class="{ lefMenuDivActive: showTwoMenuFlag == item.id }"
    >
      <div
        class="menuTwoImage"
        :class="item.css"
      ></div>
         :class="{ lefMenuDivActive: showTwoMenuFlag == item.id }">
      <div class="menuTwoImage"
           :class="item.css"></div>
      <div>{{ $t(item.label) }}</div>
    </div>
    <mapinfo ref="mapinfo" />
@@ -19,80 +15,58 @@
    <modelAttach ref="modelAttach" />
    <undergroundModel ref="undergroundModel" />
    <setPellucidity ref="setPellucidity" />
    <input
      type="file"
    <input type="file"
      accept=".kml"
      class="file"
      style="display: none"
    />
    <input
      :accept="'.shp, .shx, .dbf, .prj'"
           style="display: none" />
    <input :accept="'.shp, .shx, .dbf, .prj'"
      style="display: none"
      ref="pathClear"
      type="file"
      name="file"
      id="shpFile"
      multiple="multiple"
      @change="handleOpenShp()"
    />
           @change="handleOpenShp()" />
    <el-dialog
      :title="formInline.title"
    <el-dialog :title="formInline.title"
      :visible.sync="dialogVisible"
      :modal="false"
      :modal-append-to-body="false"
      :close-on-click-modal="false"
      :before-close="handleClose"
      width="30%"
    >
      <el-dialog
        title="预览"
               width="30%">
      <el-dialog title="预览"
        :append-to-body="false"
        :visible.sync="dialog.dialogVisible"
        width="70%"
        :modal="false"
        :close-on-click-modal="false"
      >
        <div
          v-if="dialog.isPdf"
          class="pdfClass"
        >
          <iframe
            :src="dialog.src"
                 :close-on-click-modal="false">
        <div v-if="dialog.isPdf"
             class="pdfClass">
          <iframe :src="dialog.src"
            type="application/x-google-chrome-pdf"
            width="100%"
            height="100%"
          >
                  height="100%">
          </iframe>
        </div>
        <div
          v-if="dialog.isJpg"
          class="pdfClass"
        >
        <div v-if="dialog.isJpg"
             class="pdfClass">
          <el-image
            style="width:100%; height:100%"
          <el-image style="width:100%; height:100%"
            :src="dialog.src"
            :preview-src-list="[dialog.src]"
          >
                    :preview-src-list="[dialog.src]">
          </el-image>
        </div>
      </el-dialog>
      <div style="height:63vh">
        <el-tabs
          v-model="activeName"
          @tab-click="handleClick"
        >
          <el-tab-pane
            label="属性"
            name="first"
          >
            <el-form
              ref="form"
        <el-tabs v-model="activeName"
                 @tab-click="handleClick">
          <el-tab-pane label="属性"
                       name="first">
            <el-form ref="form"
              :model="formInline"
              label-width="80px"
            >
                     label-width="80px">
              <el-form-item :label="$t('common.name')">
                <!-- <el-input v-model="formInline.name"></el-input> -->
@@ -138,49 +112,33 @@
            </el-form>
          </el-tab-pane>
          <el-tab-pane
            label="附件"
            name="second"
          >
          <el-tab-pane label="附件"
                       name="second">
            <el-table
              :data="tableData"
            <el-table :data="tableData"
              ref="filterTable"
              height="calc(100% - 130px)"
              border
              style="width: 100%"
              @selection-change="handleAttatchChange"
            >
              <el-table-column
                type="selection"
                width="70"
              />
              <el-table-column
                width="60"
                      @selection-change="handleAttatchChange">
              <el-table-column type="selection"
                               width="70" />
              <el-table-column width="60"
                type="index"
                :label="$t('common.index')"
              />
              <el-table-column
                prop="name"
                :label="$t('common.name')"
              />
                               :label="$t('common.index')" />
              <el-table-column prop="name"
                               :label="$t('common.name')" />
              <el-table-column
                prop="sizes"
              <el-table-column prop="sizes"
                :label="$t('common.size')"
                :formatter="statSizeChange"
              />
              <el-table-column
                align="center"
                               :formatter="statSizeChange" />
              <el-table-column align="center"
                :label="$t('common.operate')"
                min-width="100"
              >
                               min-width="100">
                <template slot-scope="scope">
                  <el-link
                    v-if="matchState(scope, /[]/)"
                  <el-link v-if="matchState(scope, /[]/)"
                    @click="setAttatchDetail(scope.$index, scope.row)"
                    class="elLink"
                  >{{ $t('common.see') }}</el-link>
                           class="elLink">{{ $t('common.see') }}</el-link>
                </template>
              </el-table-column>
@@ -192,20 +150,16 @@
      </div>
    </el-dialog>
    <el-dialog
      title="数据申请"
    <el-dialog title="数据申请"
      :visible.sync="dialogInsertVisible"
      width="30%"
      top="35vh"
      :modal="false"
      :before-close="handleInsertClose"
    >
               :before-close="handleInsertClose">
      <div style="width: 100%; max-height: 450px; overflow-y: auto">
        <el-form
          ref="form"
        <el-form ref="form"
          :model="ruleForm"
          label-width="100px"
        >
                 label-width="100px">
          <el-form-item label="审核单位">
            <div>
              <ul>
@@ -225,101 +179,75 @@
            </div>
          </el-form-item>
          <el-form-item label="条件">
            <el-input
              :title="ruleForm.wkt"
            <el-input :title="ruleForm.wkt"
              v-model="ruleForm.wkt"
              disabled
            ></el-input>
                      disabled></el-input>
          </el-form-item>
          <el-form-item label="描述">
            <el-input
              type="textarea"
            <el-input type="textarea"
              placeholder="请输入内容"
              v-model="ruleForm.descr"
              maxlength="50"
              show-word-limit
            >
                      show-word-limit>
            </el-input>
          </el-form-item>
          <el-form-item>
            <el-button
              class="primary"
            <el-button class="primary"
              size="small"
              @click="getInsertDownz()"
            >{{
                       @click="getInsertDownz()">{{
              $t("common.confirm")
            }}</el-button>
            <el-button
              type="info"
            <el-button type="info"
              size="small"
              @click="closeInsertDown"
            >{{
                       @click="closeInsertDown">{{
              $t("common.cancel")
            }}</el-button>
          </el-form-item>
        </el-form>
      </div>
    </el-dialog>
    <el-dialog
      :title="$t('common.passworld')"
    <el-dialog :title="$t('common.passworld')"
      :visible.sync="dialogVisible1"
      width="30%"
      top="35vh"
      :modal="false"
      :before-close="handleCloseDown1"
    >
      <el-form
        :model="codeForm"
               :before-close="handleCloseDown1">
      <el-form :model="codeForm"
        :rules="rules"
        ref="codeForm"
        label-width="100px"
        class="codeForm"
      >
        <el-form-item
          :label="$t('common.passworld')"
          prop="password"
        >
          <el-input
            type="password"
               class="codeForm">
        <el-form-item :label="$t('common.passworld')"
                      prop="password">
          <el-input type="password"
            v-model="codeForm.password"
            show-password
          ></el-input>
                    show-password></el-input>
        </el-form-item>
        <el-form-item
          :label="$t('common.SPassword')"
          prop="repassword"
        >
          <el-input
            type="password"
        <el-form-item :label="$t('common.SPassword')"
                      prop="repassword">
          <el-input type="password"
            v-model="codeForm.repassword"
            show-password
          ></el-input>
                    show-password></el-input>
        </el-form-item>
        <el-form-item>
          <el-button
            class="primary"
          <el-button class="primary"
            size="small"
            @click="downloadx('codeForm')"
          >{{ $t("common.confirm") }}</el-button>
          <el-button
            type="info"
                     @click="downloadx('codeForm')">{{ $t("common.confirm") }}</el-button>
          <el-button type="info"
            size="small"
            @click="closeDownx('codeForm')"
          >{{
                     @click="closeDownx('codeForm')">{{
            $t("common.cancel")
          }}</el-button>
        </el-form-item>
      </el-form>
    </el-dialog>
    <el-dialog
      title="范围"
    <el-dialog title="范围"
      :visible.sync="dialogExtentVisible"
      width="30%"
      :before-close="handleExtentClose"
      :modal="false"
      :lock-scroll="false"
      :close-on-click-modal="false"
    >
               :close-on-click-modal="false">
      <el-row :gutter="20">
        <el-col :span="16">
@@ -331,15 +259,11 @@
          </div>
        </el-col>
      </el-row>
      <span
        slot="footer"
        class="dialog-footer"
      >
      <span slot="footer"
            class="dialog-footer">
        <el-button @click="handleExtentClose">取 消</el-button>
        <el-button
          @click="handleExtentinsert"
          type="primary"
        >确 定</el-button>
        <el-button @click="handleExtentinsert"
                   type="primary">确 定</el-button>
      </span>
    </el-dialog>
  </div>
@@ -2564,7 +2488,7 @@
      });
      layerWMS.name = "Wms_Layer";
      window.Viewer.scene.imageryLayers.addImageryProvider(window.layerWMS);
      window.Viewer.imageryLayers.addImageryProvider(window.layerWMS);
      var layer2 = new Image({
        name: "Wms_Layer",
        source: new ImageWMS({
@@ -2633,7 +2557,7 @@
        tileHeight: 512,
      });
      layerWMS.name = "Wms_Layer";
      window.Viewer.scene.imageryLayers.addImageryProvider(window.layerWMS);
      window.Viewer.imageryLayers.addImageryProvider(window.layerWMS);
      var layer2 = new Image({
        name: "Wms_Layer",
        source: new ImageWMS({
src/views/Tools/LayerTree.vue
@@ -313,11 +313,11 @@
        }
      }
      if (obj.WMS.length) this.setChangeWMS(obj.WMS, checked);
      if (obj.Tileset.length) this.setChangeTileset(obj.Tileset, checked);
      this.setChangeDEM(obj.DEM, checked);
      if (obj.TMS.length) this.setChangeTMS(obj.TMS, checked);
      if (obj.Mpt.length) this.setChangeMpt(obj.Mpt, checked);
      if (obj.DEM.length) this.setChangeDEM(obj.DEM, checked);
      if (obj.Tileset.length) this.setChangeTileset(obj.Tileset, checked);
      if (obj.WMS.length) this.setChangeWMS(obj.WMS, checked);
    },
    // 获取子节点
    getNodes (data, arr) {
@@ -464,7 +464,7 @@
        let layer = Viewer.imageryLayers.addImageryProvider(new Cesium.UrlTemplateImageryProvider({
          url: res.url,
          maximumLevel: 22,
        }));
        }), 1); // addImageryProvider -> add
        layer.id = res.id;
        layer.name = res.cnName;
      }
@@ -505,36 +505,37 @@
    },
    // 切换DEM
    setChangeDEM (layers, checked) {
      let ids = this.getCheckNodesIds(), arr = [], isDel = false, useSG = false;
      let ids = this.getCheckNodesIds(), arr = [];
      for (let i in layers) {
        let layer = layers[i];
        if (ids.indexOf(layer.id) != -1) {
          arr.push(layer.url);
          continue;
        }
        if (window.Viewer.terrainProvider._layers[0].resource._url == layer.url) isDel = true; // 删除DEM
      }
      if (!arr.length && isDel) useSG = true; // demLayer
      if (arr.length) this.addDEMLayers(arr[0], useSG);
      let url = arr.length ? arr[arr.length - 1] : null;
      this.addDEMLayers(url, null == url);
    },
    // 添加DEM图层
    addDEMLayer (url, useSG) {
    addDEMLayers (url, useSG) {
      if (useSG) {
        if (Viewer.terrainProvider._isMPT) return;
        let option = {
          url: window.sceneConfig.SGUrl,
          layerName: window.sceneConfig.mptName,
          requestVertexNormals: true
        };
        window.terrainLayer = sgworld.Creator.sfsterrainprovider("", option, "", true, "");
      } else {
        window.terrainLayer = new Cesium.CesiumTerrainProvider({
        sgworld.Creator.sfsterrainprovider("", option, "", true, "");
        return;
      }
      if (url.indexOf("{host}") > -1) url = url.replace("{host}", iisHost);
      Viewer.terrainProvider = new Cesium.CesiumTerrainProvider({
          url: url,
          requestVertexNormals: true
        });
      }
      Viewer.terrainProvider = terrainLayer;
    },
    // 设置Tileset参数
    async setTilesetArgs (tileset, res) {
@@ -544,7 +545,7 @@
      }
      const data = await comprehensive_selectPubById({ id: res.pubid })
      if (data.code == 200) this.setTilesetCoord(tileset, data.result.json);
      if (data.code == 200 && data.result.json) this.setTilesetCoord(tileset, data.result.json);
    },
    // 设置Tileset高度
    setTilesetHeigth (tileset, height) {
@@ -587,7 +588,7 @@
          minimumLevel: data.result.min
        });
      let layer = Viewer.imageryLayers.addImageryProvider(provider);
      let layer = Viewer.imageryLayers.addImageryProvider(provider, 1);
      layer.name = res.cnName;
      // if (data.result.geom) {