管道基础大数据平台系统开发-【前端】-新系統界面
TreeWish
2023-02-09 22fcbf0a9ed8e0a2df9695859d7a52d1dd55b386
src/views/Synthesis/LeftMenu.vue
@@ -1,5 +1,5 @@
<template>
  <div class="menu_Box">
  <div class="menu_Box box_div">
    <div
      class="leftMen_div"
      @click="setChangeTwoMenu(item)"
@@ -36,7 +36,7 @@
      showTwoMenuFlag: false,
      setListTwoMenu: [],
      setListTwoMenuAll: [
        [
        [
          {
            id: 'a1',
            label: 'synthesis.layer',
@@ -228,7 +228,7 @@
          {
            id: 'j1',
            label: 'synthesis.synthobj.m1',
            name: '水平距离',
            name: '表面距离',
            css: 'twoMenu_imge71',
          },
          {
@@ -299,6 +299,12 @@
            name: '导出',
            css: 'twoMenu_imge86',
          },
        {
          id: 'h8',
          label: 'synthesis.addlabel',
          name: '文字',
          css: 'twoMenu_imge88',
        },
          {
            id: 'h7',
            label: 'synthesis.removepaint',
@@ -336,6 +342,20 @@
  methods: {
    //二級菜单点击切换
    setChangeTwoMenu(res) {
      //清除绘制图形对象
      sgworld.Creator.SimpleGraphic.clear();
      if (window.Viewer.scene.primitives.length != null) {
        window.Viewer.scene.primitives.removeAll();
      }
      if (this.$store.state.primitLayer != null) {
        sgworld.Creator.DeleteObject(this.$store.state.primitLayer);
        this.$store.state.primitLayer = null;
      }
      //关闭打开的信息窗体
      this.showTwoMenuFlag = res.id;
      this.$store.state.mapMenuBoolean = false;
      this.$store.state.mapMenuBoxFlag = null;
@@ -346,6 +366,10 @@
        window.model.deleteObject();
        window.model = null;
      }
      switch (val) {
        case 'a': //图层管理
          this.setCoverage(res.id);
@@ -413,8 +437,12 @@
          break;
        case 'h7':
          sgworld.Creator.SimpleGraphic.clear();
          break;
      case 'h8':
         sgworld.Creator.createSimpleGraphic('label', {}, function (entity) {
          });
        break;
      }
    },
    handleSaveClick() {
@@ -455,6 +483,7 @@
        alert('当前场景没有entities实体');
      }
    },
    handleOpenClick() {
      sgworld.Creator.SimpleGraphic.edit(true, { editProp: true });
      let fileInput = document.querySelector('.file');
@@ -528,7 +557,7 @@
            (data) => {
              data.id = window.sgworld.Core.getuid();
              this.measureData.set(data.id, measure);
              this.openMeasureResultInfo('水平距离', data);
              this.openMeasureResultInfo('表面距离', data);
            }
          );
          break;
@@ -545,16 +574,24 @@
          );
          break;
        case 'j3':
          var measure = window.sgworld.Command.execute(
            1,
            11,
            this.colorAll,
            (data) => {
              data.id = window.sgworld.Core.getuid();
              this.measureData.set(data.id, measure);
              this.openMeasureResultInfo('海拔高度', data);
            }
          );
          // var measure = window.sgworld.Command.execute(
          //   1,
          //   11,
          //   this.colorAll,
          //   (data) => {
          //     data.id = window.sgworld.Core.getuid();
          //     this.measureData.set(data.id, measure);
          //     this.openMeasureResultInfo('海拔高度', data);
          //   }
          // );
          var measure = window.sgworld.Command.execute(0, 3, this.colorAll, (data) => {
            data.id = window.sgworld.Core.getuid();
            this.measureData.set(data.id, measure);
            this.openMeasureResultInfo('平面面积', data);
          });
          break;
        case 'j2':
          var measure = window.sgworld.Command.execute(
@@ -632,12 +669,12 @@
    openMeasureResultInfo(name, data) {
      let info = '';
      switch (name) {
        case '水平距离':
        case '表面距离':
        case '空间距离':
          info = '总长度:' + data.distance[data.distance.length - 1];
          break;
        case '海拔高度':
          info = '海拔:' + data.height;
          info = '高度:' + data.height;
          break;
        case '垂直高度':
          info = `${data.gddistance}<br>${data.kjdistance}<br>${data.spdistance}`;
@@ -696,6 +733,7 @@
      }
    },
    setAnalsy(res) {
     //this.$refs && this.$refs.queryinfo && this.$refs.queryinfo.close("queryinfo");
      var that = this;
      switch (res) {
        case 'd1':
@@ -769,7 +807,9 @@
          );
          break;
        case 'd9':
       this.$refs && this.$refs.queryinfo && this.$refs.queryinfo.close("queryinfo");
          this.$store.state.mapPopBoxFlag = '3';
          this.$refs && this.$refs.queryinfo && this.$refs.queryinfo.open("管道空间分析", null, {
            close: () => {
              if (this.$store.state.pipelineEntity.length != 0) {
@@ -1013,10 +1053,11 @@
      switch (res) {
        case 'a1':
          if (this.$store.state.layerMnage == false) {
            this.$refs && this.$refs.maplayer && this.$refs.maplayer.closeAll();
            this.$refs && this.$refs.maplayer && this.$refs.maplayer.open();
            this.$store.state.layerMnage = true;
          } else if (this.$store.state.layerMnage == true) {
            this.$refs && this.$refs.maplayer && this.$refs.maplayer.close();
            this.$refs && this.$refs.maplayer && this.$refs.maplayer.closeAll();
            this.$store.state.layerMnage = false;
          }
@@ -1041,12 +1082,10 @@
      }
    });
    this.$bus.$on('showLeftMenu', (res) => {
      this.$store.state.showAllLayers = true;
      this.setCoverage('a1');
    });
    this.$store.state.showAllLayers = true;
    this.$store.state.layerMnage = false;
    this.setCoverage('a1');
  },
};
</script>
@@ -1067,7 +1106,7 @@
    font-size: 16px;
    font-family: Microsoft YaHei;
    font-weight: 400;
    color: #ffffff;
    padding: 10px;
    min-width: 100px;
    margin-left: 10px;
@@ -1075,12 +1114,14 @@
    border-radius: 5px;
  }
  .leftMen_div:hover {
    background: linear-gradient(180deg, #002992, #080472);
    border: 1px solid #000000;
    box-shadow: 0px 3px 5px 0px rgba(0, 0, 0, 0.21);
    background: rgba(64, 158, 255, 0.4);
    border: 1px solid #409eff;
    box-shadow: 0px 1px 3px 0px rgba(0, 0, 0, 0.1);
    border-radius: 5px;
  }
  .lefMenuDivActive {
    background: linear-gradient(180deg, #002992, #080472);
    background: rgba(64, 158, 255, 0.4);
    border: 1px solid #409eff;
  }
  .menuTwoImage {
    width: 32px;
@@ -1254,5 +1295,8 @@
  .twoMenu_imge87 {
    background: url("../../assets/img/synthesis/清除.png") no-repeat center;
  }
  .twoMenu_imge88 {
    background: url("../../assets/img/synthesis/图层 32.png") no-repeat center;
  }
}
</style>