管道基础大数据平台系统开发-【前端】-新系統界面
一张图底图切换优化;综合展示,图层管理模型添加透明度设置;目录管理添加目录下载功能;附件预览添添加图片设置
已添加1个文件
已修改17个文件
762 ■■■■ 文件已修改
src/api/api.js 11 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/assets/lang/en.js 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/assets/lang/zh.js 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/components/MapView/mapMenuPop.vue 87 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/components/MapView/mapMenuTop.vue 15 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/components/Screen/bottom.vue 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/components/Screen/mapsdk.vue 12 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/components/mapsdk.vue 32 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/components/preview_map.vue 79 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/store/index.js 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/Archive/index.vue 193 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/Synthesis/LeftMenu.vue 69 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/Tools/LayerTree.vue 42 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/Tools/ModelProperty.vue 31 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/Tools/setPellucidity.vue 130 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/datamanage/SpatialData.vue 28 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/datamanage/catalogueManage copy.vue 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/datamanage/catalogueManage.vue 26 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/api/api.js
@@ -739,6 +739,17 @@
export function dataLib_selectDownloadFile(params) {
  return request.get('/dataLib/selectDownloadFile', { params: params });
}
//资料馆=>查询DB中溢出的单位ID
export function dataLib_selectDbOverflowDep(params) {
  return request.post('/dataLib/selectDbOverflowDep', params);
}
//资料馆=>分页查询
export function dataQuery_selectDbOverflowDep(params) {
  return request.post('/dataLib/selectDbOverflowDep', params);
src/assets/lang/en.js
@@ -867,6 +867,7 @@
      label: "Please add the condition to query"
    },
    butten: {
      directoryDownload: 'Directory Download',
      templateDownload: "Template download",
      uploadFile: "Upload File",
      NewPeer: "New Peer",
src/assets/lang/zh.js
@@ -882,6 +882,7 @@
      label: '请添加要查询的条件'
    },
    butten: {
      directoryDownload: '目录下载',
      templateDownload: "模板下载",
      uploadFile: "上传文件",
      NewPeer: "新增同级",
src/components/MapView/mapMenuPop.vue
@@ -124,74 +124,7 @@
        </el-form-item>
      </el-form>
    </el-dialog>
    <el-dialog
      title="数据申请"
      :visible.sync="dialogInsertVisible"
      width="30%"
      top="35vh"
      :modal="false"
      :before-close="handleInsertClose"
    >
      <div style="width: 100%; max-height: 450px; overflow-y: auto">
        <el-form
          ref="form"
          :model="ruleForm"
          label-width="100px"
        >
          <el-form-item label="审核单位">
            <div>
              <ul>
                <li v-for="item in ruleForm.depid">
                  {{ item.name }}
                </li>
              </ul>
            </div>
          </el-form-item>
          <el-form-item label="表名">
            <div>
              <ul>
                <li v-for="item in ruleForm.tabs">
                  {{ item.tabDesc }}
                </li>
              </ul>
            </div>
          </el-form-item>
          <el-form-item label="条件">
            <el-input
              :title="ruleForm.wkt"
              v-model="ruleForm.wkt"
              disabled
            ></el-input>
          </el-form-item>
          <el-form-item label="描述">
            <el-input
              type="textarea"
              placeholder="请输入内容"
              v-model="ruleForm.descr"
              maxlength="50"
              show-word-limit
            >
            </el-input>
          </el-form-item>
          <el-form-item>
            <el-button
              class="primary"
              size="small"
              @click="getInsertDown"
            >{{
              $t("common.confirm")
            }}</el-button>
            <el-button
              type="info"
              size="small"
              @click="closeInsertDown"
            >{{
              $t("common.cancel")
            }}</el-button>
          </el-form-item>
        </el-form>
      </div>
    </el-dialog>
    <iframe
      id="Iframe1"
      src=""
@@ -297,9 +230,12 @@
    }
  },
  methods: {
    getInsertDown() {
      this.dialogInsertVisible = false
      this.dialogVisible = true
    getInsertDown(res) {
      // this.dialogInsertVisible = false
      // this.dialogVisible = true
      this.codeForm = res;
      this.download();
    },
    handleInsertClose() {
      this.$confirm("确认关闭?")
@@ -336,7 +272,8 @@
      if (data.result.length == 0 || data.result == null) {
        this.insertFlag = 1
        this.dialogVisible = true
        // this.dialogVisible = true
        this.$bus.$emit("setDialogInsertVisible", true)
      } else {
        this.insertFlag = 2
        var std = []
@@ -359,7 +296,8 @@
        this.ruleForm.depname = std
        this.ruleForm.wkt = decr(this.listdata.wkt)
        this.ruleForm.tabs = this.option
        this.dialogInsertVisible = true
        // this.dialogInsertVisible = true
        this.$bus.$emit("setDialogInsertVisible", this.ruleForm)
      }
    },
    async signGetPublicKey() {
@@ -892,6 +830,9 @@
        this.setTableAll()
      }
    })
    this.$bus.$on("setInsertDown", res => {
      this.getInsertDown(res)
    })
  },
  destroyed() {
    this.$store.state.propertiesFlag = null
src/components/MapView/mapMenuTop.vue
@@ -22,7 +22,6 @@
                show-checkbox
                node-key="id"
                ref="tree"
                accordion
                highlight-current
                :props="defaultProps"
              >
@@ -193,6 +192,7 @@
  components: { queryinfo },
  data() {
    return {
      selectTree: "",
      menuTopFrom: {
        queryType: "",
        pipeline: "",
@@ -327,21 +327,30 @@
    },
    //获取选择树的节点
    getCheckedNodes() {
      var valTree = this.$refs.tree.getCheckedNodes()
      if (valTree.length == 0) return
      this.menuTopFrom.queryLayer = valTree[0].tabDesc;
      this.menuTopFrom.queryLayer = null;
      this.$store.state.propertiesName = valTree[0];
      for (var i = 0; i < valTree.length; i++) {
        if (valTree[i].entity) {
          if (!this.menuTopFrom.queryLayer) {
            this.menuTopFrom.queryLayer = valTree[i].tabDesc;
          }
          this.treeChange.push(valTree[i])
        }
      }
    },
    //清空树选中的节点
    resetCheckedNodes() {
      this.$refs.tree.setCheckedKeys([]);
      this.treeChange = []
      this.menuTopFrom.queryLayer = null
      this.$refs.tree.setCheckedKeys([])
    },
    //导入shp文件
    async setMenuTopFile() {
src/components/Screen/bottom.vue
@@ -271,7 +271,7 @@
          break
        case "影像图":
          Viewer.imageryLayers._layers[2].show = true
          // Viewer.imageryLayers._layers[2].show = true
          break
        case "注记图":
src/components/Screen/mapsdk.vue
@@ -67,12 +67,12 @@
        })
      }, 1000);
      // Viewer.imageryLayers.addImageryProvider(
      //   new Cesium.UrlTemplateImageryProvider({
      //     url: gaoDeBaseUrl[0].url,
      //   })
      // )
      // Viewer.imageryLayers._layers[1].show = false
      Viewer.imageryLayers.addImageryProvider(
        new Cesium.UrlTemplateImageryProvider({
          url: gaoDeBaseUrl[0].url,
        })
      )
      Viewer.imageryLayers._layers[1].show = false
      // Viewer.imageryLayers.addImageryProvider(
      //   new Cesium.UrlTemplateImageryProvider({
src/components/mapsdk.vue
@@ -493,6 +493,7 @@
      <div
        class="propertiesPop"
        style="right:22%"
        v-if="$store.state.propertiesFlag == '2'"
      >
        <el-card class="box-card">
@@ -1504,7 +1505,21 @@
    //是否显示查看按钮
    showAttachDetailBtn(row) {
      var name = row.name;
      if (name.indexOf('.pdf') != -1 || name.indexOf('.jpg') != -1 || name.indexOf('.gif') != -1 || name.indexOf('.png') != -1 || name.indexOf('.jpeg') != -1) {
      if (
        name.indexOf('.pdf') != -1
        || name.indexOf('.jpg') != -1
        || name.indexOf('.gif') != -1
        || name.indexOf('.png') != -1
        || name.indexOf('.jpeg') != -1
        || name.indexOf('.PDF') != -1
        || name.indexOf('.JPG') != -1
        || name.indexOf('.GIF') != -1
        || name.indexOf('.PNG') != -1
        || name.indexOf('.JPEG') != -1
        || name.indexOf('.BMP') != -1
        || name.indexOf('.bmp') != -1
      ) {
        return true;
      }
      return false;
@@ -1520,13 +1535,24 @@
    showAttachDetail(row) {
      this.refreshAttatchDetail();
      var name = row.name;
      if (name.indexOf('.pdf') != -1) {
      if (name.indexOf('.pdf') != -1 || name.indexOf('.PDF') != -1) {
        this.dialog.dialogVisible = true;
        this.dialog.isPdf = true;
        var url = BASE_URL + "/comprehensive/downloadForView?guid=" + row.guid + "&token=" + getToken();
        this.dialog.src = url
      }
      else if (name.indexOf('.jpg') != -1 || name.indexOf('.gif') != -1 || name.indexOf('.png') != -1 || name.indexOf('.jpeg') != -1) {
      else if (
        name.indexOf('.jpg') != -1
        || name.indexOf('.gif') != -1
        || name.indexOf('.png') != -1
        || name.indexOf('.jpeg') != -1
        || name.indexOf('.JPG') != -1
        || name.indexOf('.GIF') != -1
        || name.indexOf('.PNG') != -1
        || name.indexOf('.JPEG') != -1
        || name.indexOf('.BMP') != -1
        || name.indexOf('.bmp') != -1
      ) {
        this.dialog.dialogVisible = true;
        this.dialog.isJpg = true;
        var url = BASE_URL + "/comprehensive/downloadForView?guid=" + row.guid + "&token=" + getToken();
src/components/preview_map.vue
@@ -512,12 +512,23 @@
    setAttatchDetail(index, row) {
      this.refreshAttatchDetail()
      var name = row.name;
      if (name.indexOf('.pdf') != -1) {
      if (name.indexOf('.pdf') != -1 || name.indexOf('.PDF') != -1) {
        this.dialog.dialogVisible = true;
        this.dialog.isPdf = true;
        var url = BASE_URL + "/comprehensive/downloadForView?guid=" + row.guid + "&token=" + getToken();
        this.dialog.src = url
      } else if (name.indexOf('.jpg') != -1 || name.indexOf('.gif') != -1 || name.indexOf('.png') != -1 || name.indexOf('.jpeg') != -1) {
      } else if (
        name.indexOf('.jpg') != -1
        || name.indexOf('.gif') != -1
        || name.indexOf('.png') != -1
        || name.indexOf('.jpeg') != -1
        || name.indexOf('.JPG') != -1
        || name.indexOf('.GIF') != -1
        || name.indexOf('.PNG') != -1
        || name.indexOf('.JPEG') != -1
        || name.indexOf('.BMP') != -1
        || name.indexOf('.bmp') != -1
      ) {
        this.dialog.dialogVisible = true;
        this.dialog.isJpg = true;
        var url = BASE_URL + "/comprehensive/downloadForView?guid=" + row.guid + "&token=" + getToken();
@@ -590,7 +601,20 @@
    matchState(state = "", reg) {
      var row = state.row;
      var name = row.name;
      if (name.indexOf('.pdf') != -1 || name.indexOf('.jpg') != -1 || name.indexOf('.gif') != -1 || name.indexOf('.png') != -1 || name.indexOf('.jpeg') != -1) {
      if (
        name.indexOf('.jpg') != -1
        || name.indexOf('.gif') != -1
        || name.indexOf('.png') != -1
        || name.indexOf('.jpeg') != -1
        || name.indexOf('.JPG') != -1
        || name.indexOf('.GIF') != -1
        || name.indexOf('.PNG') != -1
        || name.indexOf('.JPEG') != -1
        || name.indexOf('.BMP') != -1
        || name.indexOf('.bmp') != -1
        || name.indexOf('.pdf') != -1
        || name.indexOf('.PDF') != -1
      ) {
        return true;
      }
@@ -1014,21 +1038,36 @@
      return Math.round(d * p) / p;
    },
    update() {
      if (isNaN(this.modelForm.lon) || !this.modelForm.lon) {
      if (!this.modelForm.lon || isNaN(this.modelForm.lon)) {
        var args = this.getEditTilesetArgs();
        this.modelForm.lon = args.lon;
        return
      }
      if (isNaN(this.modelForm.lat) || !this.modelForm.lat) {
      if (!this.modelForm.lat || isNaN(this.modelForm.lat)) {
        var args = this.getEditTilesetArgs();
        this.modelForm.lat = args.lat;
        return
      }
      if (isNaN(this.modelForm.height) || !this.modelForm.height) {
      if (!this.modelForm.height || isNaN(this.modelForm.height)) {
        var args = this.getEditTilesetArgs();
        this.modelForm.height = args.height;
        return
      }
      if (isNaN(this.modelForm.alpha) || !this.modelForm.alpha) {
      if (!this.modelForm.yaw || isNaN(this.modelForm.yaw)) {
        this.modelForm.yaw = 0;
        return
      }
      if (isNaN(this.modelForm.yaw) || !this.modelForm.yaw) {
        return
      }
      // if (!this.modelForm.alpha || isNaN(this.modelForm.alpha)) {
      //   if (this.app.under) {
      //
      //     this.modelForm.alpha = sgworld._Analysis._UndergroundMode._alpha;
      //   } else {
      //     this.modelForm.alpha = 1
      //   }
      //   return
      // }
      this.setTilesetArgs(this.modelForm);
      sgworld.Analysis.UndergroundMode(this.app.under, this.modelForm.alpha)
    },
@@ -1125,6 +1164,7 @@
      var cm = this.app.tileset._root.transform;
      var cartesian = new Cesium.Cartesian3(cm[12], cm[13], cm[14]);
      var carto = Cesium.Cartographic.fromCartesian(cartesian);
      if (carto) {
        this.modelForm.lon = Cesium.Math.toDegrees(carto.longitude).toFixed(7);
        this.modelForm.lat = Cesium.Math.toDegrees(carto.latitude).toFixed(7);
@@ -1132,6 +1172,25 @@
      }
      this.app.isBusy = false;
    },
    getEditTilesetArgs() {
      this.app.isBusy = true;
      var cm = this.app.tileset._root.transform;
      var cartesian = new Cesium.Cartesian3(cm[12], cm[13], cm[14]);
      var carto = Cesium.Cartographic.fromCartesian(cartesian);
      var std = {
        lon: null,
        lat: null,
        height: null,
      }
      if (carto) {
        std.lon = Cesium.Math.toDegrees(carto.longitude).toFixed(7);
        std.lat = Cesium.Math.toDegrees(carto.latitude).toFixed(7);
        std.height = carto.height.toFixed(3);
      }
      this.app.isBusy = false;
      return std
    },
    async setShowModelLayer() {
      const data = await perms_selectLayers();
src/store/index.js
@@ -72,6 +72,8 @@
    pickoption: null,
    previewLayer: null,
    histLenged: false,
    setAlphaDity: null,
    setAlphaList: [],
  },
  mutations: {
    //获取权限合集
src/views/Archive/index.vue
@@ -1078,7 +1078,125 @@
      </div>
    </el-dialog>
    <el-dialog
      title="数据申请"
      :visible.sync="dialogInsertVisible"
      width="30%"
      top="35vh"
      :modal="false"
      :before-close="handleInsertClose"
    >
      <div style="width: 100%; max-height: 450px; overflow-y: auto">
        <el-form
          ref="form"
          :model="ruleForm"
          label-width="100px"
        >
          <el-form-item label="审核单位">
            <div>
              <ul>
                <li v-for="item in ruleForm.depid">
                  {{ item.name }}
                </li>
              </ul>
            </div>
          </el-form-item>
          <el-form-item label="表名">
            <div>
              <ul>
                <li v-for="item in ruleForm.tabs">
                  {{ item.tabDesc }}
                </li>
              </ul>
            </div>
          </el-form-item>
          <el-form-item label="条件">
            <el-input
              :title="ruleForm.wkt"
              v-model="ruleForm.wkt"
              disabled
            ></el-input>
          </el-form-item>
          <el-form-item label="描述">
            <el-input
              type="textarea"
              placeholder="请输入内容"
              v-model="ruleForm.descr"
              maxlength="50"
              show-word-limit
            >
            </el-input>
          </el-form-item>
          <el-form-item>
            <el-button
              class="primary"
              size="small"
              @click="getInsertDown"
            >{{
              $t("common.confirm")
            }}</el-button>
            <el-button
              type="info"
              size="small"
              @click="closeInsertDown"
            >{{
              $t("common.cancel")
            }}</el-button>
          </el-form-item>
        </el-form>
      </div>
    </el-dialog>
    <el-dialog
      :title="$t('common.passworld')"
      :visible.sync="dialogVisible1"
      width="30%"
      top="35vh"
      :modal="false"
      :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"
            v-model="codeForm.password"
            show-password
          ></el-input>
        </el-form-item>
        <el-form-item
          :label="$t('common.SPassword')"
          prop="repassword"
        >
          <el-input
            type="password"
            v-model="codeForm.repassword"
            show-password
          ></el-input>
        </el-form-item>
        <el-form-item>
          <el-button
            class="primary"
            size="small"
            @click="downloadx('codeForm')"
          >{{ $t("common.confirm") }}</el-button>
          <el-button
            type="info"
            size="small"
            @click="closeDownx('codeForm')"
          >{{
            $t("common.cancel")
          }}</el-button>
        </el-form-item>
      </el-form>
    </el-dialog>
    <iframe
      id="downFrame"
      src=""
@@ -1138,6 +1256,7 @@
      }
    };
    return {
      fromfile: { file: '' },
      fromSqlflag: false,
      filedsOption: [],
@@ -1242,6 +1361,16 @@
        src: ''
      },
      checkedDataType: [],
      ruleForm: {
        depname: [],
        tabs: [],
        pwd: null,
        repwd: null,
        wkt: null,
        descr: null,
      },
      dialogInsertVisible: false,
      dialogVisible1: false,
    };
  },
@@ -1250,8 +1379,61 @@
    this.getCategorySelectData();
    this.getItemSelectData();
    this.signGetPublicKey();
    this.$bus.$on("setDialogInsertVisible", (res) => {
      if (res == true) {
        this.dialogVisible1 = true;
      } else {
        this.setDialogInsertVisible(res);
      }
    })
  },
  methods: {
    handleCloseDown1() {
      this.$confirm("确认关闭?")
        .then(_ => {
          this.closeDownx();
        })
        .catch(_ => { })
    },
    downloadx() {
      this.$bus.$emit("setInsertDown", this.codeForm)
      this.closeDownx();
    },
    closeDownx() {
      this.dialogVisible1 = false;
      this.codeForm = {
        password: '',
        repassword: '',
      }
    },
    getInsertDown() {
      this.dialogInsertVisible = false;
      this.dialogVisible1 = true;
      //
    },
    closeInsertDown() {
      this.ruleForm = {
        depname: [],
        tabs: [],
        pwd: null,
        repwd: null,
        wkt: null,
        descr: null,
      }
      this.dialogInsertVisible = false
    },
    handleInsertClose() {
      this.$confirm("确认关闭?")
        .then(_ => {
          this.closeInsertDown()
        })
        .catch(_ => { })
    },
    setDialogInsertVisible(res) {
      this.ruleForm = res;
      this.dialogInsertVisible = true;
    },
    copyText(row, column, cell, event) {
      // åŒå‡»å¤åˆ¶
      let save = function (e) {
@@ -1487,10 +1669,13 @@
      this.metaDataTable1 = [data.result];
    },
    getSpaceMapVisibale() {
      sgworld.Creator.SimpleGraphic.clear();
      for (var i in this.$store.state.queryInfo) {
        sgworld.Viewer.entities.remove(this.$store.state.queryInfo[i]);
      if (window.sgworld) {
        window.sgworld.Creator.SimpleGraphic.clear();
        for (var i in this.$store.state.queryInfo) {
          window.sgworld.Viewer.entities.remove(this.$store.state.queryInfo[i]);
        }
      }
      this.$store.state.queryInfo = [];
      if (this.$store.state.primitLayer != null) {
        sgworld.Viewer.entities.remove(this.$store.state.primitLayer);
src/views/Synthesis/LeftMenu.vue
@@ -18,6 +18,7 @@
    <terrainDig ref="terrainDig" />
    <modelAttach ref="modelAttach" />
    <undergroundModel ref="undergroundModel" />
    <setPellucidity ref="setPellucidity" />
    <input
      type="file"
      accept=".kml"
@@ -201,7 +202,8 @@
import queryinfo from "../Tools/queryinfo.vue";
import terrainDig from "../Tools/terrainDig.vue";
import modelAttach from "../Tools/ModelAttach.vue";
import undergroundModel from "../Tools/undergroundModel";
import undergroundModel from "../Tools/undergroundModel.vue";
import setPellucidity from "../Tools/setPellucidity.vue";
import $ from "jquery";
import { getToken } from "@/utils/auth";
import ImageWMS from "ol/source/ImageWMS";
@@ -233,7 +235,7 @@
import { geometry } from "@turf/turf";
export default {
  components: { mapinfo, maplayer, queryinfo, terrainDig, modelAttach, undergroundModel },
  components: { mapinfo, maplayer, queryinfo, terrainDig, modelAttach, undergroundModel, setPellucidity },
  data() {
    return {
      showTwoMenuFlag: false,
@@ -1589,10 +1591,33 @@
          this.closePipelinePop();
          if (this.isContrastFlag == false) {
            this.isContrastFlag = true;
            sgworld.Analysis.createCurtainContrast(2, 1);
            var localUrl = 'http://{host}/LFData/2d/tiles/img/{z}/{x}/{y}.png'
            localUrl = localUrl.replace("{host}", iisHost)
            window.contRastLayer = Viewer.imageryLayers.addImageryProvider(
              new Cesium.UrlTemplateImageryProvider({
                url: localUrl,
                maximumLevel: 22,
              })
            );
            Viewer.imageryLayers.lowerToBottom(window.contRastLayer);//将图层移到最底层
            Viewer.imageryLayers.raise(window.contRastLayer);//将图层上移一层
            if (window.BaseMapLayer) {
              Viewer.imageryLayers.raise(window.contRastLayer);//将图层上移一层
              sgworld.Analysis.createCurtainContrast(1, 2);
            } else {
              sgworld.Analysis.createCurtainContrast(0, 1);
            }
          } else {
            this.isContrastFlag = false;
            sgworld.Analysis.clearCurtainContrast();
            if (window.contRastLayer) {
              window.Viewer.imageryLayers.remove(
                window.contRastLayer
              );
              window.contRastLayer = null;
            }
          }
          break;
        case "d10": //地面整平
@@ -2597,7 +2622,18 @@
    matchState(state = "", reg) {
      var row = state.row;
      var name = row.name;
      if (name.indexOf('.pdf') != -1 || name.indexOf('.jpg') != -1 || name.indexOf('.gif') != -1 || name.indexOf('.png') != -1 || name.indexOf('.jpeg') != -1) {
      if (name.indexOf('.pdf') != -1
        || name.indexOf('.jpg') != -1
        || name.indexOf('.gif') != -1
        || name.indexOf('.png') != -1
        || name.indexOf('.jpeg') != -1
        || name.indexOf('.PDF') != -1
        || name.indexOf('.JPG') != -1
        || name.indexOf('.GIF') != -1
        || name.indexOf('.PNG') != -1
        || name.indexOf('.JPEG') != -1
        || name.indexOf('.BMP') != -1
        || name.indexOf('.bmp') != -1) {
        return true;
      }
@@ -2613,12 +2649,23 @@
    setAttatchDetail(index, row) {
      this.refreshAttatchDetail()
      var name = row.name;
      if (name.indexOf('.pdf') != -1) {
      if (name.indexOf('.pdf') != -1 || name.indexOf('.PDF') != -1) {
        this.dialog.dialogVisible = true;
        this.dialog.isPdf = true;
        var url = BASE_URL + "/comprehensive/downloadForView?guid=" + row.guid + "&token=" + getToken();
        this.dialog.src = url
      } else if (name.indexOf('.jpg') != -1 || name.indexOf('.gif') != -1 || name.indexOf('.png') != -1 || name.indexOf('.jpeg') != -1) {
      } else if (
        name.indexOf('.jpg') != -1
        || name.indexOf('.gif') != -1
        || name.indexOf('.png') != -1
        || name.indexOf('.jpeg') != -1
        || name.indexOf('.JPG') != -1
        || name.indexOf('.GIF') != -1
        || name.indexOf('.PNG') != -1
        || name.indexOf('.JPEG') != -1
        || name.indexOf('.BMP') != -1
        || name.indexOf('.bmp') != -1
      ) {
        this.dialog.dialogVisible = true;
        this.dialog.isJpg = true;
        var url = BASE_URL + "/comprehensive/downloadForView?guid=" + row.guid + "&token=" + getToken();
@@ -2697,7 +2744,10 @@
            },
          });
      }
    }
    },
    setPellucidity() {
      this.$refs && this.$refs.setPellucidity && this.$refs.setPellucidity.open();
    },
  },
  mounted() {
    this.measureData = new Map();
@@ -2706,7 +2756,7 @@
      polyline: Cesium.Color.fromCssColorString("#ffff00").withAlpha(0.6),
      polygon: Cesium.Color.fromCssColorString("#ffff00").withAlpha(0.6),
    };
    this.$store.state.setAlphaList = []
    this.$bus.$on("setChangeTwoMenu", (res) => {
      if (res == 8) {
        this.setLayerScene();
@@ -2718,6 +2768,9 @@
      this.setAddLayers(res);
    }));
    this.$bus.$on("showPellucidity", res => {
      this.setPellucidity();
    });
    this.$store.state.showAllLayers = true;
    this.$store.state.layerMnage = false;
    this.$store.state.treeData = null;
src/views/Tools/LayerTree.vue
@@ -90,6 +90,13 @@
      </div>
      <div
        class="edit"
        @click="pellucidity()"
        v-if="showlocal"
      >
        <i class="el-icon-tickets"></i>&nbsp;&nbsp;透明度
      </div>
      <div
        class="edit"
        @click="histogram()"
        v-show="shwoHistogram"
      >
@@ -397,6 +404,13 @@
            );
          }
        }
        var list = this.$store.state.setAlphaList;
        for (var i = 0; i < list.length; i++) {
          if (list[i].name == label) {
            list.splice(i, 1)
          }
        }
      }
      var layers_ol = window.map.getAllLayers();
      for (var i in layers_ol) {
@@ -420,6 +434,20 @@
    },
    //模型设置透明度
    pellucidity() {
      var tile = this.currentData
      for (var j in Viewer.scene.primitives._primitives) {
        if (Viewer.scene.primitives._primitives[j].id == tile.cnName) {
          this.$store.state.setAlphaDity = this.currentData;
          this.$bus.$emit("showPellucidity", true);
          break;
        }
      }
    },
    //模型定位
    positioning() {
      this.menuVisible = false
@@ -661,6 +689,12 @@
              Viewer.scene.primitives.remove(Viewer.scene.primitives._primitives[j])
            }
          }
          var list = this.$store.state.setAlphaList;
          for (var i = 0; i < list.length; i++) {
            if (list[i].name == tile.cnName) {
              list.splice(i, 1)
            }
          }
        }
      }
@@ -835,13 +869,18 @@
        );
        tileset.readyPromise.then((tileset) => {
          tileset.id = res.cnName;
          tileset.layerId = res.id;
          tileset.pubid = res.pubid;
          this.getTilesetArgs(tileset, res);
          //
        });
        this.$store.state.setAlphaList.push({
          name: res.cnName,
          alpha: 1
        })
        window.model = tileset
      } else if (res.serveType == "TMS") {
        var url = res.url;
@@ -873,7 +912,6 @@
          url: url[0],
          layers: url[1]
        }, "0", undefined, true, "");
        this.mptLayer.push(layer)
        setTimeout(() => {
          this.setChangeWMS();
src/views/Tools/ModelProperty.vue
@@ -21,9 +21,7 @@
          :model="formInline"
          label-width="80px"
        >
          <el-form-item :label="$t('common.name')">
            {{formInline.name}}
          </el-form-item>
          <el-form-item :label="$t('common.type')">
@@ -214,7 +212,20 @@
    matchState(state = "", reg) {
      var row = state.row;
      var name = row.name;
      if (name.indexOf('.pdf') != -1 || name.indexOf('.jpg') != -1 || name.indexOf('.gif') != -1 || name.indexOf('.png') != -1 || name.indexOf('.jpeg') != -1) {
      if (
        name.indexOf('.pdf') != -1
        || name.indexOf('.jpg') != -1
        || name.indexOf('.gif') != -1
        || name.indexOf('.png') != -1
        || name.indexOf('.jpeg') != -1
        || name.indexOf('.PDF') != -1
        || name.indexOf('.JPG') != -1
        || name.indexOf('.GIF') != -1
        || name.indexOf('.PNG') != -1
        || name.indexOf('.JPEG') != -1
        || name.indexOf('.BMP') != -1
        || name.indexOf('.bmp') != -1
      ) {
        return true;
      }
      return false;
@@ -243,12 +254,22 @@
    setAttatchDetail(index, row) {
      this.refreshAttatchDetail()
      var name = row.name;
      if (name.indexOf('.pdf') != -1) {
      if (name.indexOf('.pdf') != -1 || name.indexOf('.PDF') != -1) {
        this.dialog.dialogVisible = true;
        this.dialog.isPdf = true;
        var url = BASE_URL + "/comprehensive/downloadForView?guid=" + row.guid + "&token=" + getToken();
        this.dialog.src = url
      } else if (name.indexOf('.jpg') != -1 || name.indexOf('.gif') != -1 || name.indexOf('.png') != -1 || name.indexOf('.jpeg') != -1) {
      } else if (
        name.indexOf('.jpg') != -1
        || name.indexOf('.gif') != -1
        || name.indexOf('.png') != -1
        || name.indexOf('.jpeg') != -1
        || name.indexOf('.JPG') != -1
        || name.indexOf('.GIF') != -1
        || name.indexOf('.PNG') != -1
        || name.indexOf('.JPEG') != -1
        || name.indexOf('.BMP') != -1
        || name.indexOf('.bmp') != -1) {
        this.dialog.dialogVisible = true;
        this.dialog.isJpg = true;
        var url = BASE_URL + "/comprehensive/downloadForView?guid=" + row.guid + "&token=" + getToken();
src/views/Tools/setPellucidity.vue
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,130 @@
<template>
  <Popup
    ref="pop"
    :title="title"
    @close="close(true)"
    width="400px"
    @cancel="close(false)"
  >
    <el-input
      size="small"
      v-model="modelForm.alpha"
      @input="update"
    ></el-input>
    <el-slider
      v-model="modelForm.alpha"
      @input="update"
      :min="0"
      :step="0.01"
      :max="1"
    ></el-slider>
    </el-form>
  </Popup>
</template>
<script>
import Popup from "./Popup";
export default {
  name: "AddOnlineMap",
  components: {
    Popup,
  },
  mixins: [],
  data() {
    return {
      title: "透明度",
      modelForm: {
        alpha: 1
      },
      titleset: null,
      index: null,
    };
  },
  computed: {
  },
  methods: {
    // å…³é—­å¼¹çª—
    close(isCloseBtn, removeLayer = true) {
      //   removeLayer && this.removeImageLayer();
      if (this.index != null) {
        this.$store.state.setAlphaList[this.index].alpha = this.modelForm.alpha;
      }
      this.index = null;
      // é‡ç½®data值
      Object.assign(this.$data, this.$options.data());
      !isCloseBtn && this.$refs.pop.close();
    },
    // æ‰“开弹窗
    open() {
      this.close(true);
      this.$refs.pop.open();
      this.showTileSet();
    },
    changeToken(token) {
      this.mapCollection.tokne = token;
    },
    update() {
      this.titleset.style = new Cesium.Cesium3DTileStyle({
        color: "color('rgba(255,255,255," + this.modelForm.alpha + ")')",
      });
    },
    showTileSet() {
      this.index = null;
      var tile = this.$store.state.setAlphaDity
      for (var j in Viewer.scene.primitives._primitives) {
        if (Viewer.scene.primitives._primitives[j].id == tile.cnName) {
          this.titleset = Viewer.scene.primitives._primitives[j]
        }
      }
      var list = this.$store.state.setAlphaList;
      for (var i = 0; i < list.length; i++) {
        if (list[i].name == tile.cnName) {
          this.index = i;
        }
      }
      if (this.index != null) {
        this.modelForm.alpha = list[this.index].alpha;
      } else {
        this.modelForm.alpha = 1;
      }
    },
  },
};
</script>
<style scoped lang="less">
/deep/.el-card__body {
  padding: 0px !important;
}
.map {
  display: inline-block;
  cursor: pointer;
  margin: 5px;
  text-align: center;
  .el-image {
    border: 2px solid #fff;
    border-radius: 4px;
  }
}
.boxCard {
  margin-bottom: 5px;
}
</style>
src/views/datamanage/SpatialData.vue
@@ -816,12 +816,23 @@
      this.refreshAttatchDetail()
      var name = row.name;
      if (name.indexOf('.pdf') != -1) {
      if (name.indexOf('.pdf') != -1 || name.indexOf('.PDF') != -1) {
        this.dialog.dialogVisible = true;
        this.dialog.isPdf = true;
        var url = BASE_URL + "/comprehensive/downloadForView?guid=" + row.guid + "&token=" + getToken();
        this.dialog.src = url
      } else if (name.indexOf('.jpg') != -1 || name.indexOf('.gif') != -1 || name.indexOf('.png') != -1 || name.indexOf('.jpeg') != -1) {
      } else if (
        name.indexOf('.jpg') != -1
        || name.indexOf('.gif') != -1
        || name.indexOf('.png') != -1
        || name.indexOf('.jpeg') != -1
        || name.indexOf('.JPG') != -1
        || name.indexOf('.GIF') != -1
        || name.indexOf('.PNG') != -1
        || name.indexOf('.JPEG') != -1
        || name.indexOf('.BMP') != -1
        || name.indexOf('.bmp') != -1
      ) {
        this.dialog.dialogVisible = true;
        this.dialog.isJpg = true;
        var url = BASE_URL + "/comprehensive/downloadForView?guid=" + row.guid + "&token=" + getToken();
@@ -834,7 +845,18 @@
      var name = row.name;
      if (name) {
        if (name.indexOf('.pdf') != -1 || name.indexOf('.jpg') != -1 || name.indexOf('.gif') != -1 || name.indexOf('.png') != -1 || name.indexOf('.jpeg') != -1) {
        if (name.indexOf('.pdf') != -1
          || name.indexOf('.jpg') != -1
          || name.indexOf('.gif') != -1
          || name.indexOf('.png') != -1
          || name.indexOf('.jpeg') != -1
          || name.indexOf('.PDF') != -1
          || name.indexOf('.JPG') != -1
          || name.indexOf('.GIF') != -1
          || name.indexOf('.PNG') != -1
          || name.indexOf('.JPEG') != -1
          || name.indexOf('.BMP') != -1
          || name.indexOf('.bmp') != -1) {
          return true;
        }
      }
src/views/datamanage/catalogueManage copy.vue
@@ -454,6 +454,7 @@
    },
    handleNodeClick(data) {
      // console.log(data);
      this.backUpData = JSON.stringify(data);
      this.itemdetail = JSON.parse(JSON.stringify(data));
    },
src/views/datamanage/catalogueManage.vue
@@ -48,6 +48,16 @@
                <el-form-item>
                  <el-button
                    v-show="directoryFlag"
                    icon="el-icon-download"
                    type="info"
                    size="small"
                    @click="setDirectoryDownload"
                  >{{ $t("shuJuGuanLi.butten.directoryDownload") }}</el-button>
                </el-form-item>
                <el-form-item>
                  <el-button
                    icon="el-icon-download"
                    type="info"
                    size="small"
@@ -379,6 +389,7 @@
import MyBread from "../../components/MyBread.vue";
import clone from "@turf/clone";
import $ from 'jquery'
import { getToken } from '../../utils/auth';
export default {
  name: "catalogueManage",
  components: {
@@ -393,6 +404,8 @@
      }
    };
    return {
      directoryData: null,
      directoryFlag: false,
      menuStatus: {
        delete: false,
        insert: false,
@@ -951,9 +964,20 @@
          this.$message.error("修改失败,请重试!");
        });
    },
    setDirectoryDownload() {
      var url = BASE_URL + '/dir/downloadDir?token=' + getToken() + '&id=' + this.directoryData.id
      console.log(url)
      $("#Iframe1").attr("src", url).click()
    },
    handleNodeClick(data, node) {
      // console.log(data);
      if (data.pid == 0) {
        this.directoryData = data;
        this.directoryFlag = true;
      } else {
        this.directoryFlag = false;
      }
      this.newNode = node;
      this.backUpData = JSON.stringify(data);
      this.itemdetail = JSON.parse(JSON.stringify(data));