管道基础大数据平台系统开发-【前端】-新系統界面
转孔柱状图添加鼠标移入显示信息,登录页面修改,样式管理,资料馆添加批量下载
已修改9个文件
310 ■■■■ 文件已修改
src/components/MapView/mapSpacePop.vue 58 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/components/login.vue 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/components/mapsdk.vue 53 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/Archive/index.vue 63 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/Tools/LayerTree.vue 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/Tools/queryinfo.vue 6 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/datamanage/SpatialData.vue 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/datamanage/styleManage.vue 60 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/userManage/resourceManage.vue 57 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/components/MapView/mapSpacePop.vue
@@ -88,7 +88,7 @@
            label="柱状图"
            width="100"
            align="center"
            v-show="spaceLayer== 'spaceLayer'"
            v-if="spaceLayer == 'sexplorationpoint'"
          >
            <template slot-scope="scope">
              <el-button
@@ -405,6 +405,12 @@
          Viewer.entities.remove(this.$store.state.histogramLayer[i])
        }
      }
      if (window.histogramHandler != null && Cesium.defined(window.histogramHandler)) {
        window.histogramHandler.removeInputAction(
          Cesium.ScreenSpaceEventType.MOUSE_MOVE
        )
        window.histogramHandler = null
      }
      var param = {
        gid: row.gid,
        name: this.spaceLayer,
@@ -425,8 +431,10 @@
      }
      var data = await dataQuerySelectByPage(obj)
      if (data.code != 200) {
      }
      if (data.result) {
      if (data.result.length != 0) {
        var val = data.result;
        //冒泡排序
        for (var i = 0; i < val.length; i++) {
@@ -439,8 +447,6 @@
            }
          }
        }
        var outlineList = [
          'rgba(141,135,114,1)',
          'rgba(248,235,179,1)',
@@ -450,11 +456,8 @@
          'rgba(197,222,130,1)',
          'rgba(208,228,177,1)',
        ]
        var num = row.elev;
        var height = 0;
        for (var i = 0; i < val.length; i++) {
          var fill, line;
          if (i > outlineList.length) {
@@ -465,10 +468,11 @@
            fill = outlineList[i];
            line = outlineList[i];
          }
          var height = num - val[i].botdepth
          var layer = Viewer.entities.add({
            position: Cesium.Cartesian3.fromDegrees(coord[0], coord[1]),
            tag: 'Histogram',
            properties: val[i],
            ellipse: {
              semiMinorAxis: 1.0, //短轴
              semiMajorAxis: 1.0, //长轴
@@ -485,14 +489,40 @@
          this.$store.state.histogramLayer.push(layer)
          sgworld.Navigate.flyToObj(layer)
        }
        window.histogramHandler = new Cesium.ScreenSpaceEventHandler(
          sgworld.Viewer.scene.canvas
        )
        var that = this;
        window.histogramHandler.setInputAction((event) => {
          // var ellipsoid = sgworld.Viewer.scene.globe.ellipsoid;
          // var cartesian = sgworld.Viewer.scene.camera.pickEllipsoid(event.endPosition, ellipsoid);
          var pick = sgworld.Viewer.scene.pick(event.endPosition);
          var selectedEntity = null;
          if (Cesium.defined(pick)) {
            if (pick && pick.id && pick.id.tag && pick.id.tag == "Histogram") {
              that.$store.state.propertiesInfo = {
                title: pick.id.properties._exppointid._value,
                name: pick.id.properties._geoname._value,
                type: pick.id.properties.geotype._value,
                botdepth: pick.id.properties._botdepth._value,
                describe: pick.id.properties._describe._value,
              }
              that.$store.state.propertiesFlag = "2"
            } else {
              that.$store.state.propertiesFlag = null
            }
          } else {
            that.$store.state.propertiesFlag = null
          }
        }, Cesium.ScreenSpaceEventType.MOUSE_MOVE)
      } else {
        var msg = row.exppointid + " 没勘探点地层表数据,无法生成柱状图"
        this.$message.error(msg);
      }
    },
    async spaceLocation(index, row) {
src/components/login.vue
@@ -44,7 +44,7 @@
        <el-form-item prop="uid">
          <el-input
            v-model="loginForm.uid"
            placeholder="输入您的账号或手机号"
            placeholder="输入登录账号"
            class="nobr"
            size="meddle"
            autocomplete="off"
@@ -60,7 +60,7 @@
          <el-input
            show-password
            v-model="loginForm.pwd"
            placeholder="输入您的密码"
            placeholder="请输入登录密码"
            class="nobr"
            autocomplete="off"
          >
@@ -76,7 +76,7 @@
            <el-form-item prop="validCode">
              <el-input
                v-model="loginForm.validCode"
                placeholder="输入验证码(忽略大小写)"
                placeholder="请输入验证码(忽略大小写)"
                class="nobr"
              ></el-input>
            </el-form-item>
@@ -89,6 +89,7 @@
            <validCode
              v-model="validCode"
              ref="refresh"
              style="margin-left:16px"
              @sendData="getCode"
            ></validCode>
          </el-col>
src/components/mapsdk.vue
@@ -353,7 +353,12 @@
          <div slot="header">
            <span>{{$store.state.propertiesName.tabDesc || '属性信息'}}</span>
            <div style="float: right; cursor: pointer">
              <el-link type="primary" :underline="false" @click="getAttatchList" style="margin-right: 10px">查看附件</el-link>
              <el-link
                type="primary"
                :underline="false"
                @click="getAttatchList"
                style="margin-right: 10px"
              >查看附件</el-link>
              <i
                class="el-icon-close"
                @click="closeBufferBox(6)"
@@ -369,10 +374,34 @@
              v-for="(value, key) in $store.state.propertiesInfo"
              :key="key"
            >
              <span v-if="key != 'eventid'" style="font-size: 14px;font-weight: bold;margin-right: 5px">{{key}}:</span>
              <span
                v-if="key != 'eventid'"
                style="font-size: 14px;font-weight: bold;margin-right: 5px"
              >{{key}}:</span>
              <span v-if="key != 'eventid'">{{value}}</span>
            </div>
          </div>
        </el-card>
      </div>
      <div
        class="propertiesPop"
        v-if="$store.state.propertiesFlag == '2'"
      >
        <el-card class="box-card">
          <div slot="header">
            <span>{{ $store.state.propertiesInfo.title }}</span>
          </div>
          <div
            class="pointInfoBoxContext"
            style="height:250px;overflow-y: auto"
          >
            <div style="line-height: 20px">岩土名称: {{ $store.state.propertiesInfo.name }}</div>
            <div style="line-height: 20px">岩土类型: {{ $store.state.propertiesInfo.type }}</div>
            <div style="line-height: 20px">层底深度: {{ $store.state.propertiesInfo.botdepth }} 米</div>
            <div style="line-height: 20px">描述: {{ $store.state.propertiesInfo.describe }}</div>
          </div>
        </el-card>
      </div>
      <!--附件列表弹窗-->
@@ -398,20 +427,28 @@
            />
            <el-table-column
                prop="name"
                label="名称">
              label="名称"
            >
            </el-table-column>
            <el-table-column
                label="时间"
                width="180">
              width="180"
            >
              <template slot-scope="scope">
                <span>{{format(scope.row.createTime)}}</span>
              </template>
            </el-table-column>
            <el-table-column
                label="操作"
                width="100">
              width="100"
            >
              <template slot-scope="scope">
                <el-button v-if="showAttachDetailBtn(scope.row)" @click="showAttachDetail(scope.row)" type="text" size="small">查看</el-button>
                <el-button
                  v-if="showAttachDetailBtn(scope.row)"
                  @click="showAttachDetail(scope.row)"
                  type="text"
                  size="small"
                >查看</el-button>
              </template>
            </el-table-column>
          </el-table>
@@ -1203,13 +1240,13 @@
      if (name.indexOf('.pdf') != -1) {
        this.dialog.dialogVisible = true;
        this.dialog.isPdf = true;
        var url = BASE_URL + "/res/downloadForView?guid=" + row.guid + "&token=" + getToken();
        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) {
        this.dialog.dialogVisible = true;
        this.dialog.isJpg = true;
        var url = BASE_URL + "/res/downloadForView?guid=" + row.guid + "&token=" + getToken();
        var url = BASE_URL + "/comprehensive/downloadForView?guid=" + row.guid + "&token=" + getToken();
        this.dialog.src = url
      }
    },
src/views/Archive/index.vue
@@ -123,6 +123,19 @@
              class="el-input__icon el-icon-search"
            ></i></el-input>
        </el-form-item>
        <!-- 批量下載 -->
        <el-form-item
          style="float:right"
          v-if="formInline.dataType =='type2'"
        >
          <el-button
            type="success"
            size="small"
            icon="el-icon-download"
            @click="setCardDownload"
          >{{$t('common.download')}}</el-button>
        </el-form-item>
        <!-- 空间查询 -->
        <el-form-item style="float:right">
          <el-button
@@ -162,6 +175,12 @@
            >
              <span v-show="formInline.dataType =='type2'">
                <el-checkbox
                  v-model="item.ischecked"
                  @change="handleCheckedDataTypeChange(item)"
                  style="margin-right:10px"
                >
                </el-checkbox>
                <span v-if="item.ismeta > 0">
                  <el-link
                    style="color: #409eff"
@@ -192,13 +211,13 @@
                  :title="$t('common.details')"
                  @click="setCardDetails(item)"
                ></i>
                <i
                <!-- <i
                  v-show="formInline.dataType=='type2'"
                  style="margin-left:10px"
                  class="el-icon-download"
                  :title="$t('common.download')"
                  @click="setCardDownload(item)"
                ></i>
                ></i> -->
                <i
                  v-show="!item.isShow"
                  style="margin-left:10px"
@@ -239,6 +258,7 @@
            </div>
          </el-card>
        </div>
      </div>
      <div class="archBottomBox">
        <div style="margin-top:10px">
@@ -1206,7 +1226,8 @@
        isPdf: false,
        isJpg: false,
        src: ''
      }
      },
      checkedDataType: [],
    };
  },
@@ -1217,6 +1238,23 @@
    this.signGetPublicKey();
  },
  methods: {
    //批量下载复选框chagne
    handleCheckedDataTypeChange(res) {
      var std = 0;
      for (var i = 0; i < this.multipleSelection1.length; i++) {
        if (res.guid == this.multipleSelection1[i].guid) {
          std = i;
        }
      }
      if (std == 0) {
        this.multipleSelection1.push(res);
      } else {
        this.multipleSelection1.splice(std, 1)
      }
      console.log(this.multipleSelection1)
    },
    matchState(state = "", reg) {
      var row = state.row;
      var name = row.name;
@@ -1271,12 +1309,12 @@
      if (name.indexOf('.pdf') != -1) {
        this.dialog.dialogVisible = true;
        this.dialog.isPdf = true;
        var url = BASE_URL + "/res/downloadForView?guid=" + row.guid + "&token=" + getToken();
        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) {
        this.dialog.dialogVisible = true;
        this.dialog.isJpg = true;
        var url = BASE_URL + "/res/downloadForView?guid=" + row.guid + "&token=" + getToken();
        var url = BASE_URL + "/comprehensive/downloadForView?guid=" + row.guid + "&token=" + getToken();
        this.dialog.src = url
      }      
    },
@@ -1663,6 +1701,11 @@
      $("#downFrame").attr("src", url).click();
      this.closeDown();
      this.monthdata.filter((res) => {
        return res.ischecked = false;
      })
      this.multipleSelection1 = [];
    },
    closeDown() {
      this.passWorldVisible = false;
@@ -1671,8 +1714,8 @@
    },
    //文件下载
    setCardDownload(res) {
      this.multipleSelection1 = [];
      this.multipleSelection1.push(res);
      // this.multipleSelection1 = [];
      // this.multipleSelection1.push(res);
      if (this.multipleSelection1.length == 0) {
        this.$message({
          message: '请先选择要下载的文件',
@@ -2041,13 +2084,15 @@
        val = val.filter((res) => {
          var type = "." + res.type;
          res.name = res.name.replaceAll(type, "")
          res.mold = "文件"
          res.isShow = false
          res.mold = "文件";
          res.isShow = false;
          res.ischecked = false;
          return res;
        })
        this.monthdata = val;
        this.listData.count = data.count;
      } else {
        this.monthdata = [];
        this.listData.count = 0;
src/views/Tools/LayerTree.vue
@@ -91,7 +91,7 @@
        @click="histogram()"
        v-show="shwoHistogram"
      >
        <i class="el-icon-tickets"></i>&nbsp;&nbsp;转孔柱状图
        <i class="el-icon-tickets"></i>&nbsp;&nbsp;钻孔柱状图
      </div>
      <!-- <div
        class="edit"
src/views/Tools/queryinfo.vue
@@ -81,6 +81,12 @@
          Viewer.entities.remove(this.$store.state.histogramLayer[i])
        }
      }
      if (window.histogramHandler != null && Cesium.defined(window.histogramHandler)) {
        window.histogramHandler.removeInputAction(
          Cesium.ScreenSpaceEventType.MOUSE_MOVE
        )
        window.histogramHandler = null
      }
    },
    // 打开弹窗
    open(title, value, style = {}) {
src/views/datamanage/SpatialData.vue
@@ -812,12 +812,12 @@
      if (name.indexOf('.pdf') != -1) {
        this.dialog.dialogVisible = true;
        this.dialog.isPdf = true;
        var url = BASE_URL + "/res/downloadForView?guid=" + row.guid + "&token=" + getToken();
        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) {
        this.dialog.dialogVisible = true;
        this.dialog.isJpg = true;
        var url = BASE_URL + "/res/downloadForView?guid=" + row.guid + "&token=" + getToken();
        var url = BASE_URL + "/comprehensive/downloadForView?guid=" + row.guid + "&token=" + getToken();
        this.dialog.src = url
      }
    },
src/views/datamanage/styleManage.vue
@@ -67,6 +67,13 @@
                size="small"
              >{{ $t('common.empty') }}
              </el-button>
              <el-button
                @click="handleDownload('ruleForm')"
                icon="el-icon-download"
                type="success"
                size="small"
              >{{ $t('common.download') }}
              </el-button>
            </el-form-item>
          </div>
        </div>
@@ -165,12 +172,12 @@
              size="small"
            >{{ $t('common.update') }}
            </el-button>
            <el-button
            <!-- <el-button
              @click="handleDownload(scope.$index, scope.row)"
              type="success"
              plain
              size="small"
            >{{ $t('common.download') }}
            >{{ $t('common.download') }} -->
            </el-button>
          </template>
        </el-table-column>
@@ -1591,22 +1598,63 @@
      this.itemdetail.updateTime = this.formomentTime(
        this.itemdetail.updateTime
      );
      this.itemdetail.imageFile =
        BASE_URL + "/res/download?guid=" + row.viewGuid + "&token=" + token;
      this.itemdetail.imageFile = BASE_URL + "/comprehensive/downloadForView?guid=" + row.viewGuid + "&token=" + token;
    },
    closeDetial() {
      this.showinfoBox = false;
      this.itemdetail = {};
    },
    handleDownload() {
      if (this.multipleSelection.length == 0) {
        return this.$message({
          message: '请选择需要下载的文件',
          type: 'warning'
        });
      }
    handleDownload(index, row) {
      // var data = {
      //   guids: ["e5b6ae0889b88111f13a4b6e048348db", "fa4f299e901a0c46e634f8fcc8185c0c"]
      // };
      // ajax(getUrl("/res/downloadReqForGuids"), "POST", JSON.stringify(data), null, null, function (rs) {
      //   console.log(rs);
      //   alert("code = " + rs.code + ", msg = " + rs.msg + ", result = " + rs.result);
      // });
      var std = [];
      for (var i in this.multipleSelection) {
        std.push(this.multipleSelection[i].fileGuid)
      }
      var token = getToken()
      $.ajax(BASE_URL + "/style/downloadReqForGuids?token=" + token, {
        type: "post",
        data: JSON.stringify({
          guids: std
        }),
        async: true,
        cache: false,
        processData: false,
        contentType: false,
        success: res => {
          if (res.code != 200) {
            return
          }
      var token = getToken()
      var url = BASE_URL + "/res/download?token=" + token + "&guid=" + row.fileGuid;
          var url = BASE_URL + "/style/downloadFile?token=" + token + "&guid=" + res.result;
      $("#downFrame").attr("src", url).click();
        },
      })
    },
    // handleDownload(index, row) {
    //   var token = getToken()
    //   var url = BASE_URL + "/res/download?token=" + token + "&guid=" + row.fileGuid;
    //   $("#downFrame").attr("src", url).click();
    // },
    handleEdit(index, row) {
      this.upflag = true;
      this.dialogFormVisible = true;
src/views/userManage/resourceManage.vue
@@ -5,16 +5,31 @@
        `${$t('userManage.resManage')}`,
      ]"></My-bread>
    <el-divider />
    <div class="power_quire subpage_Div" ref="container">
    <div
      class="power_quire subpage_Div"
      ref="container"
    >
      <el-form
        ref="form"
        :model="ruleForm"
        :inline="true"
      >
        <div class="flex_box">
          <el-form-item :label="$t('userManage.resManageObj.name')" style="margin-right: auto">
          <el-input v-model="ruleForm.name" size="small" style="width:200px" :placeholder="$t('userManage.resManageObj.nameHolder')">
            <i slot="suffix" class="el-icon-search" @click="submitForm"></i>
          <el-form-item
            :label="$t('userManage.resManageObj.name')"
            style="margin-right: auto"
          >
            <el-input
              v-model="ruleForm.name"
              size="small"
              style="width:200px"
              :placeholder="$t('userManage.resManageObj.nameHolder')"
            >
              <i
                slot="suffix"
                class="el-icon-search"
                @click="submitForm"
              ></i>
          </el-input>
        </el-form-item>
        <el-form-item>
@@ -51,7 +66,10 @@
      </el-form>
    </div>
    <div class="dividing-line"></div>
    <div class="table_box" :style="styleVar">
    <div
      class="table_box"
      :style="styleVar"
    >
      <el-table
        :data="tableData"
        style="width: 100%"
@@ -114,7 +132,6 @@
        >
        </el-table-column>
        <el-table-column
          :label="$t('common.operate')"
          width="170px"
        >
@@ -135,7 +152,10 @@
          </template>
        </el-table-column>
      </el-table>
      <div class="pagination_box" style="margin-top: 10px">
      <div
        class="pagination_box"
        style="margin-top: 10px"
      >
      <el-pagination
        @size-change="handleSizeChange"
        @current-change="handleCurrentChange"
@@ -148,11 +168,11 @@
      </el-pagination>
    </div>
    </div>
     <div class="infoBox_box" v-show="showinfoBox">
    <div
      class="infoBox box_div "
      class="infoBox_box"
      v-show="showinfoBox"
    >
      <div class="infoBox box_div ">
      <div
        slot="header"
        class="clearfix"
@@ -272,7 +292,10 @@
      :visible.sync="InsertFormdialog"
    >
     <div style="height: 500px; overflow: auto">
      <el-form :model="insertform" label-position="top">
        <el-form
          :model="insertform"
          label-position="top"
        >
        <el-form-item
          :label="$t('userManage.resManageObj.name')"
          :label-width="formLabelWidth"
@@ -413,7 +436,6 @@
           </div>
         </div>
        </el-form-item>
        <el-form-item
          :label="$t('userManage.resManageObj.bak')"
@@ -449,12 +471,14 @@
    </el-dialog>
    <el-dialog
      :title="$t('userManage.userInfoObj.editPermission')"
      :visible.sync="EditFormdialog"
      :before-close="EditFromDataClose"
    >
        <div style="height: 500px; overflow: auto">
      <el-form :model="upform" label-position="top">
        <el-form
          :model="upform"
          label-position="top"
        >
        <el-form-item
          :label="$t('userManage.resManageObj.name')"
          :label-width="formLabelWidth"
@@ -577,7 +601,6 @@
            disabled
            autocomplete="off"
             style="width:100%"
          ></el-input>
            </div>
 <div class="BoxFlexbutton">
@@ -1029,8 +1052,8 @@
      );
      this.itemdetail.imageFile =
        BASE_URL + "/res/download?guid=" + row.img + "&token=" + token;
      console.log(this.itemdetail.imageFile);
        BASE_URL + "/comprehensive/downloadForView?guid=" + row.img + "&token=" + token;
    },
    handleEdit(index, row) {
      this.getDepList();