@@ -5,6 +5,9 @@ import { IConnectionDetails, IDatabase } from '@/typings';
55import ConnectionEdit from '@/components/ConnectionEdit' ;
66import { databaseTypeList } from '@/constants' ;
77import Iconfont from '@/components/Iconfont' ;
8+ import i18n from '@/i18n' ;
9+ import FileUploadModal from '@/components/ImportConnection' ;
10+ import { getConnectionList } from '@/pages/main/store/connection' ;
811
912// IConnectionDetails 全部信息代表修改
1013// null 展示因增列表
@@ -23,6 +26,8 @@ export default memo<IProps>((props) => {
2326 const [ connectionDetail , setConnectionDetail ] = useState < IEditConnectionDetail | null | undefined > (
2427 externalConnectionDetail ,
2528 ) ;
29+ const [ isFileUploadModalOpen , setIsFileUploadModalOpen ] = useState ( false ) ;
30+
2631
2732 useEffect ( ( ) => {
2833 setConnectionDetail ( externalConnectionDetail ) ;
@@ -39,49 +44,74 @@ export default memo<IProps>((props) => {
3944 // }
4045
4146 return (
42- < div className = { classnames ( styles . box , className ) } >
43- { connectionDetail && (
44- < div
45- className = { classnames ( styles . createConnections , {
46- [ styles . showCreateConnections ] : connectionDetail ,
47- } ) }
48- >
49- < ConnectionEdit
50- closeCreateConnection = { ( ) => {
51- setConnectionDetail ( null ) ;
52- } }
53- connectionData = { connectionDetail as any }
54- submit = { onSubmit }
55- />
56- </ div >
57- ) }
58- { connectionDetail === null && (
59- < div className = { styles . dataBaseListBox } >
60- < div className = { styles . dataBaseList } >
61- { databaseTypeList . map ( ( t ) => {
62- return (
63- < div key = { t . code } className = { styles . databaseItem } onClick = { handleCreateConnections . bind ( null , t ) } >
64- < div className = { styles . databaseItemMain } >
65- < div className = { styles . databaseItemLeft } >
66- < div className = { styles . logoBox } >
67- < Iconfont code = { t . icon } />
47+ < >
48+ < div className = { classnames ( styles . box , className ) } >
49+ { connectionDetail && (
50+ < div
51+ className = { classnames ( styles . createConnections , {
52+ [ styles . showCreateConnections ] : connectionDetail ,
53+ } ) }
54+ >
55+ < ConnectionEdit
56+ closeCreateConnection = { ( ) => {
57+ setConnectionDetail ( null ) ;
58+ } }
59+ connectionData = { connectionDetail as any }
60+ submit = { onSubmit }
61+ />
62+ </ div >
63+ ) }
64+ { connectionDetail === null && (
65+ < div className = { styles . dataBaseListBox } >
66+ < div className = { styles . dataBaseList } >
67+ { databaseTypeList . map ( ( t ) => {
68+ return (
69+ < div key = { t . code } className = { styles . databaseItem } onClick = { handleCreateConnections . bind ( null , t ) } >
70+ < div className = { styles . databaseItemMain } >
71+ < div className = { styles . databaseItemLeft } >
72+ < div className = { styles . logoBox } >
73+ < Iconfont code = { t . icon } />
74+ </ div >
75+ { t . name }
76+ </ div >
77+ < div className = { styles . databaseItemRight } >
78+ < Iconfont code = "" />
6879 </ div >
69- { t . name }
7080 </ div >
71- < div className = { styles . databaseItemRight } >
72- < Iconfont code = "" />
81+ </ div >
82+ ) ;
83+ } ) }
84+ < div className = { styles . databaseItem } onClick = { ( ) => { setIsFileUploadModalOpen ( true ) } } >
85+ < div className = { styles . databaseItemMain } >
86+ < div className = { styles . databaseItemLeft } >
87+ < div className = { styles . logoBox } >
88+ < Iconfont code = "" />
7389 </ div >
90+ { i18n ( 'connection.title.importConnection' ) }
91+ </ div >
92+ < div className = { styles . databaseItemRight } >
93+ < Iconfont code = "" />
7494 </ div >
7595 </ div >
76- ) ;
77- } ) }
78- { Array . from ( { length : 20 } ) . map ( ( t , index ) => {
79- return < div key = { index } className = { styles . databaseItemSpacer } /> ;
80- } ) }
96+ </ div >
97+ { Array . from ( { length : 20 } ) . map ( ( t , index ) => {
98+ return < div key = { index } className = { styles . databaseItemSpacer } /> ;
99+ } ) }
100+ </ div >
81101 </ div >
82- </ div >
83- ) }
84- </ div >
102+ ) }
103+ </ div >
104+ < FileUploadModal
105+ open = { isFileUploadModalOpen }
106+ onClose = { ( ) => {
107+ setIsFileUploadModalOpen ( false ) ;
108+ } }
109+ onConfirm = { ( ) => {
110+ setIsFileUploadModalOpen ( false ) ;
111+ getConnectionList ( )
112+ } }
113+ />
114+ </ >
85115 ) ;
86116} ) ;
87117
0 commit comments