2022-09-26 11:57:35 +00:00
|
|
|
|
import React, {Component, useEffect} from 'react';
|
2022-04-20 13:31:46 +00:00
|
|
|
|
import './App.css';
|
2022-09-26 11:57:35 +00:00
|
|
|
|
import {NavBar,} from "antd-mobile";
|
2022-09-25 15:58:04 +00:00
|
|
|
|
import {checkToken} from "./utils/api";
|
2022-09-26 11:57:35 +00:00
|
|
|
|
import Login from './compents/pages/Login';
|
|
|
|
|
import {Route, Routes, useLocation, useNavigate} from 'react-router-dom';
|
|
|
|
|
import Home from './compents/Home';
|
|
|
|
|
import Log from "./compents/pages/Log";
|
|
|
|
|
import Config from "./compents/pages/Config";
|
|
|
|
|
import Help from "./compents/pages/Help";
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// class Test extends React.Component<any, any> {
|
|
|
|
|
// elements: any = []
|
|
|
|
|
// items = [
|
|
|
|
|
// {
|
|
|
|
|
// "key": "login",
|
|
|
|
|
// "text": "添加用户"
|
|
|
|
|
// },
|
|
|
|
|
// {
|
|
|
|
|
// "key": "user_list",
|
|
|
|
|
// "text": "用户管理"
|
|
|
|
|
// }
|
|
|
|
|
// ]
|
|
|
|
|
//
|
|
|
|
|
// constructor(props: any) {
|
|
|
|
|
// super(props);
|
|
|
|
|
// this.state = {
|
|
|
|
|
// popup_visible: false,
|
|
|
|
|
// index: "login",
|
|
|
|
|
// is_login: false,
|
|
|
|
|
// // 用户等级,1是管理员,2是普通用户
|
|
|
|
|
// level: 2
|
|
|
|
|
// };
|
|
|
|
|
// }
|
|
|
|
|
//
|
|
|
|
|
// set_level = (level: number) => {
|
|
|
|
|
// this.setState({
|
|
|
|
|
// level: level
|
|
|
|
|
// })
|
|
|
|
|
//
|
|
|
|
|
// this.items.push(
|
|
|
|
|
// {
|
|
|
|
|
// "key": "config",
|
|
|
|
|
// "text": "配置管理"
|
|
|
|
|
// }
|
|
|
|
|
// )
|
|
|
|
|
// this.items.push(
|
|
|
|
|
// {
|
|
|
|
|
// "key": "log",
|
|
|
|
|
// "text": "日志查看"
|
|
|
|
|
// }
|
|
|
|
|
// )
|
|
|
|
|
// this.items.push(
|
|
|
|
|
// {
|
|
|
|
|
// "key": "other",
|
|
|
|
|
// "text": "其他功能"
|
|
|
|
|
// }
|
|
|
|
|
// )
|
|
|
|
|
//
|
|
|
|
|
//
|
|
|
|
|
// this.items.map((value, index, array) => {
|
|
|
|
|
// if (value.key === "config" || value.key === "log") {
|
|
|
|
|
// this.elements.push(
|
|
|
|
|
// <ListItem disabled={this.state.level === 2} onClick={() => {
|
|
|
|
|
// this.setState({"index": value.key})
|
|
|
|
|
// }}>{value.text}</ListItem>
|
|
|
|
|
// );
|
|
|
|
|
// } else {
|
|
|
|
|
// this.elements.push(
|
|
|
|
|
// <ListItem onClick={() => {
|
|
|
|
|
// this.setState({"index": value.key})
|
|
|
|
|
// }}>{value.text}</ListItem>
|
|
|
|
|
// );
|
|
|
|
|
// }
|
|
|
|
|
//
|
|
|
|
|
// return true;
|
|
|
|
|
// })
|
|
|
|
|
// }
|
|
|
|
|
//
|
|
|
|
|
// set_login = () => {
|
|
|
|
|
// this.setState({
|
|
|
|
|
// is_login: true
|
|
|
|
|
// })
|
|
|
|
|
// this.check_token()
|
|
|
|
|
// window.location.reload()
|
|
|
|
|
// }
|
|
|
|
|
//
|
|
|
|
|
// check_token = () => {
|
|
|
|
|
// checkToken().then((t) => {
|
|
|
|
|
// console.log(t)
|
|
|
|
|
// if (!t) {
|
|
|
|
|
// console.log("未登录")
|
|
|
|
|
// } else {
|
|
|
|
|
// if (t.data === 1) {
|
|
|
|
|
// console.log("管理员登录")
|
|
|
|
|
// this.set_level(1)
|
|
|
|
|
// } else {
|
|
|
|
|
// console.log("不是管理员登录")
|
|
|
|
|
// this.set_level(2)
|
|
|
|
|
// }
|
|
|
|
|
// this.setState({
|
|
|
|
|
// is_login: true
|
|
|
|
|
// })
|
|
|
|
|
// }
|
|
|
|
|
// })
|
|
|
|
|
// }
|
|
|
|
|
//
|
|
|
|
|
// componentDidMount() {
|
|
|
|
|
// this.check_token()
|
|
|
|
|
//
|
|
|
|
|
//
|
|
|
|
|
// }
|
|
|
|
|
//
|
|
|
|
|
// render() {
|
|
|
|
|
//
|
|
|
|
|
// let home = (
|
|
|
|
|
// <>
|
|
|
|
|
// <NavBar style={{background: "#c0a8c0", margin: 10}} backArrow={false}
|
|
|
|
|
// left={<UnorderedListOutline fontSize={36} onClick={this.back}/>}>
|
|
|
|
|
// {"study_xxqg"}
|
|
|
|
|
// </NavBar>
|
|
|
|
|
// <Router data={this.state.index} level={this.state.level} set_level={this.set_level}/>
|
|
|
|
|
// <Popup
|
|
|
|
|
// bodyStyle={{width: '50vw'}}
|
|
|
|
|
// visible={this.state.popup_visible}
|
|
|
|
|
// position={"left"}
|
|
|
|
|
// onMaskClick={(() => {
|
|
|
|
|
// this.setState({popup_visible: false})
|
|
|
|
|
// })}>
|
|
|
|
|
// <h1 style={{textAlign: "center"}}>XXQG</h1>
|
|
|
|
|
// <List>
|
|
|
|
|
// {this.elements}
|
|
|
|
|
// <ListItem onClick={() => {
|
|
|
|
|
// window.localStorage.removeItem("xxqg_token")
|
|
|
|
|
// this.setState({"index": "help"})
|
|
|
|
|
// }}>帮助</ListItem>
|
|
|
|
|
// <ListItem onClick={() => {
|
|
|
|
|
// window.localStorage.removeItem("xxqg_token")
|
|
|
|
|
// this.setState({
|
|
|
|
|
// is_login: false
|
|
|
|
|
// })
|
|
|
|
|
// }}>退出登录</ListItem>
|
|
|
|
|
// </List>
|
|
|
|
|
// </Popup>
|
|
|
|
|
// </>
|
|
|
|
|
// )
|
|
|
|
|
// if (this.state.is_login) {
|
|
|
|
|
// return home
|
|
|
|
|
// } else {
|
|
|
|
|
// return <Login parent={this}/>
|
|
|
|
|
// }
|
|
|
|
|
// }
|
|
|
|
|
//
|
|
|
|
|
//
|
|
|
|
|
// back = () => {
|
|
|
|
|
// this.setState({
|
|
|
|
|
// popup_visible: true,
|
|
|
|
|
// })
|
|
|
|
|
//
|
|
|
|
|
// }
|
|
|
|
|
// }
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
function App(props: any, states: any) {
|
|
|
|
|
|
|
|
|
|
let a = 2;
|
|
|
|
|
let navigate = useNavigate();
|
|
|
|
|
let location = useLocation();
|
|
|
|
|
|
|
|
|
|
useEffect(() => {
|
2022-09-25 15:58:04 +00:00
|
|
|
|
checkToken().then((t) => {
|
|
|
|
|
console.log(t)
|
|
|
|
|
if (!t) {
|
|
|
|
|
console.log("未登录")
|
2022-09-26 11:57:35 +00:00
|
|
|
|
navigate("/login")
|
2022-09-25 15:58:04 +00:00
|
|
|
|
} else {
|
|
|
|
|
if (t.data === 1) {
|
|
|
|
|
console.log("管理员登录")
|
2022-09-26 11:57:35 +00:00
|
|
|
|
sessionStorage.setItem("level", "1")
|
2022-09-25 15:58:04 +00:00
|
|
|
|
} else {
|
|
|
|
|
console.log("不是管理员登录")
|
2022-09-26 11:57:35 +00:00
|
|
|
|
sessionStorage.setItem("level", "2")
|
2022-09-25 15:58:04 +00:00
|
|
|
|
}
|
2022-09-26 11:57:35 +00:00
|
|
|
|
navigate("/home/user_manager")
|
2022-09-25 15:58:04 +00:00
|
|
|
|
}
|
|
|
|
|
})
|
2022-09-26 11:57:35 +00:00
|
|
|
|
}, [a])
|
2022-04-25 10:39:54 +00:00
|
|
|
|
|
2022-04-20 13:31:46 +00:00
|
|
|
|
|
2022-09-26 11:57:35 +00:00
|
|
|
|
return <>
|
|
|
|
|
<Routes>
|
2022-04-20 13:31:46 +00:00
|
|
|
|
|
2022-04-25 10:39:54 +00:00
|
|
|
|
|
2022-09-26 11:57:35 +00:00
|
|
|
|
<Route path={"/login"} element={<Login navigate={navigate} location={location}/>}>
|
|
|
|
|
</Route>
|
|
|
|
|
|
|
|
|
|
<Route path={"/home/*"} element={<Home navigate={navigate} location={location}/>}>
|
|
|
|
|
</Route>
|
|
|
|
|
<Route path={"*"} element={<OtherPages navigate={navigate} location={location}/>}>
|
2022-09-25 15:58:04 +00:00
|
|
|
|
|
2022-09-26 11:57:35 +00:00
|
|
|
|
</Route>
|
2022-09-25 15:58:04 +00:00
|
|
|
|
|
2022-09-26 11:57:35 +00:00
|
|
|
|
</Routes>
|
|
|
|
|
|
|
|
|
|
</>
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
class OtherPages extends Component<any, any> {
|
2022-09-25 15:58:04 +00:00
|
|
|
|
render() {
|
2022-09-26 11:57:35 +00:00
|
|
|
|
return <>
|
|
|
|
|
<NavBar back='返回' style={{color: "blue", backgroundColor: "#bad7ba"}} onBack={() => {
|
|
|
|
|
window.history.back()
|
|
|
|
|
}}><h3>StudyXXQG</h3></NavBar>
|
|
|
|
|
<Routes>
|
|
|
|
|
<Route path={"/log"} element={<Log navigate={this.props.navigate} location={this.props.location}/>}>
|
2022-09-25 15:58:04 +00:00
|
|
|
|
|
2022-09-26 11:57:35 +00:00
|
|
|
|
</Route>
|
2022-04-25 10:39:54 +00:00
|
|
|
|
|
2022-09-26 11:57:35 +00:00
|
|
|
|
<Route path={"/config"}
|
|
|
|
|
element={<Config navigate={this.props.navigate} location={this.props.location}/>}/>
|
|
|
|
|
|
|
|
|
|
<Route path={"/help"} element={<Help navigate={this.props.navigate} location={this.props.location}/>}/>
|
2022-04-20 13:31:46 +00:00
|
|
|
|
|
|
|
|
|
|
2022-09-26 11:57:35 +00:00
|
|
|
|
</Routes>
|
|
|
|
|
</>;
|
2022-04-20 13:31:46 +00:00
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
export default App;
|