From 3d8cb6c1787dec23cbc85d4b262fd1f00654f891 Mon Sep 17 00:00:00 2001 From: king <18310653075@163.com> Date: 星期二, 18 二月 2020 01:33:07 +0800 Subject: [PATCH] 2020-02-18 --- src/tabviews/subtable/index.jsx | 62 +++++-------------------------- 1 files changed, 10 insertions(+), 52 deletions(-) diff --git a/src/tabviews/subtable/index.jsx b/src/tabviews/subtable/index.jsx index a88f0f8..8d1c0ca 100644 --- a/src/tabviews/subtable/index.jsx +++ b/src/tabviews/subtable/index.jsx @@ -506,65 +506,22 @@ this.props.handleMainTable() } else if (btn.popClose === 'subgrid' && type === 'pop') { this.reloadtable() - } else if (type === 'excelOut') { - this.handleDefaultExcelout(btn) } } /** - * @description 浣跨敤榛樿瀛樺偍杩囩▼ sPC_Get_TableData 瀵煎嚭excel琛ㄦ牸 + * @description 瀵煎嚭Excel鏃讹紝鑾峰彇椤甸潰鎼滅储鎺掑簭绛夊弬鏁� */ - handleDefaultExcelout = (btn) => { - const { MenuName } = this.props - const { arr_field, orderBy, search, setting, config } = this.state + getexceloutparam = () => { + const { Tab } = this.props + const { arr_field, orderBy, search, setting} = this.state - let _arr_labels = [] // 鍒楀悕绉伴泦 - let _arr_label_field = [] // 鍒楀悕绉板瓧娈甸泦 - - config.columns.forEach(col => { - if (col.field) { - _arr_labels.push(col.label) - _arr_label_field.push(`${col.field} as ${col.label}`) - } - }) - - _arr_labels = _arr_labels.join(',') - _arr_label_field = _arr_label_field.join(',') - - let _search = Utils.joinMainSearchkey(search) - _search = _search ? 'where (' + _search + ')' : '' - // 鑾峰彇鍒楄〃鏁版嵁 - let param = { - func: 'sPC_Get_TableData', - obj_name: 'data', - arr_field: _arr_labels, - BID: this.props.BID, - appkey: window.GLOB.appkey || '' + return { + arr_field: arr_field, + orderBy: orderBy || setting.order, + search: search, + menuName: Tab.label } - - let _orderBy = orderBy || setting.order - let _dataresource = setting.dataresource - - if (/\s/.test(_dataresource)) { - _dataresource = '(' + _dataresource + ') tb' - } - - let LText = `select ${_arr_label_field} from (select ${arr_field} ,ROW_NUMBER() over(order by ${_orderBy}) as rows from ${_dataresource} ${_search}) tmptable order by tmptable.rows` - - param.LText = Utils.formatOptions(LText) - param.timestamp = moment().format('YYYY-MM-DD HH:mm:ss') + '.000' - param.secretkey = Utils.encrypt(param.LText, param.timestamp) - param.DateCount = '' - - let name = `${MenuName}${moment().format('YYYYMMDDHHmmss')}.xlsx` - - Api.getExcelOut(param, name).then(res => { - if (res && res.status === false) { - this.refs.subButton.execError(res, btn) - } else { - this.refs.subButton.execSuccess(btn) - } - }) } /** @@ -656,6 +613,7 @@ ContainerId={this.props.ContainerId} refreshdata={this.refreshbyaction} triggerPopview={this.triggerPopview} + getexceloutparam={this.getexceloutparam} gettableselected={this.gettableselected} /> } -- Gitblit v1.8.0