| | |
| | | if (setting.supModule && !BID) { |
| | | notification.warning({ |
| | | top: 92, |
| | | message: dict['sup_key_req'] || '需要上级主键值!', |
| | | message: setting.supModTip || dict['sup_key_req'] || '需要上级主键值!', |
| | | duration: 5 |
| | | }) |
| | | } else { |
| | |
| | | if (btn.dataM === 'true') { |
| | | param.dataM = sessionStorage.getItem('dataM') === 'true' ? 'Y' : '' |
| | | } |
| | | |
| | | } else if (btn.intertype === 'outer' && !btn.innerFunc) { // 使用外部函数 |
| | | param = this.getExcelCustomParam(viewParam.orderBy, viewParam.search, true, pageIndex, pageSize) |
| | | |
| | |
| | | * @description Excel 生成 |
| | | */ |
| | | exportExcel = (data = [], ErrCode, msg, search) => { |
| | | const { btn } = this.props |
| | | const { btn, BID } = this.props |
| | | const { dict } = this.state |
| | | |
| | | let imgCol = false |
| | |
| | | }) |
| | | |
| | | return |
| | | } |
| | | } |
| | | |
| | | let excelName = `${btn.verify.excelName || btn.$menuName || ''}${moment().format('YYYYMMDDHHmmss')}` |
| | | if (btn.verify.excelName && /@.*@/.test(btn.verify.excelName)) { |
| | | excelName = btn.verify.excelName.replace(/@bid@/ig, BID) |
| | | excelName = excelName.replace(/@getdate@/ig, moment().format('YYYYMMDDHHmmss')) |
| | | if (data[0]) { |
| | | Object.keys(data[0]).forEach(key => { |
| | | let reg = new RegExp('@' + key + '@', 'ig') |
| | | excelName = excelName.replace(reg, data[0][key]) |
| | | }) |
| | | } |
| | | } |
| | | |
| | |
| | | table.push(_row) |
| | | }) |
| | | |
| | | this.table2excel(column, table) |
| | | this.table2excel(column, table, excelName) |
| | | |
| | | this.execSuccess({ErrCode: ErrCode || 'S', message: msg || dict['exc_success'] || '导出成功!'}) |
| | | } else { |
| | |
| | | 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 + '.xlsx') |
| | | |
| | | this.execSuccess({ErrCode: ErrCode || 'S', message: msg || dict['exc_success'] || '导出成功!'}) |
| | | } |
| | |
| | | } |
| | | } |
| | | |
| | | table2excel = (column, data) => { |
| | | table2excel = (column, data, excelName) => { |
| | | let thead = column.reduce((result, item) => { |
| | | return result + `<th>${item.title}</th>` |
| | | }, '') |
| | |
| | | // 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 + '.xls' |
| | | document.body.appendChild(link) |
| | | link.click() |
| | | document.body.removeChild(link) |
| | |
| | | |
| | | let _setting = {} |
| | | let _orderBy = orderBy || '' |
| | | |
| | | if (btn.verify.dataType === 'custom') { |
| | | _setting.uuid = btn.uuid |
| | | _setting.interType = 'system' |
| | | _setting.arr_field = [] |
| | | |
| | | btn.verify.columns.forEach(col => { |
| | |
| | | |
| | | if (!_setting.execute) { |
| | | _setting.dataresource = '' |
| | | } |
| | | |
| | | if (/\s/.test(_setting.dataresource)) { |
| | | _setting.dataresource = '(' + _setting.dataresource + ') tb' |
| | | } |
| | | |
| | | let _customScript = '' |
| | |
| | | _setting.tailScript = _tailScript // 后置自定义脚本 |
| | | |
| | | _setting.laypage = pagination |
| | | _setting.custompage = /@pageSize@|@orderBy@|@mk_total/i.test(_setting.dataresource + _setting.customScript) |
| | | _setting.custompage = false |
| | | |
| | | if (/order\s+by\s+sort_id\s*$/i.test(_setting.dataresource)) { |
| | | _setting.custompage = true |
| | | } else if (/@pageSize@|@orderBy@|@mk_total/i.test(_setting.dataresource + _setting.customScript)) { |
| | | _setting.custompage = true |
| | | } |
| | | |
| | | if (/\s/.test(_setting.dataresource)) { |
| | | _setting.dataresource = '(' + _setting.dataresource + ') tb' |
| | | } |
| | | |
| | | _setting.queryType = btn.verify.queryType |
| | | _setting.$name = btn.logLabel |
| | |
| | | _setting.laypage = pagination |
| | | _setting.arr_field = _setting.all_field || _setting.arr_field |
| | | |
| | | if (setting.sub_field || setting.laypage !== pagination) { |
| | | _setting.uuid = btn.uuid |
| | | } |
| | | |
| | | delete _setting.sub_field |
| | | } |
| | | |
| | |
| | | primaryId = primaryId ? 'excel:' + primaryId : '' |
| | | } |
| | | |
| | | let param = UtilsDM.getDefaultQueryParam(_setting, search, _orderBy, pageIndex, pageSize, primaryId, BID) |
| | | let param = UtilsDM.getQueryDataParams(_setting, search, _orderBy, pageIndex, pageSize, BID, primaryId) |
| | | |
| | | param.DateCount = '' |
| | | |
| | | // 数据管理权限 |
| | | if (sessionStorage.getItem('dataM') === 'true') { |
| | | param.dataM = 'Y' |
| | | } |
| | | if (BID) { |
| | | param.BID = BID |
| | | } |
| | | delete param.DateCount |
| | | |
| | | return param |
| | | } |
| | |
| | | loading: false |
| | | }) |
| | | |
| | | let tabId = '' |
| | | if (btn.refreshTab && btn.refreshTab.length > 0) { |
| | | tabId = btn.refreshTab[btn.refreshTab.length - 1] |
| | | } |
| | | |
| | | if (tabId && btn.$MenuID === tabId) { // 刷新当前菜单时,停止其他操作 |
| | | MKEmitter.emit('reloadMenuView', tabId, btn.urlPar === 'true') |
| | | return |
| | | } |
| | | |
| | | if (btn.execSuccess === 'closepoptab') { |
| | | MKEmitter.emit('popclose') |
| | | } else if (btn.execSuccess !== 'never') { |
| | |
| | | } else { |
| | | MKEmitter.emit('reloadData', btn.syncComponentId) |
| | | } |
| | | } |
| | | |
| | | if (tabId) { |
| | | MKEmitter.emit('reloadMenuView', tabId, btn.urlPar === 'true') |
| | | } |
| | | |
| | | if (btn.switchTab && btn.switchTab.length > 0) { |
| | |
| | | if (btn.execError === 'closepoptab') { |
| | | MKEmitter.emit('popclose') |
| | | } else if (btn.execError !== 'never') { |
| | | let tabId = '' |
| | | if (btn.refreshTab && btn.refreshTab.length > 0) { |
| | | tabId = btn.refreshTab[btn.refreshTab.length - 1] |
| | | } |
| | | if (tabId && btn.$MenuID === tabId) { // 刷新当前菜单时,停止其他操作 |
| | | MKEmitter.emit('reloadMenuView', tabId, btn.urlPar === 'true') |
| | | return |
| | | } |
| | | |
| | | MKEmitter.emit('refreshByButtonResult', btn.$menuId, btn.execError, btn, '', []) |
| | | |
| | | if (btn.syncComponentId) { |
| | |
| | | MKEmitter.emit('reloadData', btn.syncComponentId) |
| | | } |
| | | } |
| | | |
| | | if (tabId) { |
| | | MKEmitter.emit('reloadMenuView', tabId, btn.urlPar === 'true') |
| | | } |
| | | } |
| | | |
| | | if (btn.execError === 'popclose' && btn.$tabId) { // 标签关闭刷新 |