songshankun
2023-09-28 5cf7d1f0b8d692f02130cb3c0ab2c114da28fa51
feat: 销售总单页列表配置列显隐控制; 修复列表组件行合并未判空的问题
2个文件已修改
50 ■■■■ 已修改文件
src/components/makepager/TableCommonView.vue 12 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/sales/masterOrder/index.vue 38 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/components/makepager/TableCommonView.vue
@@ -216,10 +216,16 @@
              .querySelector(".el-table__footer")
            var cell = current.rows[0].cells
            for (let i = 0; i < this.showSummary.mergeNumber; i++) {
              cell[i].style.display = "none"
              cell[i] && cell[i].style && (cell[i].style.display = "none")
            }
            cell[this.showSummary.mergeNumber].classList.remove("is-left")
            cell[this.showSummary.mergeNumber].colSpan = this.showSummary.mergeNumber.toString()
            if (cell[this.showSummary.mergeNumber]){
              if (cell[this.showSummary.mergeNumber].classList){
                cell[this.showSummary.mergeNumber].classList.remove("is-left")
              }
              if (cell[this.showSummary.mergeNumber].colSpan){
                cell[this.showSummary.mergeNumber].colSpan = this.showSummary.mergeNumber.toString()
              }
            }
          }
        })
      }
src/views/sales/masterOrder/index.vue
@@ -33,6 +33,7 @@
              @selClientClick="selClientClick"
              @selCommonClick="selCommonClick"
              @getSelectArray="getSelectArray"
              @selTableCol="selTableCol"
          >
            <template slot="tableButton">
              <el-table-column label="操作" width="90">
@@ -130,7 +131,17 @@
      searchSel: {
        value: "number",
        label: "单据编号"
      }
      },
      tableColumn: [
        { label: "单据编号", prop: "number", min: 100, isCommonClick: true, default: true }, // 单据编号
        { label: "客户名称", prop: "client_name", min: 120, isClientClick: true }, // 客户名称
        { label: "服务开始时间", prop: "start_time" }, // 服务开始时间
        { label: "服务截止时间", prop: "end_time" }, // 服务截止时间
        { label: "合同金额", prop: "money" }, // 合同金额
        { label: "负责人", prop: "member_name" } // 负责人
        // { label: "审批状态", prop: "approvalStatus" } // 审批状态
      ],
      showCol:["单据编号", "客户名称", "服务开始时间", "服务截止时间", "合同金额", "负责人"]
    }
  },
  created() {
@@ -148,16 +159,11 @@
    setTable() {
      this.tableList = {
        tableInfomation: [],
        tableColumn: [
          { label: "单据编号", prop: "number", min: 100, isCommonClick: true }, // 单据编号
          { label: "客户名称", prop: "client_name", min: 120, isClientClick: true }, // 客户名称
          { label: "服务开始时间", prop: "start_time" }, // 服务开始时间
          { label: "服务截止时间", prop: "end_time" }, // 服务截止时间
          { label: "合同金额", prop: "money" }, // 合同金额
          { label: "负责人", prop: "member_name" } // 负责人
          // { label: "审批状态", prop: "approvalStatus" } // 审批状态
        ]
        allcol: [],
        showcol: this.showCol,
        tableColumn:this.setColumnVisible(this.showCol)
      }
      this.tableList.allcol = this.tableList.tableColumn.filter(ele=>!ele.default).map(ele=>ele.label);
      this.searchOptions = []
      for (let i = 0; i < this.tableList.tableColumn.length; i++) {
        const label = this.tableList.tableColumn[i].label
@@ -165,6 +171,18 @@
        this.searchOptions.push({ value: value, label: label })
      }
    },
    setColumnVisible(showCol){
      return  this.tableColumn.map(ele=>{
        return {
          ...ele,
          isShowColumn:showCol.includes(ele.label)
        }
      })
    },
    selTableCol(val) {
      this.showcol = val;
      this.tableList.tableColumn = this.setColumnVisible(val);
    },
    // 请求数据
    async getData() {
      this.loading = true