From 2e80539e531aea46e8e57fa5d1b8debca9f3bfbe Mon Sep 17 00:00:00 2001
From: Mr Ke <kelq@hugeinfo.com.cn>
Date: Fri, 04 Sep 2020 17:13:36 +0800
Subject: [PATCH] 修改避免无权限访问用户管理的菜单权限被滥用的问题
---
src/routeDom/routeDom.jsx | 52 +++++++++++++++++++++++++++++++++++-----------------
1 files changed, 35 insertions(+), 17 deletions(-)
diff --git a/src/routeDom/routeDom.jsx b/src/routeDom/routeDom.jsx
index 7134c1e..cbff7a1 100644
--- a/src/routeDom/routeDom.jsx
+++ b/src/routeDom/routeDom.jsx
@@ -5,7 +5,7 @@
*/
/** Happy Coding */
-import React, { ReactNode, ReactEventHandler, Component } from 'react';
+import React, { ReactNode, ReactEventHandler, Component, useEffect, useState } from 'react';
import { Switch, Route, Redirect } from 'react-router-dom';
// 引进页面(pages)
@@ -41,9 +41,18 @@
import RoleDetail from '../module/huge-base/RoleDetail'; //权限管理--角色管理详情
import AuthorityManage from '../module/huge-base/AuthorityManage';
-export default function OaRouteDom({ }) {
+export default function RouteDom({ }) {
+ const [renderUser, setRenderUser] = useState(false);
+ useEffect(() => {
+ let menu = window.localStorage.getItem('menu') ? JSON.parse(window.localStorage.getItem('menu')) : [];//获取权限菜单
+ let administration = menu.find(({ moduleSymbol }) => moduleSymbol == 'administration');
+ if (administration) { setRenderUser(true) }
+ }, [])
+
return (
<Switch>
+
+
<Route path="/document/create/:id?" component={DocumentEdit} />
<Route path="/document/detail/:id" component={DocumentDetail} />
<Route path="/index/workbench/announcement" component={Announcement} />
@@ -58,21 +67,30 @@
<Route path="/merits/meritsDispose" component={MeritsDispose} />
<Route path="/merits/meritsExamine" component={MeritsDetail} />
- <Route path="/baseManage/user/Detail/:id/:flag" component={UserDetail} />
- <Route path="/baseManage/user" component={UserManage} />
- <Route path="/baseManage/group/Detail/:id/:flag" component={GroupDetail} />
- <Route path="/baseManage/group" component={GroupManage} />
- <Route path="/organizationMgt/unit" component={UnitManage} />
- <Route path="/organizationMgt/department" component={DepartmentManage} />
- <Route path="/organizationMgt/job" component={JobManage} />
- <Route path="/resourceMgt/appService/Detail/:id/:flag" component={AppServiceDetail} />
- <Route path="/resourceMgt/appService" component={AppServiceManage} />
- <Route path="/resourceMgt/modules" component={ModulesManage} />
- <Route path="/resourceMgt/function" component={FunctionManage} />
- <Route path="/organizationMgt/role/Detail/:id/:flag" component={RoleDetail} />
- <Route path="/authorityMgt/role" component={RoleManage} />
- <Route path="/authorityMgt/authority" component={AuthorityManage} />
- <Redirect from='/' to="/baseManage/user" component={UserManage} />
+ {
+ renderUser &&
+ <React.Fragment>
+ <Route path="/baseManage/user/Detail/:id/:flag" component={UserDetail} />
+ <Route path="/baseManage/user" component={UserManage} />
+ <Route path="/baseManage/group/Detail/:id/:flag" component={GroupDetail} />
+ <Route path="/baseManage/group" component={GroupManage} />
+ <Route path="/organizationMgt/unit" component={UnitManage} />
+ <Route path="/organizationMgt/department" component={DepartmentManage} />
+ <Route path="/organizationMgt/job" component={JobManage} />
+ <Route path="/resourceMgt/appService/Detail/:id/:flag" component={AppServiceDetail} />
+ <Route path="/resourceMgt/appService" component={AppServiceManage} />
+ <Route path="/resourceMgt/modules" component={ModulesManage} />
+ <Route path="/resourceMgt/function" component={FunctionManage} />
+ <Route path="/organizationMgt/role/Detail/:id/:flag" component={RoleDetail} />
+ <Route path="/authorityMgt/role" component={RoleManage} />
+ <Route path="/authorityMgt/authority" component={AuthorityManage} />
+ <Redirect from='/' to="/baseManage/user" component={UserManage} />
+ </React.Fragment>
+ }
+
+ <div>
+
+ </div>
<Route path="/" component={Workbench} />
<Redirect from="/" to="/index" component={Workbench} />
--
Gitblit v1.8.0