diff --git a/public/react/src/App.js b/public/react/src/App.js
index b40af3e0b..0db6c5b1a 100644
--- a/public/react/src/App.js
+++ b/public/react/src/App.js
@@ -222,6 +222,12 @@ const InfosIndex = Loadable({
 	loader: () => import('./modules/user/usersInfo/InfosIndex'),
 	loading: Loading,
 })
+// 题库
+const BanksIndex = Loadable({
+	loader: () => import('./modules/user/usersInfo/banks/BanksIndex'),
+	loading: Loading,
+})
+
 
 // 教学案例
 const MoopCases =  Loadable({
@@ -365,6 +371,13 @@ class App extends Component {
 									}
 							}>
 
+							 {										
+										return ()
+									}
+							}>
+
 							
diff --git a/public/react/src/modules/user/usersInfo/banks/BanksIndex.js b/public/react/src/modules/user/usersInfo/banks/BanksIndex.js
new file mode 100644
index 000000000..9f2bb6c89
--- /dev/null
+++ b/public/react/src/modules/user/usersInfo/banks/BanksIndex.js
@@ -0,0 +1,53 @@
+import React, { Component } from 'react';
+
+import {BrowserRouter as Router,Route,Switch} from 'react-router-dom';
+
+import { SnackbarHOC } from 'educoder';
+import { TPMIndexHOC } from '../../../tpm/TPMIndexHOC';
+import { CNotificationHOC } from '../../../courses/common/CNotificationHOC'
+
+import Loadable from 'react-loadable';
+import Loading from '../../../../Loading';
+
+// 毕设选题
+const GtopicBanks = Loadable({
+	loader: () => import('./GtopicBanks'),
+	loading: Loading,
+})
+const GtopicBanksAnswer = Loadable({
+	loader: () => import('./GtopicBanksAnswer'),
+	loading: Loading,
+})
+
+class BanksIndex extends Component{
+  constructor(props){
+    super(props);
+  }
+  render(){
+    return(
+      
+
+        
+
+           {
+                return ()
+              }
+          }>
+
+           {
+                return ()
+              }
+          }>
+
+          
+        
+
+      
+    )
+  }
+}
+export default CNotificationHOC() ( SnackbarHOC() ( TPMIndexHOC(BanksIndex) ));
\ No newline at end of file
diff --git a/public/react/src/modules/user/usersInfo/banks/GtopicBanks.js b/public/react/src/modules/user/usersInfo/banks/GtopicBanks.js
new file mode 100644
index 000000000..c203d668c
--- /dev/null
+++ b/public/react/src/modules/user/usersInfo/banks/GtopicBanks.js
@@ -0,0 +1,43 @@
+import React, { Component } from 'react';
+
+import { Breadcrumb } from 'antd';
+
+import "../usersInfo.css"
+import "../../../courses/css/members.css"
+import "../../../courses/css/Courses.css"
+
+import BanksMenu from './banksMenu'
+
+class GtopicBanks extends Component{
+  constructor(props){
+    super(props);
+  }
+  render(){
+    const menuArray=[
+      {content:'内容详情',to:'/banks/gtopic/1'},
+      {content:'参考答案',to:'/banks/gtopic/1/answer'}
+    ]
+    let {bankId}=this.props.match.params;
+    console.log(bankId)
+    return(
+      
+        
+          题库
+          详情
+        
+
+        
+
+
+      
+    )
+  }
+}
+export default GtopicBanks;
\ No newline at end of file
diff --git a/public/react/src/modules/user/usersInfo/banks/GtopicBanksAnswer.js b/public/react/src/modules/user/usersInfo/banks/GtopicBanksAnswer.js
new file mode 100644
index 000000000..a07bdfd02
--- /dev/null
+++ b/public/react/src/modules/user/usersInfo/banks/GtopicBanksAnswer.js
@@ -0,0 +1,40 @@
+import React, { Component } from 'react';
+
+import { Breadcrumb } from 'antd';
+
+import "../usersInfo.css"
+import "../../../courses/css/members.css"
+import "../../../courses/css/Courses.css"
+
+import BanksMenu from './banksMenu'
+
+class GtopicBanksAnswer extends Component{
+  constructor(props){
+    super(props);
+  }
+  render(){
+    const menuArray=[
+      {content:'内容详情',to:'/banks/gtopic/1'},
+      {content:'参考答案',to:'/banks/gtopic/1/answer'}
+    ]
+    return(
+      
+        
+          题库
+          详情
+        
+
+        
+
+
+      
+    )
+  }
+}
+export default GtopicBanksAnswer;
\ No newline at end of file
diff --git a/public/react/src/modules/user/usersInfo/banks/banksMenu.js b/public/react/src/modules/user/usersInfo/banks/banksMenu.js
new file mode 100644
index 000000000..15cecf53b
--- /dev/null
+++ b/public/react/src/modules/user/usersInfo/banks/banksMenu.js
@@ -0,0 +1,47 @@
+import React, { Component } from 'react';
+
+import { Menu } from 'antd'
+import { Link } from 'react-router-dom'
+import { WordsBtn } from 'educoder'
+import "../usersInfo.css"
+import "../../../courses/css/Courses.css"
+import "../../../courses/css/busyWork.css"
+
+class BanksMenu extends Component{
+  constructor(props){
+    super(props);
+  }
+  render(){
+    let { menuArray , title , is_public , tab } = this.props;
+    return(
+      
+        
+          {title}
+          {
+            is_public && 公开
+          }
+        
+
+        
+          
+            
+          
+          
+            删除
+            编辑
+            发送
+          
+        
+