|
import TopNItem from '@/components/top-n-item'; |
|
import { useTranslate } from '@/hooks/common-hooks'; |
|
import { Form, Input, InputNumber, Select } from 'antd'; |
|
import { ExeSQLOptions } from '../constant'; |
|
import { IOperatorForm } from '../interface'; |
|
|
|
const ExeSQLForm = ({ onValuesChange, form }: IOperatorForm) => { |
|
const { t } = useTranslate('flow'); |
|
|
|
return ( |
|
<Form |
|
name="basic" |
|
labelCol={{ span: 7 }} |
|
wrapperCol={{ span: 17 }} |
|
autoComplete="off" |
|
form={form} |
|
onValuesChange={onValuesChange} |
|
> |
|
<Form.Item |
|
label={t('dbType')} |
|
name={'db_type'} |
|
rules={[{ required: true }]} |
|
> |
|
<Select options={ExeSQLOptions}></Select> |
|
</Form.Item> |
|
<Form.Item |
|
label={t('database')} |
|
name={'database'} |
|
rules={[{ required: true }]} |
|
> |
|
<Input></Input> |
|
</Form.Item> |
|
<Form.Item |
|
label={t('username')} |
|
name={'username'} |
|
rules={[{ required: true }]} |
|
> |
|
<Input></Input> |
|
</Form.Item> |
|
<Form.Item label={t('host')} name={'host'} rules={[{ required: true }]}> |
|
<Input></Input> |
|
</Form.Item> |
|
<Form.Item label={t('port')} name={'port'} rules={[{ required: true }]}> |
|
<InputNumber></InputNumber> |
|
</Form.Item> |
|
<Form.Item |
|
label={t('password')} |
|
name={'password'} |
|
rules={[{ required: true }]} |
|
> |
|
<Input.Password></Input.Password> |
|
</Form.Item> |
|
<Form.Item |
|
label={t('loop')} |
|
name={'loop'} |
|
tooltip={t('loopTip')} |
|
rules={[{ required: true }]} |
|
> |
|
<InputNumber></InputNumber> |
|
</Form.Item> |
|
<TopNItem initialValue={30} max={100000}></TopNItem> |
|
</Form> |
|
); |
|
}; |
|
|
|
export default ExeSQLForm; |
|
|