From c7aece35a62b6e91fd98a625bf0e53f64bfbd18d Mon Sep 17 00:00:00 2001 From: king <18310653075@163.com> Date: 星期四, 17 八月 2023 16:22:15 +0800 Subject: [PATCH] 2023-08-17 --- src/templates/sharecomponent/actioncomponent/verifyexcelout/datasource/index.jsx | 118 +++++++++++++++++++++++++++++++++++++++++++++++----------- 1 files changed, 95 insertions(+), 23 deletions(-) diff --git a/src/templates/sharecomponent/actioncomponent/verifyexcelout/datasource/index.jsx b/src/templates/sharecomponent/actioncomponent/verifyexcelout/datasource/index.jsx index c6f8e4e..04fa4a8 100644 --- a/src/templates/sharecomponent/actioncomponent/verifyexcelout/datasource/index.jsx +++ b/src/templates/sharecomponent/actioncomponent/verifyexcelout/datasource/index.jsx @@ -1,6 +1,6 @@ import React, {Component} from 'react' import PropTypes from 'prop-types' -import { Form, Row, Col, Input, Radio, Tooltip, notification } from 'antd' +import { Form, Row, Col, Input, Radio, Tooltip, notification, InputNumber } from 'antd' import { QuestionCircleOutlined } from '@ant-design/icons' import Utils from '@/utils/utils.js' @@ -11,6 +11,7 @@ class SettingForm extends Component { static propTpyes = { + btnType: PropTypes.any, setting: PropTypes.object, // 鏁版嵁婧愰厤缃� } @@ -20,10 +21,10 @@ } UNSAFE_componentWillMount () { - const { setting } = this.props + const { setting, btnType } = this.props this.setState({ - dataType: setting.dataType, + dataType: btnType === 'print' ? 'custom' : setting.dataType, defaultSql: setting.defaultSql || 'true' }) } @@ -75,6 +76,14 @@ }) reject() return + } else if (/,,/ig.test(values.dataresource)) { + notification.warning({ + top: 92, + message: '鏁版嵁婧愪腑锛屼笉鍙嚭鐜拌繛缁殑鑻辨枃閫楀彿锛�,,锛�', + duration: 5 + }) + reject() + return } let error = Utils.verifySql(values.dataresource) @@ -99,12 +108,22 @@ } updateDataType = (e) => { - this.setState({dataType: e.target.value}) this.props.updateDataType(e.target.value) + + if (e.target.value === 'custom') { + setTimeout(() => { + this.setState({ + dataType: e.target.value, + defaultSql: this.props.setting.defaultSql || 'true' + }) + }, 10) + } else { + this.setState({dataType: e.target.value}) + } } render() { - const { setting } = this.props + const { setting, btnType } = this.props const { getFieldDecorator } = this.props.form const { dataType, defaultSql } = this.state @@ -123,7 +142,7 @@ <div className="excelout-datasource-wrap"> <Form {...formItemLayout}> <Row gutter={24}> - <Col span={8}> + {btnType !== 'print' ? <Col span={8}> <Form.Item label="瀵煎嚭鏁版嵁"> {getFieldDecorator('dataType', { initialValue: setting.dataType @@ -134,7 +153,7 @@ </Radio.Group> )} </Form.Item> - </Col> + </Col> : null} {dataType === 'custom' ? <Col className="short-label" span={8}> <Form.Item label="琛ㄥ悕"> {getFieldDecorator('tableName', { @@ -197,21 +216,29 @@ </Radio.Group>)} </Form.Item> </Col> : null} + {/* {dataType === 'custom' && defaultSql === 'true' ? <Col className="short-label" span={8}> + <Form.Item label="涓婚敭"> + {getFieldDecorator('primaryKey', { + initialValue: setting.primaryKey || 'ID', + })(<Input placeholder={''} autoComplete="off" />)} + </Form.Item> + </Col> : null} */} {dataType === 'custom' && defaultSql === 'true' ? <Col className="short-label" span={8}> - <Form.Item label={ - <Tooltip placement="topLeft" title="鎺掑簭鏂瑰紡涓虹┖鏃讹紝浣跨敤琛ㄦ牸鎴栫粍浠朵腑鐨勬帓搴忔柟寮忋��"> - <QuestionCircleOutlined className="mk-form-tip" /> - 鎺掑簭鏂瑰紡 - </Tooltip> - }> + <Form.Item label="鎺掑簭鏂瑰紡"> {getFieldDecorator('order', { - initialValue: setting.order || '' + initialValue: setting.order || '', + rules: [ + { + required: true, + message: '璇峰~鍐欐帓搴忔柟寮�!' + } + ] })(<Input placeholder={'ID asc, UID desc'} autoComplete="off" />)} </Form.Item> </Col> : null} - {dataType === 'custom' ? <Col span={8}> + {dataType === 'custom' && btnType !== 'print' ? <Col span={8}> <Form.Item label={ - <Tooltip placement="topLeft" title="涓嶄娇鐢ㄦ悳绱㈡潯浠舵椂锛屼笉浼氳繘琛屾悳绱㈡潯浠剁殑鎷兼帴涓庣浉鍏崇粺璁″瓧娈电殑鏇挎崲銆傛敞锛氳嚜瀹氫箟鏁版嵁鏉ユ簮鏃讹紝鍙娇鐢ㄥ唴閮ㄦ悳绱€��"> + <Tooltip placement="topLeft" title="涓嶄娇鐢ㄦ悳绱㈡潯浠舵椂锛屼笉浼氳繘琛屾悳绱㈡潯浠剁殑鎷兼帴涓庣浉鍏崇粺璁″瓧娈电殑鏇挎崲銆�"> <QuestionCircleOutlined className="mk-form-tip" /> 鎼滅储鏉′欢 </Tooltip> @@ -225,17 +252,62 @@ </Radio.Group>)} </Form.Item> </Col> : null} - {/* {dataType === 'custom' ? <Col span={8}> - <Form.Item label="浜嬪姟"> - {getFieldDecorator('transaction', { - initialValue: setting.transaction || 'false' + {btnType !== 'print' ? <Col span={8}> + <Form.Item label={ + <Tooltip placement="topLeft" title="瀵煎嚭excel涓伐浣滆〃鍚嶇О锛岄粯璁や负Sheet1銆�"> + <QuestionCircleOutlined className="mk-form-tip" /> + 宸ヤ綔琛� + </Tooltip> + }> + {getFieldDecorator('sheet', { + initialValue: setting.sheet || '' + })(<Input placeholder="" autoComplete="off" />)} + </Form.Item> + </Col> : null} + {btnType !== 'print' ? <Col span={8}> + <Form.Item label={ + <Tooltip placement="topLeft" title="瀵煎嚭excel涓殑琛岄珮銆�"> + <QuestionCircleOutlined className="mk-form-tip" /> + 琛岄珮 + </Tooltip> + }> + {getFieldDecorator('rowHeight', { + initialValue: setting.rowHeight || '' + })(<InputNumber min={10} max={200} precision={0} />)} + </Form.Item> + </Col> : null} + {btnType !== 'print' ? <Col span={8}> + <Form.Item label={ + <Tooltip placement="topLeft" title="璇峰皢闇�瑕佸悎骞剁殑琛ㄥご浣跨敤涓í绾垮垎闅旓紙濡傦細鍟嗗搧-鏁伴噺銆佸晢鍝�-鍗曚环锛夛紝鍓嶉儴鍒嗗皢浣滀负涓昏〃澶达紝鍚庨儴鍒嗗皢浣滀负瀛愯〃澶淬��"> + <QuestionCircleOutlined className="mk-form-tip" /> + 琛ㄥご鍚堝苟 + </Tooltip> + }> + {getFieldDecorator('merge', { + initialValue: setting.merge || 'false' })( <Radio.Group> - <Radio value="true">浣跨敤</Radio> - <Radio value="false">涓嶄娇鐢�</Radio> + <Radio value="false">鍚�</Radio> + <Radio value="true">鏄�</Radio> </Radio.Group>)} </Form.Item> - </Col> : null} */} + </Col> : null} + {btnType !== 'print' ? <Col span={8}> + <Form.Item label={ + <Tooltip placement="topLeft" title="Excel鍐呭鍖烘槸鍚﹁嚜鍔ㄦ崲琛屻��"> + <QuestionCircleOutlined className="mk-form-tip" /> + 鑷姩鎹㈣ + </Tooltip> + }> + {getFieldDecorator('wrapText', { + initialValue: setting.wrapText || 'false' + })( + <Radio.Group> + <Radio value="false">鍚�</Radio> + <Radio value="true">鏄�</Radio> + </Radio.Group>)} + </Form.Item> + </Col> : null} </Row> </Form> </div> -- Gitblit v1.8.0