管道基础大数据平台系统开发-【前端】-新系統界面
Surpriseplus
2023-02-09 731d894cf232d98b547df2bd006795de74fb16a7
src/views/datamanage/dataUpdata.vue
@@ -1,6 +1,6 @@
<template>
  <div
    class="authorityManagement_box"
    class="subpage_Box"
    v-loading="loading"
    element-loading-background="rgba(0, 0, 0, 0.8)"
  >
@@ -18,7 +18,7 @@
        :label="$t('dataManage.dataUpObj.uploaddata')"
        name="first"
      >
        <div class="contentIquery">
        <div class="subpage_Iquery subpage_Div">
          <el-form
            :inline="true"
            :model="formInline"
@@ -30,6 +30,7 @@
                :disabled="tableData.length == 0 ? false : true"
                v-model="formInline.uploadType"
                @change="uploadTypeChange"
                :popper-append-to-body="false"
                placeholder="请选择"
              >
                <el-option
@@ -45,14 +46,33 @@
              v-show="uploadFlag"
              :label="$t('dataManage.dataUpObj.storageDirectory')"
            >
              <el-cascader
              <el-select
                :popper-append-to-body="false"
                v-model="formInline.dirName"
                :disabled="tableData.length == 0 ? false : true"
              >
                <el-option
                  :value="formInline.dirid"
                  :label="formInline.dirName"
                  style=" height:auto"
                >
                  <el-tree
                    ref="tree"
                    :data="catalogOption"
                    node-key="id"
                    :props="cascader"
                    @node-click="catalogChange"
                  />
                </el-option>
              </el-select>
              <!-- <el-cascader
                :disabled="tableData.length == 0 ? false : true"
                v-model="formInline.dirid"
                :options="catalogOption"
                @change="catalogChange"
                ref="selectcascader"
                :props="cascader"
              ></el-cascader>
              ></el-cascader>  -->
            </el-form-item>
            <!-- 项目名称 -->
            <el-form-item
@@ -60,6 +80,7 @@
              :label="$t('dataManage.dataUpObj.entryName')"
            >
              <el-select
                :popper-append-to-body="false"
                :disabled="tableData.length == 0 ? false : true"
                v-model="formInline.entryId"
                @change="entryNameChange"
@@ -76,6 +97,7 @@
            <!-- 数据版本 -->
            <el-form-item :label="$t('dataManage.dataUpObj.dataVersion')">
              <el-select
                :popper-append-to-body="false"
                :disabled="tableData.length == 0 ? false : true"
                v-model="formInline.verid"
                :placeholder="$t('common.choose')"
@@ -92,6 +114,8 @@
            <!-- 数据专业 -->
            <el-form-item :label="$t('dataManage.dataUpObj.dataSpecialty')">
              <el-select
                :popper-append-to-body="false"
                :disabled="tableData.length == 0 ? false : true"
                v-model="formInline.specialtyId"
                :placeholder="$t('common.choose')"
@@ -108,6 +132,7 @@
            <!-- 坐标系 -->
            <el-form-item :label="$t('dataManage.dataUpObj.coordinateSystem')">
              <el-select
                :popper-append-to-body="false"
                :disabled="tableData.length == 0 ? false : true"
                v-model="formInline.coordinateId"
                :placeholder="$t('common.choose')"
@@ -227,7 +252,8 @@
            </el-form-item>
            <el-form-item>
              <!-- 上传 -->
              <el-button v-if="menuStatus.upload"
              <el-button
                v-if="menuStatus.upload"
                :disabled="tableData.length == 0 ? false : true"
                @click="setFileUpload"
                size="small"
@@ -237,7 +263,8 @@
              $t('common.upload')
            }}</el-button>
              <!-- 删除 -->
              <el-button v-if="menuStatus.delete"
              <el-button
                v-if="menuStatus.delete"
                :disabled="multipleSelection.length == 0 ? true : false"
                icon="el-icon-delete"
                size="small"
@@ -245,7 +272,8 @@
                type="danger"
              >{{ $t('common.delete') }}</el-button>
              <!-- 质检 -->
              <el-button v-if="menuStatus.insert"
              <el-button
                v-if="menuStatus.insert"
                :disabled="multipleSelection.length == 0 ? true : false"
                type="info"
                size="small"
@@ -254,7 +282,8 @@
              >{{$t('common.quayTest')}}
              </el-button>
              <!-- 入库 -->
              <el-button  v-if="menuStatus.insert"
              <el-button
                v-if="menuStatus.insert"
                @click="setFileWare"
                size="small"
                :disabled="tableData.length == 0 ?  true: false"
@@ -267,7 +296,7 @@
          </el-form>
        </div>
        <!-- 上传数据列表 -->
        <div class="contentBox">
        <div class="subpage_Content subpage_Div">
          <el-table
            :data="tableData"
            @selection-change="handleSelectionChange"
@@ -310,7 +339,8 @@
              width="120"
            >
              <template slot-scope="scope">
                <el-button v-if="menuStatus.download"
                <el-button
                  v-if="menuStatus.download"
                  v-show="scope.row.code != null"
                  @click="handerLogClick(scope.row)"
                  type="text"
@@ -328,7 +358,7 @@
        :label="$t('dataManage.dataUpObj.receiptdata')"
        name="second"
      >
        <div class="contentIquery">
        <div class="subpage_Iquery subpage_Div">
          <el-form
            :inline="true"
            :model="formWarehousing"
@@ -355,7 +385,8 @@
                size="small"
                type="info"
              >{{ $t('common.reset') }}</el-button>
              <el-button v-if="menuStatus.delete"
              <el-button
                v-if="menuStatus.delete"
                @click="setWarehouseDel"
                icon="el-icon-folder-delete"
                type="danger"
@@ -365,7 +396,7 @@
          </el-form>
        </div>
        <div
          class="contentBox"
          class="subpage_Content subpage_Div"
          style="min-height:330px"
        >
          <div class="contentTable">
@@ -453,7 +484,7 @@
              />
            </el-table>
          </div>
          <div class="pagination_box">
          <div>
            <el-pagination
              @size-change="handleSizeChange"
              @current-change="handleCurrentChange"
@@ -824,27 +855,24 @@
      width="70%"
    >
      <div class="dialogBox">
        <div class="transFarBox">
        <div class="transFarBox subpage_Div">
          <ul>
            <li
              @click="singleElection(item)"
              v-for="(item, i) in tableWareOne"
              :class="{ active: activeName == item.tab }"
              :class="{ active: activeName == item.eventid }"
            >{{item.tab}} ({{item.type}})</li>
          </ul>
        </div>
        <div class="tarnsbtton">
          <div>
            <div style="padding:2%">
              <el-link><i
                  style="color:white"
                  class="el-icon-plus"
                ></i></el-link>
              <el-link><i class="el-icon-plus"></i></el-link>
            </div>
          </div>
        </div>
        <div class="transFarBox">
        <div class="transFarBox subpage_Div">
          <ul>
            <li
              @click="singleElection2(item)"
@@ -856,21 +884,17 @@
        <div class="tarnsbtton">
          <div>
            <div style="padding:2%">
              <el-link @click="setWareTableChangeLeft"><i
                  style="color:white"
                  class="el-icon-d-arrow-left"
                ></i></el-link>
              <el-link @click="setWareTableChangeLeft"><i class="el-icon-d-arrow-left"></i></el-link>
            </div><br />
            <div style="padding:2%">
              <el-link><i
                  @click="setWareTableChangeRight"
                  style="color:white"
                  class="el-icon-d-arrow-right"
                ></i></el-link>
            </div>
          </div>
        </div>
        <div class="transFarBox">
        <div class="transFarBox subpage_Div">
          <ul>
            <li
              @click="singleElection3(i)"
@@ -885,14 +909,18 @@
        class="dialog-footer"
      >
        <el-button
          class="primary"
          size="small"
          @click="autoMatchWare"
          type="primary"
        >自动匹配</el-button>
        <el-button @click="setInsrtWareTableClose ">取 消</el-button>
        <el-button
          class="primary"
          size="small"
          type="info"
          @click="setInsrtWareTableClose "
        >取 消</el-button>
        <el-button
          size="small"
          type="primary"
          @click="setInsrtWareTable"
        >确 定</el-button>
      </span>
@@ -939,6 +967,25 @@
            :total="count1"
          >
          </el-pagination>
        </div>
      </div>
    </el-dialog>
    <el-dialog
      :close-on-click-modal="false"
      title="上传进度"
      :visible.sync="jindudialogVisible"
      width="30%"
    >
      <div>
        <div>
          文件传输进度:
        </div>
        <div>
          <el-progress
            :percentage="jindutiao"
            :format="format"
          ></el-progress>
        </div>
      </div>
@@ -1126,6 +1173,9 @@
        download: false,
      },
      jindutiao: 0,
      jindudialogVisible: false,
      jindutiaoname: []
    }
  },
@@ -1177,7 +1227,7 @@
      }
      for (var i = 0; i < permsEntity.length; i++) {
        if (val === permsEntity[i].perms) {
          this.showPermsMenu(permsEntity[i]);
        }
      }
@@ -1265,6 +1315,7 @@
          }
        }
      }
      this.loading = true;
      const res = await dataUpload_insertFiles(JSON.stringify(this.insertWareList));
      this.loading = false
@@ -1357,7 +1408,7 @@
    //数据匹配左侧点击事件
    singleElection(row) {
      this.wareSelectOne = row;
      this.activeName = row.tab
      this.activeName = row.eventid
    },
    //数据匹配左侧中间点击事件
    singleElection2(row) {
@@ -1749,6 +1800,16 @@
          }
        }
      }
      const that = this
      that.jindudialogVisible = true
      let listval = []
      formData.forEach((key, val) => {
        listval.push({
          name: val
        })
      })
      that.$set(this, 'jindutiaoname', listval)
      that.$set(this, 'jindutiao', 0)
      this.loading = true;
      $.ajax(BASE_URL + "/dataUpload/uploadFiles?token=" + token + "&path=" + this.formInline.path, {
        type: "post",
@@ -1763,6 +1824,7 @@
            return this.$message.error('数据上传失败');
          }
          this.getFileLength();
          this.$set(this, 'jindutiao', 100)
          this.$message({
            message: '上传成功',
            type: 'success'
@@ -1772,8 +1834,25 @@
        error: (rs) => {
          this.loading = false;
          this.$message.error('数据上传失败');
        },
        xhr: function () {
          var myXhr = $.ajaxSettings.xhr();
          if (myXhr.upload) { //检查upload属性是否存在
            myXhr.upload.addEventListener('progress', that.progressHandlingFunction, false); //绑定progress事件的回调函数
          }
          return myXhr; //xhr对象返回给jQuery使用
        }
      });
    },
    progressHandlingFunction(event) {
      var loaded = event.loaded;//已上传
      var loaded = Math.floor(100 * (event.loaded / event.total) - 1); //计算已经上传的百分比
      $("#prog").html(loaded + "%"); //应用到显示UI,可根据自己需要修改
      this.jindutiao = loaded
      this.$set(this, 'jindutiao', loaded)
    },
    format(percentage) {
      return percentage === 100 ? '上传完毕' : `${percentage}%`;
    },
    //获取文件上传路径
    async getFilePath() {
@@ -2157,12 +2236,12 @@
        }
    },
    //目录切换
    catalogChange(res) {
    catalogChange(data, node, nodeData) {
      this.startQuayTestForms();
      this.$refs['selectcascader'].dropDownVisible = false
      var value = this.$refs['selectcascader'].getCheckedNodes();
      // this.$refs['selectcascader'].dropDownVisible = false
      // var value = this.$refs['selectcascader'].getCheckedNodes();
      var bak = value[0].data.bak;
      var bak = node.data.bak;
      this.pathBak = bak;
      if (bak != null) {
        for (var key in this.quayTestShow) {
@@ -2171,12 +2250,13 @@
          }
        }
      }
      var fileType = value[0].data.code;
      var fileType = node.data.code;
      if (fileType == null) {
        fileType = "*.*"
      }
      this.formInline.selectFileType = fileType;
      this.formInline.dirid = res;
      this.formInline.dirid = node.data.id;
      this.formInline.dirName = node.data.name
      this.getselectVerByDirid();
    },
    //Tabsq切换
@@ -2198,259 +2278,4 @@
  }
};
</script>
<style lang="less" scoped>
//@import url(); 引入公共css类
.authorityManagement_box {
  width: 98%;
  height: 98%;
  padding: 1%;
  overflow: auto;
  .contentIquery {
    width: calc(98% - 2px);
    height: auto;
    border: 1px solid white;
    padding-left: 1%;
    padding-right: 1%;
    padding-top: 1%;
    border-radius: 5px;
  }
  .contentBox {
    width: calc(98% - 2px);
    height: auto;
    border: 1px solid white;
    margin-top: 1%;
    margin-bottom: 1%;
    padding: 1%;
    border-radius: 5px;
  }
  .elDivider {
    margin: 0;
  }
  .dialogBox {
    width: 100%;
    height: 500px;
    display: flex;
    justify-content: space-between;
    .transFarBox {
      width: 30%;
      height: 100%;
      border: 1px solid white;
      border-radius: 5px;
      max-height: 500px;
      overflow-y: auto;
      li {
        color: white;
        border-bottom: 1px solid white;
        line-height: 30px;
        text-align: center;
      }
      li:hover {
        background: rgba(255, 255, 255, 0.3);
      }
      .active {
        color: #409eff;
      }
    }
    .tarnsbtton {
      width: 6%;
      height: 100%;
      /*flex 布局*/
      display: flex;
      /*实现垂直居中*/
      align-items: center;
      /*实现水平居中*/
      justify-content: center;
    }
  }
  .pagination_box {
    margin-top: 20px;
    /deep/.el-input__inner {
      background-color: transparent !important;
      border: 1px solid;
      color: white;
    }
    /deep/.el-pagination__total {
      color: white;
    }
    /deep/.el-pagination__jump {
      color: white;
    }
    /deep/.el-pager li.active {
      color: #409eff;
    }
    /deep/.el-pager li {
      color: white;
      background: transparent;
    }
    /deep/.el-pager li {
      color: white;
    }
    /deep/.btn-prev {
      background: transparent;
    }
    /deep/.btn-next {
      background: transparent;
    }
    /deep/.btn-next i {
      color: white;
    }
    /deep/.btn-prev i {
      color: white;
    }
  }
  /*修改table 表体的背景颜色和文字颜色*/
  /deep/ .el-table {
    background-color: transparent;
    th,
    td {
      background-color: transparent;
    }
    .el-table__expanded-cell {
      background-color: transparent !important;
    }
    // 表头背景色
    th.el-table__cell {
      background-color: #303030;
      color: #fff;
    }
    tr > td {
      background-color: #303030;
      color: #fff;
    }
    // hover效果
    tr:hover > td {
      background-color: rgba(255, 255, 255, 0.3) !important;
    }
    tbody tr:hover {
      background-color: rgba(255, 255, 255, 0.3) !important;
      // text-align: center;
    }
    // 滚动条宽高
    .el-table__body-wrapper::-webkit-scrollbar {
      width: 5px;
      height: 10px;
    }
    .el-table__body-wrapper::-webkit-scrollbar {
      width: 5px;
      /*滚动条宽度*/
      height: 10px;
      /*滚动条高度*/
    }
    /*定义滚动条轨道 内阴影+圆角*/
    .el-table__body-wrapper::-webkit-scrollbar-track {
      box-shadow: 0px 1px 3px #216fe6 inset;
      /*滚动条的背景区域的内阴影*/
      border-radius: 10px;
    }
    /*定义滑块 内阴影+圆角*/
    .el-table__body-wrapper::-webkit-scrollbar-thumb {
      box-shadow: 0px 1px 3px #216fe6 inset;
      border-radius: 6px;
      background-color: #216fe6;
    }
  }
  /deep/.el-dialog__headerbtn {
    display: none;
  }
  /deep/.el-form-item__label {
    color: white;
  }
  // 设置输入框的背景色、字体颜色、边框属性设置;
  /deep/.el-input__inner {
    background-color: transparent !important ;
    color: #fff;
    border: 1px solid;
  }
  /deep/ .popper__arrow::after {
    border-top-color: rgba(43, 45, 55, 0.8);
  }
  /deep/ .el-select .el-input__inner {
    border-color: #fff !important;
  }
  /deep/.el-cascader .el-input__inner {
    border-color: #fff !important;
  }
  /deep/.el-textarea__inner {
    background: transparent;
    border-color: #fff !important;
    color: white;
  }
  /deep/.el-textarea .el-input__count {
    background: transparent;
    color: #fff !important;
  }
  /deep/.el-loading-spinner i {
    color: #1890ff !important;
  }
  /deep/.el-tabs__active-bar {
    background: #409eff;
  }
  /deep/ .el-tabs__item {
    color: #409eff;
  }
  /deep/ .el-dialog {
    background: #303030;
  }
  /deep/.el-range-editor.is-active,
  .el-range-editor.is-active:hover,
  .el-select .el-input.is-focus .el-input__inner {
    border: 1px solid;
  }
  /deep/.el-dialog__title {
    color: white;
  }
  .dialogDiv {
    /deep/.el-form-item {
      margin-bottom: 0px;
    }
    /deep/.el-checkbox {
      color: white;
    }
    /deep/.el-checkbox__input.is-checked + .el-checkbox__label {
      color: white !important;
    }
    /deep/.el-checkbox__input.is-disabled + span.el-checkbox__label {
      color: white !important;
    }
    .dialogContent {
      width: calc(100% - 20px);
      max-height: 370px;
      float: left;
      overflow: auto;
      padding: 10px;
      .ContBox {
        width: 44%;
        padding: 10px;
        margin-left: 2%;
        float: left;
        .ContDiv {
          display: flex;
          justify-content: space-around;
          margin: 5px 0px;
          .contLable {
            width: 175px;
            color: white;
          }
        }
      }
    }
  }
  .elBotton {
    background: transparent !important;
    border: 1px solid white !important;
    color: white !important;
  }
  /deep/.el-dialog__wrapper {
    overflow: hidden;
  }
}
</style>