From 7b0dbecd1d6155d26ec67be0a47a16264c738c85 Mon Sep 17 00:00:00 2001 From: king <18310653075@163.com> Date: 星期二, 09 五月 2023 14:48:10 +0800 Subject: [PATCH] 2023-05-09 --- src/templates/sharecomponent/actioncomponent/index.jsx | 484 ++++++++++++++++++++++++----------------------------- 1 files changed, 218 insertions(+), 266 deletions(-) diff --git a/src/templates/sharecomponent/actioncomponent/index.jsx b/src/templates/sharecomponent/actioncomponent/index.jsx index 6ef56de..b871c62 100644 --- a/src/templates/sharecomponent/actioncomponent/index.jsx +++ b/src/templates/sharecomponent/actioncomponent/index.jsx @@ -1,49 +1,48 @@ import React, {Component} from 'react' import PropTypes from 'prop-types' import { is, fromJS } from 'immutable' -import { Icon, Tooltip, Modal, notification, Button } from 'antd' +import { Modal, notification, Button } from 'antd' import moment from 'moment' import Api from '@/api' -import options from '@/store/options.js' -import Utils from '@/utils/utils.js' -import DevUtils from '@/utils/devutils.js' -import zhCN from '@/locales/zh-CN/model.js' -import enUS from '@/locales/en-US/model.js' +import Utils, { FuncUtils } from '@/utils/utils.js' import { getActionForm } from '@/templates/zshare/formconfig' +import asyncSpinComponent from '@/utils/asyncSpinComponent' import ActionForm from './actionform' -import VerifyCard from '@/templates/zshare/verifycard' import CreateFunc from '@/templates/zshare/createfunc' import CreateInterface from '@/templates/zshare/createinterface' -import VerifyPrint from './verifyprint' -import VerifyExcelIn from './verifyexcelin' -import VerifyExcelOut from './verifyexcelout' +import { updateForm } from '@/utils/utils-update.js' import DragElement from './dragaction' +import MKEmitter from '@/utils/events.js' import './index.scss' const { confirm } = Modal +const VerifyCard = asyncSpinComponent(() => import('@/templates/zshare/verifycard')) +const VerifyPrint = asyncSpinComponent(() => import('@/templates/sharecomponent/actioncomponent/verifyprint')) +const VerifyExcelIn = asyncSpinComponent(() => import('@/templates/sharecomponent/actioncomponent/verifyexcelin')) +const VerifyMegvii = asyncSpinComponent(() => import('@/templates/sharecomponent/actioncomponent/verifymegvii')) +const VerifyExcelOut = asyncSpinComponent(() => import('@/templates/sharecomponent/actioncomponent/verifyexcelout')) class ActionComponent extends Component { static propTpyes = { type: PropTypes.string, // 鑿滃崟绫诲瀷锛屼富琛ㄦ垨瀛愯〃 menu: PropTypes.object, // 鑿滃崟淇℃伅锛堣彍鍗昳d锛岃彍鍗曞弬鏁帮紝鑿滃崟鍚嶇О锛� config: PropTypes.object, // 鑿滃崟閰嶇疆淇℃伅 - pasteContent: PropTypes.object, // 绮樿创閰嶇疆淇℃伅 - usefulFields: PropTypes.array, // 鑷畾涔夊嚱鏁板彲鐢ㄥ瓧娈� tabs: PropTypes.array, // 鎵�鏈夋爣绛� setSubConfig: PropTypes.func, // 璁剧疆瀛愰厤缃俊鎭� updateaction: PropTypes.func // 鑿滃崟閰嶇疆鏇存柊 } state = { - dict: localStorage.getItem('lang') !== 'en-US' ? zhCN : enUS, card: null, // 缂栬緫涓厓绱� formlist: null, // 琛ㄥ崟淇℃伅 actionlist: null, // 鎸夐挳缁� copying: false, // 鎸夐挳澶嶅埗涓� visible: false, // 妯℃�佹鎺у埗 - profVisible: false // 楠岃瘉淇℃伅妯℃�佹 + printTemps: [], // 鍗曟嵁鎵撳嵃妯℃澘 + profVisible: false, // 楠岃瘉淇℃伅妯℃�佹 + record: null } /** @@ -55,18 +54,73 @@ }) } - /** - * @description 鐩戝惉鍒版寜閽鍒舵椂锛岃Е鍙戞寜閽紪杈� - */ - UNSAFE_componentWillReceiveProps (nextProps) { + componentDidMount () { + this.getBillPrintTemp() + // MKEmitter.addListener('revert', this.revert) + MKEmitter.addListener('pasteButton', this.pasteButton) + } + + // revert = () => { + // this.setState({ + // actionlist: fromJS(this.props.config.action).toJS() + // }) + // } + + pasteButton = (MenuId, btn) => { + const { config } = this.props const { actionlist } = this.state - if (nextProps.pasteContent && nextProps.pasteContent.copyType === 'action') { - this.setState({actionlist: [...actionlist, nextProps.pasteContent]}) - this.handleAction(nextProps.pasteContent) - } else if (!is(fromJS(nextProps.config.action), fromJS(this.props.config.action)) && !is(fromJS(nextProps.config.action), fromJS(actionlist))) { - this.setState({actionlist: fromJS(nextProps.config.action).toJS()}) + if (MenuId !== config.uuid) return + + this.setState({ + actionlist: [...actionlist, btn], + }, () => { + this.handleAction(btn) + }) + } + + getBillPrintTemp = () => { + let _sql = `select ID,Images,PrintTempNO+PrintTempName as PN from sPrintTemplate + where appkey= @appkey@ and Deleted=0 and typechartwo='web_print' + union select ID,Images,a.PrintTempNO+PrintTempName as PN + from (select * from sPrintTemplate where appkey= '' and Deleted=0 and typechartwo='web_print') a + left join (select PrintTempNO from sPrintTemplate where appkey= @appkey@ and Deleted=0 ) b + on a.PrintTempNO=b.PrintTempNO + left join (select Srcid from sPrintTemplate_Log where appkey='' and apicode= @appkey@ and Deleted=0 ) c + on a.ID=c.Srcid where b.PrintTempNO is null and c.Srcid is null` + + let param = { + func: 'sPC_Get_SelectedList', + LText: Utils.formatOptions(_sql), + obj_name: 'data', + arr_field: 'PN,ID,Images' } + + param.timestamp = moment().format('YYYY-MM-DD HH:mm:ss') + param.secretkey = Utils.encrypt(param.LText, param.timestamp) + + param.open_key = Utils.encryptOpenKey(param.secretkey, param.timestamp) // 浜戠鏁版嵁楠岃瘉 + + Api.getSystemConfig(param).then(res => { + if (res.status) { + let temps = res.data.map(temp => { + return { + value: temp.ID, + text: temp.PN + } + }) + + this.setState({ + printTemps: temps + }) + } else { + notification.warning({ + top: 92, + message: res.message, + duration: 5 + }) + } + }) } /** @@ -90,98 +144,65 @@ */ handleAction = (card) => { const { menu } = this.props - let ableField = this.props.usefulFields.join(', ') - let functip = <div> - <p style={{marginBottom: '5px'}}>{this.state.dict['model.tooltip.func.innerface'].replace('@ableField', ableField)}</p> - <p>{this.state.dict['model.tooltip.func.outface']}</p> - </div> + + let usefulFields = sessionStorage.getItem('permFuncField') + if (usefulFields) { + try { + usefulFields = JSON.parse(usefulFields) + } catch (e) { + usefulFields = [] + } + } else { + usefulFields = [] + } let menulist = [] + if (menu.fstMenuList) { - menulist = menu.fstMenuList.map(item => { - return { - value: item.MenuID, - label: item.text, - isLeaf: false - } - }) - } + let trees = fromJS(menu.fstMenuList).toJS() + menulist = trees.map(fst => { + fst.value = fst.MenuID + fst.label = fst.MenuName + fst.isLeaf = false + fst.children = fst.children.map(snd => { + snd.value = snd.MenuID + snd.label = snd.MenuName - if (menu.fstMenuList && card.linkmenu && card.linkmenu.length > 0) { - let _param = { - func: 'sPC_Get_FunMenu', - ParentID: card.linkmenu[0], - systemType: options.sysType, - debug: 'Y' - } - - Api.getSystemConfig(_param).then(result => { - if (result.status) { - menulist = menulist.map(item => { - if (item.value === card.linkmenu[0]) { - item.children = result.data.map(item => { - let submenu = { - value: item.ParentID, - label: item.MenuNameP, - children: item.FunMenu.map(cell => { - return { - value: cell.MenuID, - label: cell.MenuName, - MenuID: cell.MenuID, - MenuName: cell.MenuName, - MenuNo: cell.MenuNo, - Ot: cell.Ot, - PageParam: cell.PageParam, - LinkUrl: cell.LinkUrl, - disabled: cell.MenuID === menu.MenuID - } - }) - } - - return submenu - }) - } - return item + snd.children = snd.children.map(thd => { + thd.value = thd.MenuID + thd.label = thd.MenuName + thd.disabled = thd.MenuID === menu.MenuID + return thd }) - } else { - notification.warning({ - top: 92, - message: result.message, - duration: 5 - }) - } - - this.setState({ - visible: true, - card: card, - formlist: getActionForm(card, functip, this.props.config, this.props.usefulFields, this.props.type, menulist) + return snd }) - }) - } else { - this.setState({ - visible: true, - card: card, - formlist: getActionForm(card, functip, this.props.config, this.props.usefulFields, this.props.type, menulist) + return fst }) } + + this.setState({ + visible: true, + card: card, + formlist: getActionForm(card, this.props.config, usefulFields, this.props.type, menulist, this.state.printTemps, this.props.tabs) + }) } /** * @description 鍙栨秷淇濆瓨锛屽鏋滃厓绱犱负鏂版坊鍏冪礌锛屽垯浠庡簭鍒椾腑鍒犻櫎 */ editModalCancel = () => { - const { card } = this.state + const { config } = this.props + const { card, actionlist } = this.state if (card.focus) { - let actionlist = fromJS(this.state.actionlist).toJS() - - actionlist = actionlist.filter(item => item.uuid !== card.uuid) + let _actionlist = actionlist.filter(item => item.uuid !== card.uuid) this.setState({ card: null, - actionlist: actionlist, + actionlist: _actionlist, visible: false }) + this.props.updateaction({...config, action: _actionlist}) } else { this.setState({ card: null, @@ -221,7 +242,7 @@ if (labelrepet) { notification.warning({ top: 92, - message: this.state.dict['model.name.exist'] + ' !', + message: '鍚嶇О宸插瓨鍦�!', duration: 5 }) return @@ -241,12 +262,12 @@ new Promise(resolve => { if ( !card.originCard || - (btn.OpenType === 'pop' && card.originCard.OpenType !== 'pop') || - (['tab', 'blank'].includes(btn.OpenType) && !['tab', 'blank'].includes(card.originCard.OpenType)) || - (btn.OpenType === 'popview' && (!btn.createTab || card.originCard.OpenType !== 'popview' || !card.originCard.linkTab)) + (btn.OpenType !== card.originCard.OpenType) || + (btn.OpenType === 'tab' && btn.tabTemplate !== 'FormTab') || + (btn.OpenType === 'funcbutton' && btn.execMode !== 'pop') ) { // 鎸夐挳涓嶆槸澶嶅埗锛屾垨鎸夐挳鍓嶅悗绫诲瀷涓嶄竴鑷存椂锛岀洿鎺ヤ繚瀛� resolve('save') - } else if (btn.OpenType === 'pop' || btn.OpenType === 'tab' || btn.OpenType === 'blank') { + } else if (btn.OpenType === 'pop' || btn.OpenType === 'tab' || btn.execMode === 'pop') { resolve('subconf') } else if (btn.OpenType === 'popview') { resolve('subtab') @@ -258,7 +279,8 @@ return Api.getSystemConfig({ func: 'sPC_Get_LongParam', - MenuID: card.originCard.uuid + MenuID: card.originCard.uuid, + appkey: card.originCard.appkey || '' }) }).then(result => { // 澶嶅埗鎸夐挳閰嶇疆淇℃伅锛屼繚瀛樿嚦鏂版坊鍔犳寜閽� if (result === 'save' || result === 'subtab') return result @@ -276,20 +298,21 @@ } } + if (!_LongParam) return 'save' + let _temp = '' // 閰嶇疆淇℃伅绫诲瀷 // 淇敼妯℃�佹鏍囬鍚嶇О - if (btn.OpenType === 'pop' && _LongParam && _LongParam.type === 'Modal') { + if ((btn.OpenType === 'pop' || btn.execMode === 'pop') && _LongParam.type === 'Modal') { try { _LongParam.setting.title = btn.label _LongParam = window.btoa(window.encodeURIComponent(JSON.stringify(_LongParam))) _temp = 'Modal' - } catch { + } catch (e) { console.warn('Stringify Failure') - _LongParam = '' _temp = '' } - } else if (['tab', 'blank'].includes(btn.OpenType) && _LongParam && _LongParam.type === 'FormTab') { + } else if (btn.OpenType === 'tab' && _LongParam.type === 'FormTab') { try { _LongParam.action = _LongParam.action.map(_btn => { _btn.uuid = Utils.getuuid() @@ -305,9 +328,8 @@ }) _LongParam = window.btoa(window.encodeURIComponent(JSON.stringify(_LongParam))) _temp = 'FormTab' - } catch { + } catch (e) { console.warn('Stringify Failure') - _LongParam = '' _temp = '' } } @@ -355,7 +377,8 @@ return Api.getSystemConfig({ func: 'sPC_Get_LongParam', - MenuID: card.originCard.linkTab + MenuID: card.originCard.linkTab, + appkey: card.originCard.appkey || '' }) }).then(result => { // 鏍囩澶嶅埗 if (result === 'save') return result @@ -400,7 +423,7 @@ Align: 'center', IsSort: 'false', uuid: Utils.getuuid(), - label: this.state.dict['model.form.column.action'], + label: '鎿嶄綔', type: 'action', style: 'button', show: 'horizontal', @@ -463,7 +486,7 @@ _tab.action = _tab.action.map((item, index) => { let uuid = Utils.getuuid() - if (item.OpenType === 'pop') { + if (item.OpenType === 'pop' || item.execMode === 'pop') { _oriActions.push({ prebtn: JSON.parse(JSON.stringify(item)), curuuid: uuid, @@ -500,7 +523,7 @@ btnParam.secretkey = Utils.encrypt(btnParam.LText, btnParam.timestamp) _LongParam = window.btoa(window.encodeURIComponent(JSON.stringify(_tab))) - } catch { + } catch (e) { console.warn('Stringify Failure') _LongParam = '' _resolve('save') @@ -600,11 +623,10 @@ */ deleteElement = (card) => { const { config } = this.props - const { dict } = this.state let _this = this confirm({ - content: dict['model.confirm'] + dict['model.delete'] + ` - ${card.label} 锛焋, + content: `纭畾鍒犻櫎 - ${card.label} 锛焋, onOk() { let _actionlist = fromJS(_this.state.actionlist).toJS() @@ -621,7 +643,7 @@ Align: 'center', IsSort: 'false', uuid: Utils.getuuid(), - label: this.state.dict['model.form.column.action'], + label: '鎿嶄綔', type: 'action', style: 'button', show: 'horizontal', @@ -686,39 +708,13 @@ * @description 鍒涘缓鎸夐挳瀛樺偍杩囩▼ */ creatFunc = () => { - const { config, menu } = this.props + const { menu } = this.props let _config = fromJS(this.props.config).toJS() this.actionFormRef.handleConfirm().then(res => { let btn = res // 鎸夐挳淇℃伅 let newLText = '' // 鍒涘缓瀛樺偍杩囩▼sql let DelText = '' // 鍒犻櫎瀛樺偍杩囩▼sql - - let _actionlist = fromJS(this.state.actionlist).toJS() - - _actionlist = _actionlist.filter(item => !item.origin || item.uuid === btn.uuid) - - let labelrepet = false - _actionlist = _actionlist.map(item => { - if (item.uuid !== btn.uuid && item.label === btn.label) { - labelrepet = true - } - - if (item.uuid === btn.uuid) { - return btn - } else { - return item - } - }) - - if (labelrepet) { - notification.warning({ - top: 92, - message: this.state.dict['model.name.exist'] + ' !', - duration: 5 - }) - return - } // 鍒涘缓瀛樺偍杩囩▼锛屽繀椤诲~鍐欏唴閮ㄥ嚱鏁板悕 if (btn.intertype !== 'inner') { @@ -749,23 +745,16 @@ } if (_LongParam) { - let fields = [] - if (_LongParam.groups.length > 0) { - _LongParam.groups.forEach(group => { - fields = [...fields, ...group.sublist] - }) - } else { - fields = _LongParam.fields - } + _LongParam = updateForm(_LongParam) let _param = { funcName: btn.innerFunc, name: _config.setting.tableName || '', - fields: fields, + fields: _LongParam.fields, menuNo: menu.MenuNo } - newLText = Utils.formatOptions(DevUtils.getfunc(_param, btn, menu, _config)) - DelText = Utils.formatOptions(DevUtils.dropfunc(btn.innerFunc)) + newLText = Utils.formatOptions(FuncUtils.getfunc(_param, btn, menu, _config)) + DelText = Utils.formatOptions(FuncUtils.dropfunc(btn.innerFunc)) resolve(true) } else { notification.warning({ @@ -782,8 +771,8 @@ funcName: btn.innerFunc, menuNo: menu.MenuNo } - newLText = Utils.formatOptions(DevUtils.getexcelInfunc(_param, btn, menu)) - DelText = Utils.formatOptions(DevUtils.dropfunc(btn.innerFunc)) + newLText = Utils.formatOptions(FuncUtils.getexcelInfunc(_param, btn, menu)) + DelText = Utils.formatOptions(FuncUtils.dropfunc(btn.innerFunc)) resolve(true) } else { notification.warning({ @@ -794,12 +783,8 @@ resolve(false) } } else if (btn.OpenType === 'excelOut') { - let _param = { - innerFunc: btn.innerFunc - } - - newLText = Utils.formatOptions(DevUtils.getTableFunc(_param, menu, _config)) // 鍒涘缓瀛樺偍杩囩▼sql - DelText = Utils.formatOptions(DevUtils.dropfunc(btn.innerFunc)) + newLText = Utils.formatOptions(FuncUtils.getTableFunc(btn.innerFunc, menu, _config)) // 鍒涘缓瀛樺偍杩囩▼sql + DelText = Utils.formatOptions(FuncUtils.dropfunc(btn.innerFunc)) resolve(true) } else { @@ -809,42 +794,14 @@ fields: '', menuNo: menu.MenuNo } - newLText = Utils.formatOptions(DevUtils.getfunc(_param, btn, menu, _config)) - DelText = Utils.formatOptions(DevUtils.dropfunc(btn.innerFunc)) + newLText = Utils.formatOptions(FuncUtils.getfunc(_param, btn, menu, _config)) + DelText = Utils.formatOptions(FuncUtils.dropfunc(btn.innerFunc)) resolve(true) } }).then(res => { if (!res) return - this.refs.btnCreatFunc.exec(btn.innerFunc, newLText, DelText).then(result => { - if (result !== 'success') return - - // 鍒ゆ柇鏄惁瀛樺湪鎿嶄綔鍒� - let _hasGridbtn = _actionlist.filter(act => act.position === 'grid').length > 0 - let _gridBtn = config.gridBtn ? fromJS(config.gridBtn).toJS() : null - - if (_gridBtn) { - _gridBtn.display = _hasGridbtn - } else { - _gridBtn = { - display: _hasGridbtn, - Align: 'center', - IsSort: 'false', - uuid: Utils.getuuid(), - label: this.state.dict['model.form.column.action'], - type: 'action', - style: 'button', - show: 'horizontal', - Width: 120 - } - } - - this.setState({ - actionlist: _actionlist - }, () => { - this.props.updateaction({...config, action: _actionlist, gridBtn: _gridBtn}) - }) - }) + this.refs.btnCreatFunc.exec(btn.innerFunc, newLText, DelText) }) }) } @@ -856,14 +813,6 @@ const { config, type, menu } = this.props this.actionFormRef.handleConfirm().then(result => { - if (result.Ot === 'requiredOnce') { - notification.warning({ - top: 92, - message: '澶氳鎷兼帴鏃讹紝涓嶅彲鍒涘缓鎺ュ彛锛�', - duration: 5 - }) - return - } let _menu = { type: type, MenuID: menu.MenuID, @@ -878,20 +827,17 @@ /** * @description 鎸夐挳鍙屽嚮瑙﹀彂瀛愰厤缃� */ - btnDoubleClick = (element) => { - if (!element.origin && (element.OpenType === 'pop' || element.OpenType === 'popview' || element.OpenType === 'blank' || element.OpenType === 'tab')) { - this.props.setSubConfig(element) + btnDoubleClick = (el) => { + // execMode === 'pop' 涓� OpenType === 'funcbutton' + if (!el.origin && (el.OpenType === 'pop' || el.execMode === 'pop' || el.OpenType === 'popview' || (el.OpenType === 'tab' && el.tabTemplate === 'FormTab'))) { + this.props.setSubConfig(el) } else { - notification.warning({ - top: 92, - message: '姝ゆ寜閽棤瀛愰厤缃」锛�', - duration: 5 - }) + this.handleAction(el) } } shouldComponentUpdate (nextProps, nextState) { - return !is(fromJS(this.props), fromJS(nextProps)) || !is(fromJS(this.state), fromJS(nextState)) + return !is(fromJS(this.state), fromJS(nextState)) } /** @@ -901,22 +847,56 @@ this.setState = () => { return } + // MKEmitter.removeListener('revert', this.revert) + MKEmitter.removeListener('pasteButton', this.pasteButton) + } + + getVerify = (card) => { + const { config } = this.props + + if (!card) return null + + if (['pop', 'prompt', 'exec'].includes(card.OpenType)) { + return <VerifyCard + card={card} + config={config} + columns={config.columns} + wrappedComponentRef={(inst) => this.verifyRef = inst} + /> + } else if (card.OpenType === 'excelIn') { + return <VerifyExcelIn + card={card} + columns={config.columns} + wrappedComponentRef={(inst) => this.verifyRef = inst} + /> + } else if (card.OpenType === 'excelOut') { + return <VerifyExcelOut + card={card} + config={config} + wrappedComponentRef={(inst) => this.verifyRef = inst} + /> + } else if (card.OpenType === 'funcbutton' && card.funcType === 'print') { + return <VerifyPrint + card={card} + columns={[]} + // columns={config.columns} + wrappedComponentRef={(inst) => this.verifyRef = inst} + /> + } else if (card.OpenType === 'funcbutton' && card.funcType === 'megvii') { + return <VerifyMegvii + card={card} + columns={config.columns} + wrappedComponentRef={(inst) => this.verifyRef = inst} + /> + } } render() { const { config } = this.props - const { actionlist, visible, card, dict, copying, profVisible } = this.state - - let hasbtncrtinter = false - if (card && !card.copyType && config.setting.interType === 'system' && config.setting.dataresource) { - hasbtncrtinter = true - } + const { actionlist, visible, card, copying, profVisible, record } = this.state return ( - <div className="model-table-action-list" style={config.charts.length > 1 ? {paddingTop: 25} : null}> - <Tooltip placement="bottomLeft" overlayClassName="middle" title={dict['model.tooltip.action.guide']}> - <Icon type="question-circle" /> - </Tooltip> + <div className="model-table-action-list" style={config.charts && config.charts.length > 1 ? {paddingTop: 25} : null}> <DragElement list={actionlist} setting={this.props.config.setting} @@ -925,80 +905,52 @@ deleteMenu={this.deleteElement} profileMenu={this.profileAction} doubleClickCard={this.btnDoubleClick} - placeholder={dict['header.form.action.placeholder']} /> {/* 缂栬緫鎸夐挳锛氬鍒躲�佺紪杈� */} <Modal - title={dict['model.action'] + '-' + (card && card.copyType === 'action' ? dict['model.copy'] : dict['model.edit'])} + title={'鎸夐挳-' + (card && card.copyType === 'action' ? '澶嶅埗' : '缂栬緫')} + wrapClassName="model-table-action-edit-modal" visible={visible} - width={800} + width={920} maskClosable={false} onCancel={this.editModalCancel} footer={[ - hasbtncrtinter ? <CreateInterface key="interface" dict={dict} ref="btnCreatInterface" trigger={this.btnCreatInterface}/> : null, - card && !card.copyType ? <CreateFunc key="create" dict={dict} ref="btnCreatFunc" trigger={this.creatFunc}/> : null, - <Button key="cancel" onClick={this.editModalCancel}>{dict['model.cancel']}</Button>, - <Button key="confirm" type="primary" loading={copying} onClick={this.handleSubmit}>{dict['model.confirm']}</Button> + record && ['pop', 'exec', 'prompt'].includes(record.OpenType) && record.intertype === 'system' ? <CreateInterface key="interface" ref="btnCreatInterface" trigger={this.btnCreatInterface}/> : null, + record && record.intertype === 'inner' ? <CreateFunc key="create" ref="btnCreatFunc" trigger={this.creatFunc}/> : null, + <Button key="cancel" onClick={this.editModalCancel}>鍙栨秷</Button>, + <Button key="confirm" type="primary" loading={copying} onClick={this.handleSubmit}>纭畾</Button> ]} destroyOnClose > <ActionForm - dict={dict} card={card} - tabs={this.props.tabs} formlist={this.state.formlist} inputSubmit={this.handleSubmit} setting={config.setting} + updRecord={(record) => this.setState({record: fromJS(record).toJS()})} wrappedComponentRef={(inst) => this.actionFormRef = inst} /> </Modal> {/* 鎸夐挳浣跨敤绯荤粺瀛樺偍杩囩▼鏃讹紝楠岃瘉淇℃伅妯℃�佹 */} <Modal - wrapClassName="model-table-action-verify-modal" - title={'楠岃瘉淇℃伅'} + wrapClassName="mk-pop-modal" visible={profVisible} - width={'75vw'} + width={'90vw'} maskClosable={false} - style={{minWidth: '900px', maxWidth: '1200px'}} - okText={dict['model.submit']} + okText="鎻愪氦" onOk={this.verifySubmit} - onCancel={() => { this.setState({ profVisible: false }) }} + onCancel={() => { + if (this.verifyRef.handleCancel) { + this.verifyRef.handleCancel().then(() => { + this.setState({ profVisible: false }) + }) + } else { + this.setState({ profVisible: false }) + } + }} destroyOnClose > - {card && !card.execMode && card.OpenType !== 'excelIn' && card.OpenType !== 'excelOut' ? - <VerifyCard - floor={this.props.type} - card={card} - dict={dict} - config={config} - columns={config.columns} - wrappedComponentRef={(inst) => this.verifyRef = inst} - /> : null - } - {card && card.execMode ? - <VerifyPrint - card={card} - dict={dict} - columns={config.columns} - wrappedComponentRef={(inst) => this.verifyRef = inst} - /> : null - } - {card && card.OpenType === 'excelIn' ? - <VerifyExcelIn - card={card} - dict={dict} - columns={config.columns} - wrappedComponentRef={(inst) => this.verifyRef = inst} - /> : null - } - {card && card.OpenType === 'excelOut' ? - <VerifyExcelOut - card={card} - dict={dict} - config={config} - wrappedComponentRef={(inst) => this.verifyRef = inst} - /> : null - } + {this.getVerify(card)} </Modal> </div> ) -- Gitblit v1.8.0