From 10f5efae1624c89d9a8f04ac331e07c895ea282a Mon Sep 17 00:00:00 2001 From: king <18310653075@163.com> Date: 星期六, 25 五月 2024 18:22:58 +0800 Subject: [PATCH] 2024-05-25 --- src/tabviews/zshare/mutilform/mkPopSelect/index.jsx | 47 +++++++++++++++++++++++++++++++++++++---------- 1 files changed, 37 insertions(+), 10 deletions(-) diff --git a/src/tabviews/zshare/mutilform/mkPopSelect/index.jsx b/src/tabviews/zshare/mutilform/mkPopSelect/index.jsx index 59f0af5..7b76860 100644 --- a/src/tabviews/zshare/mutilform/mkPopSelect/index.jsx +++ b/src/tabviews/zshare/mutilform/mkPopSelect/index.jsx @@ -80,6 +80,7 @@ options: [], columns, value, + showValue: config.showValue, placeholder, arr_field: arrfield.join(','), searchKey: '', @@ -122,7 +123,7 @@ let param = { func: 'sPC_Get_TableData', obj_name: 'data', - exec_type: 'y', + exec_type: window.GLOB.execType || 'y', arr_field: arr_field, default_sql: 'true', custom_script: '', @@ -166,8 +167,8 @@ DateCount && console.info(`/*${config.label} 鎬绘暟鏌ヨ*/\n` + DateCount.replace(/\n\s{6}/ig, '\n')) } - param.LText = Utils.formatOptions(sql) - param.DateCount = Utils.formatOptions(DateCount) + param.LText = Utils.formatOptions(sql, param.exec_type) + param.DateCount = Utils.formatOptions(DateCount, param.exec_type) param.timestamp = moment().format('YYYY-MM-DD HH:mm:ss') param.secretkey = Utils.encrypt('', param.timestamp) @@ -188,8 +189,17 @@ return item }) + + let showValue = this.state.showValue + + if (showValue) { + if (options.findIndex(item => this.state.value === item.$$uuid) > -1) { + showValue = '' + } + } this.setState({ + showValue, options: options, total: result.total || 0, loading: false @@ -260,17 +270,26 @@ }) } + if (config.linkFields) { + config.linkFields.forEach((m, i) => { + setTimeout(() => { + MKEmitter.emit('mkFP', m.uuid, val, 0) + }, (i + 1) * 100) + }) + } + this.props.onChange(val, other) - this.setState({value: val}, () => { + this.setState({value: val, showValue: ''}, () => { if (config.enter === 'tab') { MKEmitter.emit('mkFC', 'focus', config.tabUuid) } else if (config.enter === 'sub') { + config.tabUuid && MKEmitter.emit('mkFC', 'focus', config.tabUuid) if (config.subFields) { setTimeout(() => { - this.props.onSubmit() + this.props.onSubmit(config.tabUuid) }, 1000) } else { - this.props.onSubmit() + this.props.onSubmit(config.tabUuid) } } }) @@ -311,14 +330,14 @@ } render() { - const { value, config, options, visible, loading, total, pageIndex, pageSize, columns, placeholder } = this.state + const { value, showValue, config, options, visible, loading, total, pageIndex, pageSize, columns, placeholder, searchKey } = this.state return <> <Select className="mk-pop-select" showSearch={!!config.searchKey} allowClear - value={value} + value={showValue || value} onSearch={(val) => val && this.searchOption(val)} filterOption={false} onChange={(val) => this.selectChange(val === undefined ? '' : val)} @@ -341,7 +360,7 @@ onCancel={() => this.setState({visible: false})} destroyOnClose > - {config.searchKey ? <Search placeholder={placeholder} onSearch={this.searchOption} enterButton /> : null} + {config.searchKey ? <Search placeholder={placeholder} defaultValue={searchKey} onSearch={this.searchOption} enterButton /> : null} <Table rowKey="$$uuid" bordered={true} @@ -350,8 +369,16 @@ dataSource={options} loading={loading} onRow={(record) => { + let className = '' + + if (record.$disabled) { + className = ' mk-disable-line ' + } else if (value === record.$$uuid) { + className = ' ant-table-row-selected ' + } + return { - className: value === record.$$uuid ? ' ant-table-row-selected ' : '', + className: className, onClick: () => {this.changeRow(record)}, } }} -- Gitblit v1.8.0