From abf582fbe18c20ab4f01458a9209878c77fea9c0 Mon Sep 17 00:00:00 2001 From: king <18310653075@163.com> Date: 星期三, 15 一月 2020 18:59:52 +0800 Subject: [PATCH] 2020-01-15 --- src/templates/comtableconfig/actionform/index.jsx | 116 +++++++++++++++++++++++++-------------------------------- 1 files changed, 51 insertions(+), 65 deletions(-) diff --git a/src/templates/comtableconfig/actionform/index.jsx b/src/templates/comtableconfig/actionform/index.jsx index d20dd80..7ce988f 100644 --- a/src/templates/comtableconfig/actionform/index.jsx +++ b/src/templates/comtableconfig/actionform/index.jsx @@ -167,10 +167,15 @@ } } - // 鎵撳紑鏂瑰紡鎴栨樉绀轰綅缃彉鍖� + /** + * @description 涓嬫媺鍒囨崲 + * 1銆佹墦寮�鏂瑰紡鍒囨崲锛岄噸缃彲瑙佽〃鍗曞拰琛ㄥ崟鍊� + * 2銆佹樉绀轰綅缃垏鎹紝閲嶇疆閫夋嫨琛� + * 3銆佸垏鎹㈡爣绛剧被鍨嬶紝閲嶇疆鍙�夋爣绛� + */ openTypeChange = (key, value) => { if (key === 'OpenType') { - let _options = null + let _options = [] if (value === 'innerpage') { _options = ['label', 'Ot', 'OpenType', 'pageTemplate', 'icon', 'class', 'position'] } else if (value === 'outerpage') { @@ -192,64 +197,57 @@ _options = ['label', 'position', 'OpenType', 'intertype', 'innerFunc', 'Ot', 'icon', 'class', 'execSuccess', 'execError', 'sysInterface', 'interface', 'outerFunc', 'callbackFunc', 'method'] } } + + let _fieldval = {} + + let _formlist = this.state.formlist.map(item => { + item.hidden = !_options.includes(item.key) + + if (item.hidden) return item + + if (item.key === 'intertype') { + _fieldval.intertype = this.state.interType + } else if (item.key === 'Ot') { + if (value === 'innerpage' || this.state.position === 'grid') { + item.options = this.state.reqOptionSgl + _fieldval.Ot = 'requiredSgl' + } else if (['outerpage', 'blank', 'tab', 'popview'].includes(value)) { + item.options = this.state.reqOptions + _fieldval.Ot = 'requiredSgl' + } else { + item.options = this.state.reqOptionsMutil + } + } else if (item.key === 'sqlType') { + if (['prompt', 'exec'].includes(value)) { + item.options = this.state.deleteOptions + } else { + item.options = this.state.insertUpdateOptions + } + _fieldval.sqlType = '' + } + + return item + }) + this.setState({ openType: value, - formlist: this.state.formlist.map(item => { - if (_options) { - item.hidden = !_options.includes(item.key) - if (item.key === 'intertype') { - item.initVal = this.state.interType - } - } - if (item.key === 'Ot') { - if (value === 'innerpage' || this.state.position === 'grid') { - item.options = this.state.reqOptionSgl - item.initVal = 'requiredSgl' - } else if (['outerpage', 'blank', 'tab', 'popview'].includes(value)) { - item.options = this.state.reqOptions - item.initVal = 'requiredSgl' - } else { - item.options = this.state.reqOptionsMutil - } - item.hidden = true - } else if (item.key === 'sqlType') { - if (['prompt', 'exec'].includes(value)) { - item.options = this.state.deleteOptions - } else { - item.options = this.state.insertUpdateOptions - } - item.initVal = '' - item.hidden = true - } - return item - }) + formlist: _formlist }, () => { - if (['excelIn', 'excelOut'].includes(value)) return - - this.setState({ - formlist: this.state.formlist.map(item => { - if (item.key === 'Ot') { - item.hidden = false - } else if (item.key === 'sqlType' && ['prompt', 'exec', 'pop'].includes(value)) { - item.hidden = false - } - return item - }) - }) + this.props.form.setFieldsValue(_fieldval) }) } else if (key === 'position') { + let _fieldval = {} + this.setState({ position: value, formlist: this.state.formlist.map(item => { if (item.key === 'Ot') { if (this.state.openType === 'innerpage' || value === 'grid') { item.options = this.state.reqOptionSgl - item.initVal = 'requiredSgl' - item.hidden = true + _fieldval.Ot = 'requiredSgl' } else if (['outerpage', 'blank', 'tab', 'popview'].includes(this.state.openType)) { item.options = this.state.reqOptions - item.initVal = 'requiredSgl' - item.hidden = true + _fieldval.Ot = 'requiredSgl' } else { item.options = this.state.reqOptionsMutil } @@ -257,17 +255,11 @@ return item }) }, () => { - this.setState({ - formlist: this.state.formlist.map(item => { - if (item.key === 'Ot') { - item.hidden = false - } - return item - }) - }) + this.props.form.setFieldsValue(_fieldval) }) } else if (key === 'tabType') { let _tabs = this.props.tabs.filter(tab => tab.type === value) + let _fieldval = {} this.setState({ formlist: this.state.formlist.map(item => { @@ -279,20 +271,12 @@ }, ..._tabs ] - item.initVal = '' - item.hidden = true + _fieldval.linkTab = '' } return item }) }, () => { - this.setState({ - formlist: this.state.formlist.map(item => { - if (item.key === 'linkTab') { - item.hidden = false - } - return item - }) - }) + this.props.form.setFieldsValue(_fieldval) }) } } @@ -306,10 +290,12 @@ } else { _options = ['label', 'position', 'OpenType', 'intertype', 'innerFunc', 'Ot', 'icon', 'class', 'execSuccess', 'execError', 'sysInterface', 'interface', 'outerFunc', 'callbackFunc', 'method'] } + this.setState({ interType: value, formlist: this.state.formlist.map(item => { item.hidden = !_options.includes(item.key) + if (item.key === 'interface') { item.readonly = false } else if (item.key === 'sysInterface') { -- Gitblit v1.8.0