管道基础大数据平台系统开发-【前端】-新系統界面
1
Surpriseplus
2022-11-28 ac687d46631445a2ad0efebe843c300535277dec
src/views/datamanage/dataLoader.vue
@@ -137,6 +137,11 @@
              type="info"
              >{{ $t('common.reset') }}</el-button
            >
              <el-button @click="setWarehouseDel"
              icon="el-icon-folder-delete"
              type="danger"
              >{{ $t('common.delete') }}</el-button
            >
          </el-form-item>
        </el-form>
      </div>
@@ -146,7 +151,12 @@
        style="width:99%"
        height="92%"
         @selection-change="handleDelteChange"
 >
   <el-table-column
      type="selection"
      width="55">
    </el-table-column>
        <el-table-column
          align="center"
          type="index"
@@ -194,33 +204,39 @@
        />
         <el-table-column
          align="center"
          prop="tab"
          :label="$t('dataManage.dataUpObj.tableName')"
          fixed
        />
        >
         <template slot-scope="scope">
      <a @click="detail(scope.row)"  >{{
          scope.row.tab
        }}</a>
    </template>
        </el-table-column>
         <el-table-column
          align="center"
          prop="rows"
          :label="$t('common.lineNuber')"
          fixed
        />
         <el-table-column
          align="center"
          prop="desc"
          :label="$t('dataManage.dataUpObj.describe')"
          fixed
        />
        <el-table-column
          align="center"
          prop="uname"
          :label="$t('dataManage.vmobj.createonuser')"
          fixed
        />
         <el-table-column
          align="center"
          prop="createTime"
          :label="$t('dataManage.vmobj.createontime')"
          fixed
              :formatter="changetimeFile"
        />
    </el-table>
@@ -283,6 +299,46 @@
    <el-button class="primary" @click="setInsrtWareTable">确 定</el-button>
  </span>
</el-dialog>
<el-dialog
  :title="$t('common.details')"
  :visible.sync="dialogVisible"
   width="70%"
   >
   <div style="height:600px">
     <el-table
            ref="filterTable"
            :data="dbTableData"
            height="90%"
            border
          style="width: 100%"
          >
            <el-table-column width="60" type="index" :label="$t('common.index')" />
            <el-table-column
              v-for="(item, index) in attributeData"
              :key="index"
              :label="item.alias"
              :prop="item.field"
              show-overflow-tooltip
              align="center"
            ></el-table-column>
          </el-table>
            <div style="margin-top: 10px" class="pagination_box">
    <el-pagination
          @size-change="handleLoaderSizeChange"
          @current-change="handleLoaderCurrentChange"
          :current-page="listLoader.pageIndex"
          :page-sizes="[10, 20, 30, 40]"
          :page-size="listLoader.pageSize"
          layout="total, sizes, prev, pager, next, jumper"
          :total="count1"
        >
        </el-pagination>
      </div>
   </div>
</el-dialog>
  </div>
</template>
@@ -297,10 +353,13 @@
  dataLoader_selectVerByDirid,
  dataLoader_selectFiles,
  dataUploadDeleteFiles,
  dataUploadInsertFiles,
  dataLoader_InsertFiles,
  dataLoader_selectMappers,
  dataLoader_SelectTabs,
  dataLoader_selectByPageForUpload
  dataLoader_selectByPageForUpload,
dataLoader_deleteMetas,
dataLoader_selectFields,
dataLoader_selectDbData
} from '../../api/api';
export default {
  name: 'dataUpdata',
@@ -357,6 +416,16 @@
      activeName2: '',
      activeName3: '',
      wareTableFlag: null,
      multipleDelete:[],
      dialogVisible:false,
      attributeData:[],
        listLoader:{
        id:null,
        pageSize:1,
        pageSize:10,
      },
      count1:0,
      dbTableData:[],
    };
  },
@@ -394,10 +463,50 @@
      },
      deep: true,
      immediate: true,
    },
  },
  methods: {
  async detail(res){
      var val = res.tab.split(".");
      const data = await dataLoader_selectFields({
        ns:val[0],
        tab:val[1]
      })
      if(data.code != 200){
          this.$message.error('字段列表调用失败');
        return
      }
      this.dialogVisible = true;
      this.attributeData =data.result;
      this.listLoader={
        id:res.id,
        pageIndex:1,
        pageSize:10,
      }
      this.getDataLoaderSelectDbData();
    },
  async getDataLoaderSelectDbData (){
       const data1 = await dataLoader_selectDbData(this.listLoader);
     if(data1.code != 200){
          this.$message.error('字段列表调用失败');
        return
      }
 this.dbTableData =data1.result;
    },
       handleLoaderSizeChange(val){
      this.listLoader.pageIndex= 1;
      this.listLoader.pageSize =val;
            this.getDataLoaderSelectDbData();
    },
handleLoaderCurrentChange(val){
  this.listLoader.pageIndex= val;
   this.getDataLoaderSelectDbData();
},
      changetimeFile(res){
//shijianchuo是整数,否则要parseInt转换
@@ -434,6 +543,27 @@
              name:this.formWarehousing.name,
            }
            this.getAllWareTable();
    },
   async setWarehouseDel(){
var std = [];
          for (var i in this.multipleDelete) {
            std.push(this.multipleDelete[i].id);
          }
          const res = await dataLoader_deleteMetas({ids: std.toString() })
          if(res.code != 200){
            this.$message.error('删除失败');
          }else{
               this.$message({
          message: '删除成功',
          type: 'success'
        });
        this.listData.pageIndex=1;
        this.listData.pageSize = 10;
           this.getAllWareTable();
          }
    },
    handleDelteChange(val){
    this.multipleDelete = val;
    },
    setWarehouseReset(){
     this.formWarehousing.name='';
@@ -486,10 +616,11 @@
   async setInsrtWareTable(){
      var obj = {
                  metaEntity: this.formInline,
                  fileEntities: this.tableWareThree
                      fileEntities: this.tableData,
                  tabEntities: this.tableWareThree
                };
            const res = await dataLoader_InsertFiles(JSON.stringify(obj));
            const res = await dataUploadInsertFiles(JSON.stringify(obj));
             if (res.code != 200) {
        this.$message.error('数据入库失败');
        return;
@@ -558,28 +689,34 @@
      var value1 = this.tableWareThree[res];
      value1.entity = null;
        value1.tabDesc= null;
      this.tableWareOne.push(value1);
        if(this.tableWareOne.indexOf(value1)!=-1 ){
        }else{
            this.tableWareOne.push(value1);
      this.tableWareThree.splice(res, 1)
      this.activeName = '';
      this.activeName2 = '';
      this.activeName3 = '';
        }
    },
    setWareTableChangeRight() {
      this.wareSelectOne.entity = this.wareSelectTwo.entity;
          this.wareSelectOne.tabDesc = this.wareSelectTwo.tabDesc;
  if(this.tableWareThree.indexOf(this.wareSelectOne) != -1){
      this.tableWareThree.push(this.wareSelectOne)
  }else{
 this.tableWareThree.push(this.wareSelectOne)
      this.tableWareOne.forEach((value, index, array) => {
        if (value.tab == this.wareSelectOne.tab) {
          this.tableWareOne.splice(index, 1)
        }
      })
   this.activeName = '';
      this.activeName2 = '';
      this.activeName3 = '';
  }
    },
    singleElection(row) {
      this.wareSelectOne = row;
@@ -650,7 +787,7 @@
      //             fileEntities: this.multipleSelection
      //           };
      //       const res = await dataUploadInsertFiles(JSON.stringify(obj));
      //       const res = await dataLoader_InsertFiles(JSON.stringify(obj));
      //        if (res.code != 200) {
      //       this.$message.error('文件入库失败');
@@ -698,11 +835,14 @@
          this.getFileLength();
          alert("code = " + rs.code + ", msg = " + rs.msg + ", result = " + rs.result);
           this.$message({
          message: '数据上传成功',
          type: 'success'
        });
        },
        error: (rs) => {
          alert("上传文件失败!");
          this.$message.error('数据上传失败');
        }
      });
@@ -936,42 +1076,7 @@
          background-color: #216fe6;
        }
      }
      .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;
        }
      }
    }
    .primary {
      background: #409eff;
@@ -1131,5 +1236,41 @@
    /deep/ .el-tabs__item {
    color: #409eff;
  }
     .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;
        }
      }
}
</style>