ludc
2023-07-28 2badd826f8e96f1b9ed073133bdbb8c75ed02ff7
Source/UBCS-WEB/src/components/Master/MasterTransfer.vue
@@ -18,13 +18,19 @@
    :data="data">
  </el-transfer>
  </div>
  <div style="display: flex;justify-content: flex-end;">
    <el-button size="small" plain type="success" @click="handleExcel">确定</el-button>
    <el-button size="small" plain >取消</el-button>
  </div>
</el-dialog>
</template>
<script>
import {exportCode} from '@/api/GetItem'
import func from "@/util/func";
export default {
name: "MasterTransfer",
  props:['visible','tableHeadData','codeClassifyOid'],
  props:['visible','tableHeadData','codeClassifyOid','tableData','selectRow'],
  data(){
    return {
      data: [],
@@ -39,17 +45,11 @@
      option:{
        title: '文档标题',
        column: [{
          label: '多级表头',
          label: '主数据',
          prop: 'header',
          children: []
        }],
        data: [{
          title1: "测试数据1",
          title2: "测试数据2"
        }, {
          title1: "测试数据2",
          title2: "测试数据2"
        }]
        data: []
      }
    };
  },
@@ -61,7 +61,9 @@
    //表头数据 用来渲染穿梭框
    tableHeadData:{
      handler(newval,oldval){
        console.log(newval)
       if(newval){
         //excel表头数据转换
         this.tableHeadFindData=newval.map(obj => obj.label);
         this.tableHeadFindData.forEach((city, index) => {
           this.data.push({
@@ -69,13 +71,31 @@
             key: index,
           });
         });
         return this.data;
         //excel表格数据转换
         this.option.column[0].children=newval.map(obj => {
           return {
             label: obj.label,
             prop: obj.prop
           }
         })
       }
      }
},
    tableData(){
      // 将值里面的true或false改变为是或否
      this.option.data = this.tableData.map(obj => {
          for (let prop in obj) {
            if (obj[prop] === "true") {
              obj[prop] = "是";
            } else if (obj[prop] === "false") {
              obj[prop] = "否";
            }
          }
        return obj;
      });
    },
    codeClassifyOid:{
      handler(newval,oldval){
        console.log('daochu',newval,oldval)
      }
    }
  },
@@ -83,23 +103,45 @@
  },
  mounted() {
  this.ExportRend()
  },
  methods:{
    //关闭页面
    recoverPage(){
      this.$emit('update:visible', false);
    },
    //导出表格数据转换表头信息
    ExportRend(){
      this.tableExportData=this.tableHeadData.map(obj => {
        return {
          label: obj.label,
          prop: obj.prop
    handleExcel(){
      // this.$Export.excel({
      //   title: this.option.title,
      //   columns: this.option.column,
      //   data: this.option.data
      // });
      if(this.radio === 0){
        if(this.selectRow.length<=0){
          this.$message.warning('请选择要导出的模板')
        }else {
          //已选择多选
          const selectList=[]
          //已选择属性
          let exportArr={}
          const ids = this.selectRow.map(item => item.oid).join(',')
          this.selectRow.forEach(item=>{
            selectList.push(
             item.oid
            )
          })
          this.value.map(index => this.tableHeadData[index].prop).forEach((item, index) => {
            exportArr[`attrIdIndexMap[${index}]`] = item
          })
          exportCode({codeClassifyOid:this.codeClassifyOid,'conditionMap[oid]':ids,...exportArr}).then(res=>{
            // console.log('res',res)
            if(res){
              func.downloadFileByBlob(res);
            }
          })
        }
      })
      console.log(this.tableExportData)
    }
      };
    },
  }
}
</script>