管道基础大数据平台系统开发-【前端】-新系統界面
Surpriseplus
2023-02-06 4e3d77dcbe421a4d6611ebcdd1ac3165cb36ad4b
src/views/Archive/index.vue
@@ -1,12 +1,12 @@
<template>
  <div class="archive">
  <div class="archive box_div">
    <div class="top_header">
      <div class="top_left">
        <My-bread :list="[`${$t('synthesis.synthesis')}`, `${$t('synthesis.archive')}`]"></My-bread>
      </div>
    </div>
    <div class="box_item">
    <div class="box_item ">
      <div class="box_left">资料类别</div>
      <div class="box_cont">
@@ -22,16 +22,12 @@
        </div>
        <div
          v-if="!isShowFirstCheck"
          class="box_div"
          class="menu_div"
          v-for="(item, index) in showList"
          :key="index"
          @click="changeListDataType(item)"
        >
          <!-- <el-checkbox
            v-if="isShowFirstCheck"
            v-model="item.isCheckedFlag"
            :checked="item.isCheckedFlag"
          ></el-checkbox> -->
          <div
            :class="{menuActive:dataTypeName == item.name}"
            style="margin-left: 5px"
@@ -40,13 +36,13 @@
      </div>
      <div class="box_right">
        <div
          class="box_div box_menu"
          class="menu_div subpage_Div"
          @click="moreEvent(1)"
        >
          {{ $t('synthesis.more') }}
        </div>
        <div
          class="box_div box_menu"
          class="menu_div subpage_Div "
          @click="checkEvent(1)"
        >
          <i class="el-icon-plus"></i>
@@ -55,7 +51,7 @@
        </div>
      </div>
    </div>
    <div class="box_item">
    <div class="box_item  ">
      <div class="box_left">项目名称</div>
      <div class="box_cont">
        <div v-if=" isShowSecondCheck">
@@ -70,7 +66,7 @@
        </div>
        <div
          v-if="!isShowSecondCheck"
          class="box_div"
          class="menu_div"
          v-for="(item, index) in showList1"
          :key="index"
          @click="changeListEntryName(item)"
@@ -83,13 +79,13 @@
      </div>
      <div class="box_right">
        <div
          class="box_div box_menu"
          class="menu_div subpage_Div"
          @click="moreEvent(2)"
        >
          {{ $t('synthesis.more') }}
        </div>
        <div
          class="box_div box_menu"
          class="menu_div subpage_Div"
          @click="checkEvent(2)"
        >
          <i class="el-icon-plus"></i>
@@ -100,8 +96,8 @@
    </div>
    <div class="bottom_content">
      <div class="bottom_left">
        <!-- <div class="box_div">当前搜索关键词:</div> -->
      <div class="bottom_left  ">
        <!-- <div class="menu_div">当前搜索关键词:</div> -->
        <div>
          <ul>
            <li>搜索类型</li>
@@ -114,7 +110,7 @@
            <li
              @click="getMenuChange(2)"
              :class="{ menuActive: !isMenuActive }"
              style="border-bottom: 1px solid white"
              style="border-bottom: 1px solid #dcdfe6"
            >
              文件数据源
            </li>
@@ -191,6 +187,14 @@
              $t('synthesis.rangequery')
            }}</el-button>
            </el-form-item>
            <el-form-item>
              <el-button
                @click="getdownloadList"
                size="mini"
              >{{
              $t('synthesis.DownloadList')
            }}</el-button>
            </el-form-item>
          </el-form>
        </div>
        <div v-if="isMenuActive">
@@ -200,7 +204,7 @@
              :key="index"
            >
              <div
                class="box_div"
                class="menu_div"
                @click="getShowTable(item)"
              >
                {{ item.tabDesc }}
@@ -550,7 +554,7 @@
      </div>
    </el-dialog>
    <div
      class="downloadBox"
      class="downloadBox box_div subpage_Div"
      v-if="showCodeBox"
    >
      <h4 style="padding: 20px">{{$t('common.passworld')}}</h4>
@@ -652,10 +656,7 @@
      <div
        style="float:right;margin-right:10px"
        @click="downBatchFormData()"
      ><i
          style="color:#FFF"
          class="el-icon-download"
        ></i></div>
      ><i class="el-icon-download"></i></div>
      <div style="height:580px">
        <el-table
@@ -742,9 +743,69 @@
      :title=" $t('synthesis.rangequery')"
      :visible.sync="dialogMapVisible"
      width="90%"
      top="10vh"
    >
      <div style="height:700px">
        <map-sdk v-if='showMapVisible'></map-sdk>
      </div>
    </el-dialog>
    <el-dialog
      :visible.sync="downloadListVisible"
      width="90%"
      top="10vh"
    >
      <div style="height:700px">
        <el-table
          :data="downloadTableData"
          style="width: 100%"
        >
          <el-table-column
            type="index"
            width="50"
            label="序号"
          >
          </el-table-column>
          <el-table-column
            property="descr"
            label="标题"
          > </el-table-column>
          <el-table-column
            property="name"
            label="文件名称"
          > </el-table-column>
          <el-table-column
            property="createName"
            label="出图人"
          > </el-table-column>
          <el-table-column
            property="createTime"
            :formatter="formatData"
            label="日期"
          >
          </el-table-column>
          <el-table-column
            label="操作"
            width="120"
          >
            <template slot-scope="scope">
              <el-link
                @click.native.prevent="downloadMap(scope.$index, scope.row)"
                :underline="false"
              >下载</el-link>
            </template>
          </el-table-column>
        </el-table>
        <el-pagination
          @size-change="downloadSizeChange"
          @current-change="downloadCurrentChange"
          :current-page="downloadPage.pageIndex"
          :page-sizes="[10, 20, 50, 100]"
          :page-size="downloadPage.pageSize"
          layout="total, sizes, prev, pager, next, jumper"
          :total="downloadPage.count"
        >
        </el-pagination>
      </div>
    </el-dialog>
    <iframe
@@ -776,7 +837,8 @@
  deleteMeta,
  dataLib_selectProject,
  dataLib_selectBaseType,
  dataLib_selectBusinessType
  dataLib_selectBusinessType,
  dataLib_selectPageCountForDownload,
} from '../../api/api';
import $ from 'jquery'
import { getToken } from '@/utils/auth';
@@ -810,6 +872,7 @@
      }
    };
    return {
      downloadListVisible: false,
      data_type: [],
      project_name: [],
      checkedDataType: [],
@@ -903,6 +966,13 @@
        pageIndex: 1,
        pageSize: 10,
        count: 0
      },
      downloadTableData: [],
      downloadPage: {
        pageIndex: 1,
        pageSize: 10,
        count: 0,
        name: null,
      }
    };
  },
@@ -953,6 +1023,46 @@
    },
  },
  methods: {
    downloadMap(index, rows) {
      //     var token = '?token=' + getToken();
      //  debugger
      //  var url = BASE_URL + '/dataLib/downloadFile' + token + '&guid=' + rows.guid+ '&pwd='+  rows.pwd
      var token = getToken()
      var url = BASE_URL + "/dataLib/downloadFile?token=" + token + "&guid=" + rows.guid + "&pwd=" + rows.pwd;
      $("#downFrame").attr("src", url).click();
    },
    downloadSizeChange(val) {
      this.downloadPage.pageIndex = 1;
      this.downloadPage.pageSize = val;
      this.getdownloadListData();
    },
    downloadCurrentChange(val) {
      this.downloadPage.pageIndex = val;
      this.getdownloadListData();
    },
    getdownloadList() {
      this.downloadPage = {
        pageIndex: 1,
        pageSize: 10,
        count: 0,
        name: null,
      }
      this.downloadListVisible = true;
      this.getdownloadListData();
    },
    async getdownloadListData() {
      const data = await dataLib_selectPageCountForDownload(this.downloadPage);
      if (data.code != 200) {
        this.downloadListVisible = false;
        return this.$message.error('下载列表获取失败');
      }
      this.downloadTableData = data.result;
      console.log(this.downloadTableData, data.result.length, this.downloadPage)
      this.downloadPage.count = data.count;
    },
    handleCheckedEntryNameChange(res) {
      if (this.checkedEntryName.indexOf(res.name) != -1) {
        if (res.name == "不限") {
@@ -1783,8 +1893,8 @@
          name: res.result[i].value
        })
      }
      for(var i in rest.result){
          str.push({
      for (var i in rest.result) {
        str.push({
          id: rest.result[i].key,
          name: rest.result[i].value
        })
@@ -1803,18 +1913,18 @@
<style lang="less" scoped>
.archive {
  width: 100%;
  height: 100%;
  margin: 0;
  overflow-y: auto;
  background: #353539;
  width: 98%;
  height: 95%;
  padding: 1%;
  position: relative;
  overflow: auto;
  .top_header {
    width: calc(100% -20px);
    height: 60px;
    display: flex;
    padding: 0 10px;
    justify-content: space-between;
    border-bottom: 1px solid white;
    .top_left {
      display: flex;
      align-items: center;
@@ -1827,19 +1937,11 @@
      line-height: 70px;
    }
    span {
      color: gray;
      margin: 0 5px;
    }
    /deep/.el-form--inline .el-form-item__content {
      line-height: 70px;
    }
    /deep/.el-form--inline .el-form-item__label {
      line-height: 70px;
    }
  }
  .box_item {
    width: calc(100% - 60px);
    border-bottom: 1px solid white;
    height: auto;
    padding: 10px 30px;
@@ -1847,24 +1949,22 @@
    display: flex;
    float: left;
    .box_left {
      color: white;
      height: 100%;
      line-height: 100%;
      width: 100px;
      text-align: center;
      color: white;
      font-size: 14px;
      font-weight: 400;
    }
    .box_cont {
      color: white;
      height: 100%;
      width: 80%;
      display: flex;
      flex-wrap: wrap;
      /* 设置多行对齐 */
      align-content: flex-start;
      color: white;
      font-size: 14px;
      font-weight: 400;
    }
@@ -1872,13 +1972,11 @@
      display: flex;
      justify-content: space-between;
      margin-left: 10px;
      color: white;
      font-size: 14px;
      align-self: flex-start;
      font-weight: 400;
      .box_menu {
        border: 1px solid white;
      }
      .box_menu:hover {
        border: 1px solid #009cff;
        color: #009cff;
@@ -1898,15 +1996,15 @@
      font-size: 14px;
      font-weight: 400;
      align-self: flex-start;
      color: white;
      ul {
        margin-left: 10px;
      }
      li {
        height: 42px;
        border-top: 1px solid white;
        border-left: 1px solid white;
        border-right: 1px solid white;
        border-top: 1px solid #dcdfe6;
        border-left: 1px solid #dcdfe6;
        border-right: 1px solid #dcdfe6;
        font-size: 14px;
        line-height: 42px;
        padding: 5px 15px;
@@ -1919,19 +2017,16 @@
      width: 100%;
      padding: 0px 20px;
      height: auto;
      color: white;
      .boxCard {
        margin: 1%;
        /deep/.el-card {
          background: #303030 !important;
          color: #fff !important;
        }
        .cardItem {
          margin-bottom: 10px;
        }
      }
      li {
        border-bottom: 1px solid white;
        border-bottom: 1px solid #dcdfe6;
        padding: 10px 0px;
      }
      li:hover {
@@ -1945,51 +2040,15 @@
    display: flex;
    justify-content: center;
  }
  .box_div {
  .menu_div {
    padding: 5px 15px;
    margin-left: 10px;
    display: flex;
    align-items: center;
    display: flex;
    .menuActive {
      color: #409eff;
    }
  }
  .primaries {
    background: linear-gradient(180deg, #002992, #080472);
    border: 1px solid #000000;
    box-shadow: 0px 3px 5px 0px rgba(0, 0, 0, 0.21);
    color: white;
  }
  .elLink {
    color: white;
  }
  .infoBox {
    width: 500px;
    position: absolute;
    z-index: 100;
    top: 25%;
    right: 25%;
    background: #303030;
    color: #fff;
    .el-card {
      background-color: transparent;
      color: #fff;
      span {
        color: #fff;
        font-size: 16px;
        font-weight: 600;
      }
    }
    .contentBox {
      margin: 0 aotu 10px;
      height: 500px;
      overflow: auto;
      p {
        // background-color: #bfa;
        // margin-bottom: 10px;
        font-size: 14px;
      }
    }
  }
@@ -1998,169 +2057,19 @@
    top: 20%;
    left: 40%;
    padding: 20px;
    background: #303030;
    width: 30%;
    border: 1px solid gray;
    border-radius: 10px;
    color: white;
  }
  .pagination_box {
    /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;
    }
  }
  /deep/ .el-select .el-input__inner {
    border-color: #fff !important;
  }
  /deep/.el-checkbox {
    color: #ffff;
    line-height: 25px;
  }
}
.elLink {
  color: white !important;
}
.el-icon-folder-opened {
  color: white;
    width: 30%;
    border-radius: 10px;
  }
}
.contentBox {
  height: 60vh;
  overflow: auto;
  color: white;
}
/deep/ .el-dialog {
  background: #303030;
  z-index: 99;
}
.downloadBox {
  z-index: 999;
}
/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;
}
/deep/ .el-dialog__body {
  padding: 10px;
}
/*修改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: 5px;
  }
  .el-table__body-wrapper::-webkit-scrollbar {
    width: 5px;
    /*滚动条宽度*/
    height: 5px;
    /*滚动条高度*/
  }
  /*定义滚动条轨道 内阴影+圆角*/
  .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-input__inner {
  background-color: transparent !important ;
  color: #fff;
  border: 1px solid white !important;
}
/deep/.el-form-item__label {
  color: white;
}
/deep/.el-dialog__wrapper {
  overflow: hidden;
}
/deep/.el-textarea__inner {
  background: transparent;
  border-color: #fff !important;
  color: white;
  height: 70px !important;
}
/deep/.el-form-item {
  margin-bottom: 0px;
}
/deep/.el-form-item__content {
  line-height: 70px;
}
/deep/.el-textarea.is-disabled .el-textarea__inner {
  background: transparent;
}
</style>