From 1da6506bf58270bacc2a4345002c6b082835580e Mon Sep 17 00:00:00 2001 From: king <18310653075@163.com> Date: 星期四, 21 十月 2021 23:17:08 +0800 Subject: [PATCH] 2021-10-21 --- src/tabviews/zshare/mutilform/index.jsx | 56 ++++++++++++++++++++++++++++++++++---------------------- 1 files changed, 34 insertions(+), 22 deletions(-) diff --git a/src/tabviews/zshare/mutilform/index.jsx b/src/tabviews/zshare/mutilform/index.jsx index 7006e7b..c855e56 100644 --- a/src/tabviews/zshare/mutilform/index.jsx +++ b/src/tabviews/zshare/mutilform/index.jsx @@ -52,6 +52,7 @@ let record = {} let formlist = fromJS(action.fields).toJS() let fieldMap = new Map() + let check = action.setting.formType === 'check' formlist = formlist.filter(item => { if (item.supField && item.supvalue) { // 澶氬眰琛ㄥ崟鎺у埗 @@ -75,13 +76,15 @@ if (!item.field || !['text', 'number', 'switch', 'select', 'link', 'linkMain', 'funcvar', 'date', 'datemonth', 'datetime', 'radio', 'checkbox', 'checkcard', 'fileupload', 'textarea', 'multiselect', 'brafteditor', 'color'].includes(item.type)) return false // 鏁版嵁鑷姩濉厖 - item.readin = item.readin !== 'false' - item.readonly = item.readonly === 'true' + let readin = item.readin !== 'false' + item.readin = item.readin !== 'false' && item.readin !== 'top' + item.readonly = check || item.readonly === 'true' item.writein = item.writein !== 'false' item.hidden = item.hidden === 'true' item.fieldlength = item.fieldlength || 50 if (item.type === 'funcvar') { + readin = false item.readin = false item.hidden = true } else if (item.type === 'number') { @@ -110,7 +113,7 @@ let newval = '$empty' - if (item.readin && data && data.hasOwnProperty(item.field)) { + if (readin && data && data.hasOwnProperty(item.field)) { newval = data[item.field] } if (item.type === 'linkMain') { @@ -324,7 +327,7 @@ } // 涓嬬骇琛ㄥ崟鎺у埗-瀛楁鍐欏叆 - if ((['select', 'radio'].includes(item.type) || (item.type === 'checkcard' && item.multiple !== 'true')) && item.linkSubField) { + if ((['select', 'radio', 'link'].includes(item.type) || (item.type === 'checkcard' && item.multiple !== 'true')) && item.linkSubField) { item.subFields = [] item.linkSubField.forEach(m => { let n = fieldMap.get(m) @@ -488,7 +491,7 @@ * @description 娴嬭瘯绯荤粺鑾峰彇涓嬫媺琛ㄥ崟閫夐」淇℃伅 */ improveSimpleActionForm = (deForms) => { - let deffers = deForms.map(form => { + let deffers = deForms.map((form, index) => { let param = { func: 'sPC_Get_SelectedList', LText: form.data_sql, @@ -502,16 +505,18 @@ return ( new Promise(resolve => { - Api.getSystemCacheConfig(param).then(res => { - if (!res.status) { - notification.warning({ - top: 92, - message: res.message, - duration: 5 - }) - } - resolve(res) - }) + setTimeout(() => { + Api.getSystemCacheConfig(param).then(res => { + if (!res.status) { + notification.warning({ + top: 92, + message: res.message, + duration: 5 + }) + } + resolve(res) + }) + }, index * 30) }) ) }) @@ -532,7 +537,7 @@ } resetFormList = (result) => { - let _formlist = this.state.formlist.map(item => { + let _formlist = fromJS(this.state.formlist).toJS().map(item => { if (['select', 'link', 'radio', 'checkbox', 'checkcard', 'multiselect'].includes(item.type) && result[item.field] && result[item.field].length > 0) { let options = [] result[item.field].forEach(cell => { @@ -549,10 +554,15 @@ if (item.type === 'link') { _cell.ParentID = cell[item.linkField] === undefined ? '' : cell[item.linkField] - } else if (item.subFields) { + } + if (item.subFields) { item.subFields.forEach(m => { - _cell[m.field] = (cell[m.field] || cell[m.field] === 0) ? cell[m.field] : '' + _cell[m.field] = cell[m.field] === undefined ? '' : cell[m.field] }) + } + + if (item.disableField && cell[item.disableField] && /^true$/ig.test(cell[item.disableField])) { + _cell.$disabled = true } options.push(_cell) @@ -672,7 +682,7 @@ } else if (item.type === 'color') { content = (<MKColor config={item} onChange={(val) => this.recordChange({[item.field]: val})}/>) } else if (item.type === 'checkcard') { - className = "checkcard" + className = 'checkcard' content = (<MKCheckCard config={item} onChange={(val, other) => this.recordChange({[item.field]: val, ...other}, item)}/>) } else if (item.type === 'switch') { content = (<MKSwitch config={item} onChange={(val) => this.recordChange({[item.field]: val})}/>) @@ -683,6 +693,8 @@ } else if (item.type === 'date' || item.type === 'datemonth' || item.type === 'datetime') { content = (<MKDatePicker config={item} onChange={(val) => this.recordChange({[item.field]: val})} />) } else if (item.type === 'fileupload') { + className = item.readonly ? 'readonly' : '' + className += item.fileType === 'picture-card' ? ' file-upload' : '' content = (<MKFileUpload config={item} onChange={(val) => this.recordChange({[item.field]: val})} />) } else if (item.type === 'textarea') { content = (<MKTextArea config={item} onChange={(val, defer) => !defer && this.recordChange({[item.field]: val})}/>) @@ -744,13 +756,13 @@ if (item.type === 'funcvar') { _item.value = '' - } else if (_item.value && (item.type === 'text' || item.type === 'textarea' || item.type === 'linkMain')) { + } else if (_item.value && (item.type === 'text' || item.type === 'textarea' || item.type === 'linkMain') && typeof(_item.value) === 'string') { _item.value = _item.value.replace(/\t*|\v*/g, '') // 鍘婚櫎鍒惰〃绗� if (item.interception === 'true') { // 鍘婚櫎棣栧熬绌烘牸 _item.value = _item.value.replace(/(^\s*|\s*$)/g, '') } - if (item.type === 'text' && typeof(_item.value) === 'string') { // 鐗规畩瀛楁鏇挎崲 + if (item.type === 'text') { // 鐗规畩瀛楁鏇挎崲 _item.value = _item.value.replace(/^(\s*)@appkey@(\s*)$/ig, window.GLOB.appkey) _item.value = _item.value.replace(/^(\s*)@SessionUid@(\s*)$/ig, (localStorage.getItem('SessionUid') || '')) _item.value = _item.value.replace(/^(\s*)@bid@(\s*)$/ig, (this.props.BID || '')) @@ -778,7 +790,7 @@ } return ( - <Form className={'main-form-field ' + _align} id="main-form-box"> + <Form className={'main-form-field ' + _align}> <Row gutter={24}>{this.getFields()}</Row> </Form> ) -- Gitblit v1.8.0