king
昨天 e293f4b0edc825382a57e91f9288e387ca53e37c
2025-06-15
1个文件已修改
21 ■■■■ 已修改文件
src/tabviews/zshare/actionList/exceloutbutton/index.jsx 21 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/tabviews/zshare/actionList/exceloutbutton/index.jsx
@@ -437,7 +437,7 @@
   * @description Excel 生成
   */
  exportExcel = (data = [], ErrCode, msg, search) => {
    const { btn } = this.props
    const { btn, BID } = this.props
    const { dict } = this.state
    
    let imgCol = false
@@ -521,6 +521,17 @@
        })
        
        return
      }
    }
    let excelName = btn.verify.excelName || ''
    if (/@.*@/.test(excelName)) {
      excelName = excelName.replace(/@bid@/ig, BID)
      if (data[0]) {
        Object.keys(data[0]).forEach(key => {
          let reg = new RegExp('@' + key + '@', 'ig')
          excelName = excelName.replace(reg, data[0][key])
        })
      }
    }
    
@@ -608,7 +619,7 @@
          table.push(_row)
        })
        this.table2excel(column, table)
        this.table2excel(column, table, btn, excelName)
        this.execSuccess({ErrCode: ErrCode || 'S', message: msg || dict['exc_success'] || '导出成功!'})
      } else {
@@ -768,7 +779,7 @@
        const wb = XLSX.utils.book_new()
        XLSX.utils.book_append_sheet(wb, ws, btn.verify.sheet || 'Sheet1')
  
        XLSX.writeFile(wb, `${btn.verify.excelName || btn.$menuName || ''}${moment().format('YYYYMMDDHHmmss')}.xlsx`)
        XLSX.writeFile(wb, `${excelName || btn.$menuName || ''}${moment().format('YYYYMMDDHHmmss')}.xlsx`)
  
        this.execSuccess({ErrCode: ErrCode || 'S', message: msg || dict['exc_success'] || '导出成功!'})
      }
@@ -778,7 +789,7 @@
    }
  }
  table2excel = (column, data) => {
  table2excel = (column, data, btn, excelName) => {
    let thead = column.reduce((result, item) => {
      return result + `<th>${item.title}</th>`
    }, '')
@@ -812,7 +823,7 @@
    // let url = 'data:application/vnd.ms-excel;base64,' + window.btoa(unescape(encodeURIComponent(html)))
    let link = document.createElement('a')
    link.href = url
    link.download = `${this.props.btn.$menuName || ''}${moment().format('YYYYMMDDHHmmss')}.xls`
    link.download = `${excelName || btn.$menuName || ''}${moment().format('YYYYMMDDHHmmss')}.xls`
    document.body.appendChild(link)
    link.click()
    document.body.removeChild(link)