From fb3ec146a9e1444ece749d0bcf232a554e933fb0 Mon Sep 17 00:00:00 2001 From: king <18310653075@163.com> Date: 星期二, 17 五月 2022 22:56:16 +0800 Subject: [PATCH] Merge branch 'develop' --- src/menu/components/share/actioncomponent/actionform/index.jsx | 100 +++++++++++++++++++++++++++++++------------------ 1 files changed, 63 insertions(+), 37 deletions(-) diff --git a/src/menu/components/share/actioncomponent/actionform/index.jsx b/src/menu/components/share/actioncomponent/actionform/index.jsx index 88eeb84..dc8f3c3 100644 --- a/src/menu/components/share/actioncomponent/actionform/index.jsx +++ b/src/menu/components/share/actioncomponent/actionform/index.jsx @@ -1,7 +1,7 @@ import React, {Component} from 'react' import PropTypes from 'prop-types' import { fromJS } from 'immutable' -import { Form, Row, Col, Input, Select, Radio, notification, Tooltip, InputNumber, Cascader } from 'antd' +import { Form, Row, Col, Input, Select, Radio, Tooltip, InputNumber, Cascader } from 'antd' import { QuestionCircleOutlined } from '@ant-design/icons' import { formRule } from '@/utils/option.js' @@ -11,16 +11,16 @@ const { TextArea } = Input const MkEditIcon = asyncComponent(() => import('@/components/mkIcon')) const acTyOptions = { - pop: ['label', 'OpenType', 'intertype', 'Ot', 'show', 'swipe', 'icon', 'class', 'color', 'execSuccess', 'execError', 'resetPageIndex', 'syncComponent', 'switchTab', 'width', 'openmenu', 'open', 'refreshTab', 'position', 'tipTitle'], - prompt: ['label', 'OpenType', 'intertype', 'Ot', 'show', 'swipe', 'icon', 'class', 'color', 'execSuccess', 'execError', 'resetPageIndex', 'syncComponent', 'switchTab', 'width', 'openmenu', 'open', 'refreshTab', 'position', 'tipTitle'], - exec: ['label', 'OpenType', 'intertype', 'Ot', 'show', 'swipe', 'icon', 'class', 'color', 'execSuccess', 'execError', 'resetPageIndex', 'syncComponent', 'switchTab', 'width', 'openmenu', 'open', 'refreshTab'], - excelIn: ['label', 'Ot', 'OpenType', 'intertype', 'show', 'icon', 'class', 'color', 'sheet', 'execSuccess', 'execError', 'resetPageIndex', 'syncComponent', 'switchTab', 'width'], - excelOut: ['label', 'OpenType', 'intertype', 'show', 'icon', 'class', 'color', 'execSuccess', 'execError', 'syncComponent', 'switchTab', 'resetPageIndex', 'pagination', 'search', 'width'], - popview: ['label', 'Ot', 'OpenType', 'show', 'icon', 'class', 'color', 'popClose', 'resetPageIndex', 'width', 'display', 'ratio', 'syncComponent', 'clickouter'], - tab: ['label', 'Ot', 'OpenType', 'show', 'icon', 'class', 'color', 'linkmenu', 'width'], - innerpage: ['label', 'Ot', 'OpenType', 'pageTemplate', 'show', 'swipe', 'icon', 'class', 'color', 'width', 'open'], - funcbutton: ['label', 'OpenType', 'funcType', 'show', 'swipe', 'icon', 'class', 'color', 'width'], - form: ['label', 'OpenType', 'formType', 'intertype', 'Ot', 'execSuccess', 'execError', 'resetPageIndex', 'syncComponent', 'width', 'open', 'refreshTab', 'title'] + pop: ['label', 'OpenType', 'intertype', 'Ot', 'show', 'swipe', 'icon', 'class', 'color', 'execSuccess', 'execError', 'resetPageIndex', 'syncComponent', 'switchTab', 'anchors', 'width', 'openmenu', 'open', 'refreshTab', 'position', 'tipTitle', 'hidden'], + prompt: ['label', 'OpenType', 'intertype', 'Ot', 'show', 'swipe', 'icon', 'class', 'color', 'execSuccess', 'execError', 'resetPageIndex', 'syncComponent', 'switchTab', 'anchors', 'width', 'openmenu', 'open', 'refreshTab', 'position', 'tipTitle', 'hidden'], + exec: ['label', 'OpenType', 'intertype', 'Ot', 'show', 'swipe', 'icon', 'class', 'color', 'execSuccess', 'execError', 'resetPageIndex', 'syncComponent', 'switchTab', 'anchors', 'width', 'openmenu', 'open', 'refreshTab', 'hidden'], + excelIn: ['label', 'Ot', 'OpenType', 'intertype', 'show', 'icon', 'class', 'color', 'sheet', 'execSuccess', 'execError', 'resetPageIndex', 'syncComponent', 'switchTab', 'width', 'hidden'], + excelOut: ['label', 'OpenType', 'intertype', 'show', 'icon', 'class', 'color', 'execSuccess', 'execError', 'syncComponent', 'switchTab', 'resetPageIndex', 'pagination', 'search', 'width', 'hidden'], + popview: ['label', 'Ot', 'OpenType', 'show', 'icon', 'class', 'color', 'popClose', 'resetPageIndex', 'width', 'display', 'ratio', 'syncComponent', 'clickouter', 'hidden'], + tab: ['label', 'Ot', 'OpenType', 'show', 'icon', 'class', 'color', 'linkmenu', 'width', 'hidden'], + innerpage: ['label', 'Ot', 'OpenType', 'pageTemplate', 'show', 'swipe', 'icon', 'class', 'color', 'width', 'open', 'hidden'], + funcbutton: ['label', 'OpenType', 'funcType', 'show', 'swipe', 'icon', 'class', 'color', 'width', 'hidden'], + form: ['label', 'OpenType', 'formType', 'intertype', 'Ot', 'execSuccess', 'execError', 'resetPageIndex', 'syncComponent', 'width', 'open', 'refreshTab', 'title', 'hidden'] } class ActionForm extends Component { @@ -30,7 +30,8 @@ setting: PropTypes.object, // 椤甸潰璁剧疆 formlist: PropTypes.any, // 琛ㄥ崟淇℃伅 card: PropTypes.any, // 鎸夐挳淇℃伅 - inputSubmit: PropTypes.any // 鍥炶溅鎻愪氦浜嬩欢 + inputSubmit: PropTypes.func, // 鍥炶溅鎻愪氦浜嬩欢 + updRecord: PropTypes.func // 鏇存柊淇℃伅 } state = { @@ -140,6 +141,7 @@ } }, 100) } + this.props.updRecord && this.props.updRecord(this.record) } getMutilOptions = (requireOptions) => { @@ -296,7 +298,11 @@ if (this.record.pageTemplate === 'custom') { shows.push('url', 'joint') } else if (this.record.pageTemplate === 'linkpage') { - shows.push('linkmenu', 'joint') + shows.push('linkmenu') + + if (Ot === 'requiredSgl') { + shows.push('joint') + } reRequired.linkmenu = true reTooltip.linkmenu = '' @@ -340,6 +346,8 @@ reTooltip.linkmenu = '浣跨敤鎵爜鐧诲綍鍔熻兘鎴栬彍鍗曡烦杞姛鑳芥椂锛岄渶閫夋嫨璺宠浆鐨勮彍鍗曘��' } else if (_funcType === 'goBack') { shows.push('reload') + } else if (_funcType === 'megvii') { + shows.push('subFunc') } } @@ -353,6 +361,9 @@ ] if (this.record.control) { shows.push('controlField', 'controlVal') + } + if (this.record.control === 'disabled') { + shows.push('reason') } } } else { @@ -377,6 +388,9 @@ } if (this.record.control) { shows.push('controlField', 'controlVal') + } + if (this.record.control === 'disabled') { + shows.push('reason') } } @@ -477,6 +491,8 @@ this.record.control = '' _fieldval.control = '' } + + this.props.updRecord && this.props.updRecord(this.record) } else if (key === 'funcType') { if (value === 'print') { _fieldval.label = '鎵撳嵃' @@ -541,6 +557,8 @@ } } else if (key === 'intertype') { this.record.sysInterface = 'false' + + this.props.updRecord && this.props.updRecord(this.record) } else if (key === 'sysInterface') { if (value === 'true') { _fieldval.interface = window.GLOB.mainSystemApi || '' @@ -635,25 +653,42 @@ { required: item.required, message: dict['form.required.input'] + item.label + '!' } ] - content = <InputNumber min={item.min} max={item.max} precision={item.precision} /> + content = <InputNumber min={item.min} max={item.max} precision={item.precision} onPressEnter={this.handleSubmit}/> } else if (item.type === 'select') { rules = [ { required: item.required, message: dict['form.required.select'] + item.label + '!' } ] - content = <Select - showSearch - allowClear={item.allowClear === true} - filterOption={(input, option) => option.props.children.toLowerCase().indexOf(input.toLowerCase()) >= 0} - onChange={(value) => {this.optionChange(item.key, value)}} - getPopupContainer={() => document.getElementById('winter')} - > - {item.options.map((option, index) => - <Select.Option key={index} value={(option.value || option.field)}> - {(option.text || option.label)} - </Select.Option> - )} - </Select> + if (item.extendName) { + content = <Select + showSearch + allowClear={item.allowClear === true} + filterOption={(input, option) => option.props.children.toLowerCase().indexOf(input.toLowerCase()) >= 0 || + option.props.extend.toLowerCase().indexOf(input.toLowerCase()) >= 0} + onChange={(value) => {this.optionChange(item.key, value)}} + getPopupContainer={() => document.getElementById('winter')} + > + {item.options.map((option, index) => + <Select.Option key={index} extend={option[item.extendName] || ''} value={(option.value || option.field)}> + {(option.text || option.label)} + </Select.Option> + )} + </Select> + } else { + content = <Select + showSearch + allowClear={item.allowClear === true} + filterOption={(input, option) => option.props.children.toLowerCase().indexOf(input.toLowerCase()) >= 0} + onChange={(value) => {this.optionChange(item.key, value)}} + getPopupContainer={() => document.getElementById('winter')} + > + {item.options.map((option, index) => + <Select.Option key={index} value={(option.value || option.field)}> + {(option.text || option.label)} + </Select.Option> + )} + </Select> + } } else if (item.type === 'radio') { rules = [ { required: item.required, message: dict['form.required.select'] + item.label + '!' } @@ -705,7 +740,7 @@ } handleConfirm = () => { - const { setting, card } = this.props + const { card } = this.props // 琛ㄥ崟鎻愪氦鏃舵鏌ヨ緭鍏ュ�兼槸鍚︽纭� return new Promise((resolve, reject) => { this.props.form.validateFieldsAndScroll((err, values) => { @@ -720,15 +755,6 @@ values.closeVal = +values.closeVal } } else if (values.OpenType === 'excelOut') { - if (values.intertype === 'system' && setting.interType !== 'system') { - notification.warning({ - top: 92, - message: '琛ㄦ牸鏁版嵁鏌ヨ鏈娇鐢ㄧ郴缁熷嚱鏁帮紝瀵煎嚭Excel涓嶅彲浣跨敤绯荤粺鍑芥暟锛�', - duration: 5 - }) - return - } - values.Ot = 'notRequired' } else if (['pop', 'prompt', 'exec'].includes(values.OpenType) && values.verify) { if ((values.Ot === 'requiredOnce' || card.Ot === 'requiredOnce') && card.Ot !== values.Ot) { -- Gitblit v1.8.0