|
|
@@ -1,11 +1,39 @@
|
|
|
-import React from 'react'
|
|
|
+import React from 'react';
|
|
|
+import { BrowserRouter as Router, Routes, Route, Link } from 'react-router-dom';
|
|
|
+import { ThemeProvider } from './contexts/ThemeContext';
|
|
|
+import Header from './components/Header';
|
|
|
+import Footer from './components/Footer';
|
|
|
+import Dashboard from './pages/Dashboard';
|
|
|
+import MemberList from './pages/MemberList';
|
|
|
+import AttendanceManagement from './pages/AttendanceManagement';
|
|
|
+import Login from './pages/Login';
|
|
|
|
|
|
function App() {
|
|
|
return (
|
|
|
- <div className="min-h-screen bg-gray-100 flex items-center justify-center">
|
|
|
- <p>Start prompting (or editing) to see magic happen :)</p>
|
|
|
- </div>
|
|
|
- )
|
|
|
+ <ThemeProvider>
|
|
|
+ <Router>
|
|
|
+ <div className="flex flex-col min-h-screen bg-gray-100 dark:bg-gray-900">
|
|
|
+ <Header />
|
|
|
+ <nav className="bg-white dark:bg-gray-800 shadow-md">
|
|
|
+ <ul className="flex justify-center space-x-4 p-4">
|
|
|
+ <li><Link to="/" className="text-blue-600 dark:text-blue-400 hover:underline">首页</Link></li>
|
|
|
+ <li><Link to="/members" className="text-blue-600 dark:text-blue-400 hover:underline">会友管理</Link></li>
|
|
|
+ <li><Link to="/attendance" className="text-blue-600 dark:text-blue-400 hover:underline">考勤管理</Link></li>
|
|
|
+ </ul>
|
|
|
+ </nav>
|
|
|
+ <main className="flex-grow container mx-auto px-4 py-8">
|
|
|
+ <Routes>
|
|
|
+ <Route path="/" element={<Dashboard />} />
|
|
|
+ <Route path="/members" element={<MemberList />} />
|
|
|
+ <Route path="/attendance" element={<AttendanceManagement />} />
|
|
|
+ <Route path="/login" element={<Login />} />
|
|
|
+ </Routes>
|
|
|
+ </main>
|
|
|
+ <Footer />
|
|
|
+ </div>
|
|
|
+ </Router>
|
|
|
+ </ThemeProvider>
|
|
|
+ );
|
|
|
}
|
|
|
|
|
|
-export default App
|
|
|
+export default App;
|