|
@@ -21,8 +21,8 @@ export default function DatasourceView() {
|
|
|
const navigate = useNavigate()
|
|
|
const { state } = useLocation()
|
|
|
// 数据源管理ref
|
|
|
- const sourceRef = React.createRef()
|
|
|
- const logRef = React.createRef()
|
|
|
+ const sourceRef = React.useRef()
|
|
|
+ const logRef = React.useRef()
|
|
|
// 当前所处页面
|
|
|
const [currentKey, setCurrentKey] = useState('1')
|
|
|
const [currentLog, setCurrentLog] = useState(null)
|
|
@@ -51,17 +51,17 @@ export default function DatasourceView() {
|
|
|
}
|
|
|
}
|
|
|
}, [state])
|
|
|
-
|
|
|
// 更新数据源列表
|
|
|
const updateDataSource = () => {
|
|
|
- sourceRef.current.updateSourceList()
|
|
|
+ sourceRef.current?.updateSourceList()
|
|
|
}
|
|
|
|
|
|
- const updateAilabList = () => {
|
|
|
- sourceRef.current.updateAilabList()
|
|
|
+ const updateAilab = () => {
|
|
|
+ sourceRef.current?.updateAilabList()
|
|
|
}
|
|
|
- const updateLakeList = () => {
|
|
|
- sourceRef.current.updateLakeList()
|
|
|
+
|
|
|
+ const updateLake = () => {
|
|
|
+ sourceRef.current?.updateLakeList()
|
|
|
}
|
|
|
const updateLogs = () => {
|
|
|
logRef.current?.updateLogList()
|
|
@@ -91,7 +91,7 @@ export default function DatasourceView() {
|
|
|
message.success('导入成功')
|
|
|
datatableForm.resetFields()
|
|
|
setImportData(false)
|
|
|
- updateLakeList()
|
|
|
+ updateLake()
|
|
|
} else {
|
|
|
message.error(data.msg)
|
|
|
}
|
|
@@ -166,12 +166,13 @@ export default function DatasourceView() {
|
|
|
message.success('创建成功')
|
|
|
ailabtableForm.resetFields()
|
|
|
setIsCreateTable(false)
|
|
|
- updateAilabList()
|
|
|
+ updateAilab()
|
|
|
} else {
|
|
|
message.error(data.msg)
|
|
|
}
|
|
|
})
|
|
|
.catch(err => {
|
|
|
+ console.log(err)
|
|
|
message.error('请检查表单数据是否完整')
|
|
|
})
|
|
|
}
|
|
@@ -323,25 +324,29 @@ export default function DatasourceView() {
|
|
|
<Select
|
|
|
value={currentDataType}
|
|
|
onChange={changeDataType}
|
|
|
- options={[
|
|
|
- { value: 'datasource', label: '自添加数据源' },
|
|
|
- { value: 'ailab', label: 'AIlab' },
|
|
|
- { value: 'datalake', label: '数据湖' },
|
|
|
- ]}
|
|
|
+ options={
|
|
|
+ ['1', '2', '3'].includes(sessionStorage.getItem('role'))
|
|
|
+ ? [
|
|
|
+ { value: 'datasource', label: '自添加数据源' },
|
|
|
+ { value: 'ailab', label: 'AIlab' },
|
|
|
+ { value: 'datalake', label: '数据湖' },
|
|
|
+ ]
|
|
|
+ : [{ value: 'ailab', label: 'AIlab' }]
|
|
|
+ }
|
|
|
/>
|
|
|
- {currentDataType === 'datasource' && (
|
|
|
- <DatasourceAdd updateDataSource={updateDataSource} />
|
|
|
- )}
|
|
|
- {currentDataType === 'ailab' &&
|
|
|
+ {currentDataType === 'datasource' &&
|
|
|
sessionStorage.getItem('role') === '1' && (
|
|
|
- <Button
|
|
|
- type="primary"
|
|
|
- onClick={() => {
|
|
|
- setIsCreateTable(true)
|
|
|
- }}>
|
|
|
- 创建数据表
|
|
|
- </Button>
|
|
|
+ <DatasourceAdd updateDataSource={updateDataSource} />
|
|
|
)}
|
|
|
+ {currentDataType === 'ailab' && (
|
|
|
+ <Button
|
|
|
+ type="primary"
|
|
|
+ onClick={() => {
|
|
|
+ setIsCreateTable(true)
|
|
|
+ }}>
|
|
|
+ 创建数据表
|
|
|
+ </Button>
|
|
|
+ )}
|
|
|
{currentDataType === 'datalake' &&
|
|
|
sessionStorage.getItem('role') === '1' && (
|
|
|
<Button
|
|
@@ -380,7 +385,7 @@ export default function DatasourceView() {
|
|
|
setCurrentLog(null)
|
|
|
}}>
|
|
|
<TabPane tab="数据源管理" key="1">
|
|
|
- <DataSourceManage onRef={sourceRef} dataType={currentDataType} />
|
|
|
+ <DataSourceManage ref={sourceRef} dataType={currentDataType} />
|
|
|
</TabPane>
|
|
|
<TabPane tab="同步配置" key="2">
|
|
|
<DatasourceSyncView
|