2026-08-23 22:34:45 +08:00
|
|
|
|
import { BrowserRouter, Routes, Route, Navigate } from 'react-router-dom';
|
|
|
|
|
|
import MediaScreen from './pages/MediaScreen';
|
|
|
|
|
|
import DataScreen from './pages/DataScreen';
|
|
|
|
|
|
import DigitalTwin from './pages/DigitalTwin';
|
|
|
|
|
|
import AiAssistant from './pages/AiAssistant';
|
|
|
|
|
|
import CompanyWall from './pages/CompanyWall';
|
2026-08-25 18:42:32 +08:00
|
|
|
|
import TaskDisplay from './pages/TaskDisplay';
|
2026-08-23 22:34:45 +08:00
|
|
|
|
import ScreenLayout from './components/ScreenLayout';
|
|
|
|
|
|
import './styles/tokens.css';
|
|
|
|
|
|
|
|
|
|
|
|
export default function App() {
|
|
|
|
|
|
return (
|
|
|
|
|
|
<BrowserRouter>
|
|
|
|
|
|
<Routes>
|
|
|
|
|
|
{/* 大屏页面:统一页眉布局注入 */}
|
|
|
|
|
|
<Route element={<ScreenLayout />}>
|
|
|
|
|
|
<Route path="/" element={<DataScreen />} />
|
|
|
|
|
|
<Route path="/twin" element={<DigitalTwin />} />
|
|
|
|
|
|
<Route path="/ai" element={<AiAssistant />} />
|
|
|
|
|
|
<Route path="/screen" element={<MediaScreen />} />
|
2026-08-25 18:42:32 +08:00
|
|
|
|
{/* 任务展示页(系统任务中心:轮播卡 + 二维码扫码接单) */}
|
|
|
|
|
|
<Route path="/tasks" element={<TaskDisplay />} />
|
2026-08-23 22:34:45 +08:00
|
|
|
|
{/* 入驻企业展示墙 */}
|
|
|
|
|
|
<Route path="/wall" element={<CompanyWall />} />
|
|
|
|
|
|
</Route>
|
|
|
|
|
|
{/* 管理后台已迁移至 FastAPI + Jinja(GET /admin),不由 React 路由接管 */}
|
|
|
|
|
|
<Route path="*" element={<Navigate to="/" replace />} />
|
|
|
|
|
|
</Routes>
|
|
|
|
|
|
</BrowserRouter>
|
|
|
|
|
|
);
|
|
|
|
|
|
}
|