|
@@ -8,17 +8,22 @@ import {
|
|
|
ProForm,
|
|
|
} from '@ant-design/pro-components'
|
|
|
import { Button, Col, message, Form } from 'antd'
|
|
|
-import { useState } from 'react'
|
|
|
+import React, { useState } from 'react'
|
|
|
import {
|
|
|
testDataSourceConnection,
|
|
|
createDataSource,
|
|
|
uploadFile,
|
|
|
} from '../services'
|
|
|
+import PropTypes from 'prop-types'
|
|
|
import Base64 from 'base-64'
|
|
|
|
|
|
const DATA_TYPE_MYSQL = 'mysql'
|
|
|
const KERBS_VALID_FALSE = false
|
|
|
|
|
|
+const ProFormItem = ProForm.Item
|
|
|
+const ProFormPassword = ProFormText.Password
|
|
|
+const ProFormGroup = ProFormRadio.Group
|
|
|
+
|
|
|
export default function DatasourceAdd({ updateDataSource }) {
|
|
|
// 数据源类型
|
|
|
const [dataType, setDataType] = useState(DATA_TYPE_MYSQL)
|
|
@@ -346,7 +351,7 @@ export default function DatasourceAdd({ updateDataSource }) {
|
|
|
)}
|
|
|
{kerbsValid && <ProFormText label="用户名" name="jdbc_username" />}
|
|
|
{!kerbsValid && (
|
|
|
- <ProFormText.Password
|
|
|
+ <ProFormPassword
|
|
|
label="密码"
|
|
|
name="jdbc_password"
|
|
|
rules={[
|
|
@@ -357,14 +362,14 @@ export default function DatasourceAdd({ updateDataSource }) {
|
|
|
]}
|
|
|
/>
|
|
|
)}
|
|
|
- {kerbsValid && <ProFormText.Password label="密码" name="jdbc_password" />}
|
|
|
+ {kerbsValid && <ProFormPassword label="密码" name="jdbc_password" />}
|
|
|
<ProFormTextArea
|
|
|
label="详情"
|
|
|
name="comments"
|
|
|
fieldProps={{ autoSize: true }}
|
|
|
/>
|
|
|
{dataType === 'mysql' && (
|
|
|
- <ProFormRadio.Group
|
|
|
+ <ProFormGroup
|
|
|
label="use SSL"
|
|
|
name="use_ssl"
|
|
|
rules={[
|
|
@@ -392,7 +397,7 @@ export default function DatasourceAdd({ updateDataSource }) {
|
|
|
/>
|
|
|
)}
|
|
|
{dataType === 'hive' && (
|
|
|
- <ProFormRadio.Group
|
|
|
+ <ProFormGroup
|
|
|
label="kerberos验证"
|
|
|
name="kerberosValid"
|
|
|
fieldProps={{
|
|
@@ -413,13 +418,13 @@ export default function DatasourceAdd({ updateDataSource }) {
|
|
|
)}
|
|
|
|
|
|
<Col span={12} style={{ paddingLeft: '22.5px', paddingRight: '22.5px' }}>
|
|
|
- <ProForm.Item label="测试连接" name="success">
|
|
|
+ <ProFormItem label="测试连接" name="success">
|
|
|
{testConnectBtn}
|
|
|
- </ProForm.Item>
|
|
|
+ </ProFormItem>
|
|
|
</Col>
|
|
|
|
|
|
{dataType === 'hive' && kerbsValid ? (
|
|
|
- <>
|
|
|
+ <div>
|
|
|
<ProFormUploadButton
|
|
|
label="keytab文件"
|
|
|
name="keytab"
|
|
@@ -453,10 +458,14 @@ export default function DatasourceAdd({ updateDataSource }) {
|
|
|
onChange: e => setPrincipal(e.target.value),
|
|
|
}}
|
|
|
/>
|
|
|
- </>
|
|
|
+ </div>
|
|
|
) : (
|
|
|
- <></>
|
|
|
+ <div></div>
|
|
|
)}
|
|
|
</ModalForm>
|
|
|
)
|
|
|
}
|
|
|
+
|
|
|
+DatasourceAdd.propTypes = {
|
|
|
+ updateDataSource: PropTypes.func,
|
|
|
+}
|