From c33ac9ddcdbed91bd2267bed2a96199441806a04 Mon Sep 17 00:00:00 2001 From: king <18310653075@163.com> Date: 星期四, 22 九月 2022 17:00:15 +0800 Subject: [PATCH] 2022-09-22 --- src/menu/components/share/clockcomponent/settingform/index.jsx | 51 ++++++++++++++++++++++++++++++++++++++++++--------- 1 files changed, 42 insertions(+), 9 deletions(-) diff --git a/src/menu/components/share/clockcomponent/settingform/index.jsx b/src/menu/components/share/clockcomponent/settingform/index.jsx index dd4c146..0978f22 100644 --- a/src/menu/components/share/clockcomponent/settingform/index.jsx +++ b/src/menu/components/share/clockcomponent/settingform/index.jsx @@ -1,6 +1,7 @@ import React, {Component} from 'react' import PropTypes from 'prop-types' -import { Form, Row, Col, Select, Tooltip, Icon, Input } from 'antd' +import { Form, Row, Col, Select, Tooltip, Input, InputNumber, notification } from 'antd' +import { QuestionCircleOutlined } from '@ant-design/icons' import './index.scss' @@ -11,7 +12,8 @@ } state = { - clearField: this.props.config.clearField || '' + clearField: this.props.config.clearField || '', + timer: this.props.config.timer || '' } handleConfirm = () => { @@ -19,6 +21,15 @@ return new Promise((resolve, reject) => { this.props.form.validateFieldsAndScroll((err, values) => { if (!err) { + if (values.timer === '2s') { + if (!values.timerRepeats) { + notification.warning({ top: 92, message: '璇疯缃�2s瀹氭椂鍣ㄦ墽琛屾鏁般��', duration: 3 }) + return + } else if (values.timerRepeats > 3) { + notification.warning({ top: 92, message: '2s瀹氭椂鍣ㄦ墽琛屾鏁颁笉鍙秴杩�3娆°��', duration: 3 }) + return + } + } resolve(values) } else { reject(err) @@ -29,7 +40,7 @@ render() { const { config } = this.props - const { clearField } = this.state + const { clearField, timer } = this.state const { getFieldDecorator } = this.props.form const formItemLayout = { @@ -48,12 +59,22 @@ <Form {...formItemLayout}> <Row gutter={24}> <Col span={22}> - <Form.Item label="瀹氭椂鍣�"> + <Form.Item label={ + <Tooltip placement="topLeft" title="2s瀹氭椂鍣ㄦ渶澶氬彧鑳芥墽琛屼笁娆★紝瀹氭椂鍣ㄦ墽琛�3娆′互涓婇渶瑕佸湪鍗曠偣绯荤粺璁剧疆鏉冮檺銆�"> + <QuestionCircleOutlined className="mk-form-tip" /> + 瀹氭椂鍣� + </Tooltip> + }> {getFieldDecorator('timer', { initialValue: config.timer || '' })( - <Select> + <Select onChange={(val) => this.setState({timer: val}, () => { + if (val === '2s') { + this.props.form.setFieldsValue({timerRepeats: 1}) + } + })}> <Select.Option value=""> 鏃� </Select.Option> + <Select.Option value="2s"> 2绉� </Select.Option> <Select.Option value="5s"> 5绉� </Select.Option> <Select.Option value="15s"> 15绉� </Select.Option> <Select.Option value="30s"> 30绉� </Select.Option> @@ -67,10 +88,22 @@ )} </Form.Item> </Col> - {config.subtype === 'balcony' || config.subtype === 'propcard' ? <Col span={22}> + {timer ? <Col span={22}> + <Form.Item label={ + <Tooltip placement="topLeft" title="瀹氭椂鍣ㄦ墽琛屾鏁般�傛敞锛�0琛ㄧず娌℃湁闄愬埗銆�"> + <QuestionCircleOutlined className="mk-form-tip" /> + 鎵ц娆℃暟 + </Tooltip> + }> + {getFieldDecorator('timerRepeats', { + initialValue: config.timerRepeats || 0, + })(<InputNumber min={0} max={500} precision={0} />)} + </Form.Item> + </Col> : null} + {config.type === 'card' && (config.subtype === 'balcony' || config.subtype === 'propcard') && timer && timer !== '2s' ? <Col span={22}> <Form.Item label={ <Tooltip placement="topLeft" title="鍙互鎸囧畾瀛楁鐢ㄤ簬鎺у埗瀹氭椂鍣ㄧ殑鍏抽棴銆�"> - <Icon type="question-circle" style={{marginRight: '3px', color: '#c49f47'}} /> + <QuestionCircleOutlined className="mk-form-tip" /> 鍏抽棴瀹氭椂 </Tooltip> }> @@ -83,10 +116,10 @@ )} </Form.Item> </Col> : null} - {(config.subtype === 'balcony' || config.subtype === 'propcard') && clearField ? <Col span={22}> + {(config.subtype === 'balcony' || config.subtype === 'propcard') && clearField && timer && timer !== '2s' ? <Col span={22}> <Form.Item label={ <Tooltip placement="topLeft" title="褰撳瓧娈靛�间笌鍏抽棴鍊肩浉绛夋椂锛屽叧闂畾鏃跺櫒锛屽涓�煎彲鐢ㄩ�楀彿鍒嗛殧銆�"> - <Icon type="question-circle" style={{marginRight: '3px', color: '#c49f47'}} /> + <QuestionCircleOutlined className="mk-form-tip" /> 鍏抽棴鍊� </Tooltip> }> -- Gitblit v1.8.0