From ab949bb71eadda3ec1736ccdcfaa1b12b04cce6a Mon Sep 17 00:00:00 2001
From: king <18310653075@163.com>
Date: 星期日, 05 十一月 2023 10:35:56 +0800
Subject: [PATCH] Merge branch 'develop'
---
src/menu/components/share/clockcomponent/settingform/index.jsx | 80 ++++++++++++++++++++++++++++++++++++---
1 files changed, 73 insertions(+), 7 deletions(-)
diff --git a/src/menu/components/share/clockcomponent/settingform/index.jsx b/src/menu/components/share/clockcomponent/settingform/index.jsx
index bac1266..f31fb1c 100644
--- a/src/menu/components/share/clockcomponent/settingform/index.jsx
+++ b/src/menu/components/share/clockcomponent/settingform/index.jsx
@@ -1,22 +1,35 @@
import React, {Component} from 'react'
import PropTypes from 'prop-types'
-import { Form, Row, Col, Select } from 'antd'
+import { Form, Row, Col, Select, Tooltip, Input, InputNumber, notification } from 'antd'
+import { QuestionCircleOutlined } from '@ant-design/icons'
import './index.scss'
class SettingForm extends Component {
static propTpyes = {
- timer: PropTypes.string, // 缁勪欢鍚嶇О
- inputSubmit: PropTypes.func // 鍥炶溅浜嬩欢
+ config: PropTypes.string,
+ inputSubmit: PropTypes.func
}
- state = {}
+ state = {
+ clearField: this.props.config.clearField || '',
+ timer: this.props.config.timer || ''
+ }
handleConfirm = () => {
// 琛ㄥ崟鎻愪氦鏃舵鏌ヨ緭鍏ュ�兼槸鍚︽纭�
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)
@@ -26,6 +39,8 @@
}
render() {
+ const { config } = this.props
+ const { clearField, timer } = this.state
const { getFieldDecorator } = this.props.form
const formItemLayout = {
@@ -44,12 +59,23 @@
<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: this.props.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>
<Select.Option value="1min"> 1鍒嗛挓 </Select.Option>
@@ -62,6 +88,46 @@
)}
</Form.Item>
</Col>
+ {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}
+ {timer && timer !== '2s' ? <Col span={22}>
+ <Form.Item label={
+ <Tooltip placement="topLeft" title="鍙互鎸囧畾瀛楁鐢ㄤ簬鎺у埗瀹氭椂鍣ㄧ殑鍏抽棴銆�">
+ <QuestionCircleOutlined className="mk-form-tip" />
+ 鍏抽棴瀹氭椂
+ </Tooltip>
+ }>
+ {getFieldDecorator('clearField', {
+ initialValue: clearField || ''
+ })(
+ <Select allowClear onChange={(val) => this.setState({clearField: val})}>
+ {config.columns.map(col => (<Select.Option key={col.uuid} value={col.field}>{col.label}</Select.Option>))}
+ </Select>
+ )}
+ </Form.Item>
+ </Col> : null}
+ {clearField && timer && timer !== '2s' ? <Col span={22}>
+ <Form.Item label={
+ <Tooltip placement="topLeft" title="褰撳瓧娈靛�间笌鍏抽棴鍊肩浉绛夋椂锛屽叧闂畾鏃跺櫒锛屽涓�煎彲鐢ㄩ�楀彿鍒嗛殧銆�">
+ <QuestionCircleOutlined className="mk-form-tip" />
+ 鍏抽棴鍊�
+ </Tooltip>
+ }>
+ {getFieldDecorator('clearValue', {
+ initialValue: config.clearValue || ''
+ })(<Input placeholder="" autoComplete="off" onPressEnter={this.props.inputSubmit}/>)}
+ </Form.Item>
+ </Col> : null}
</Row>
</Form>
</div>
--
Gitblit v1.8.0