Browse Source

完善权限功能

master
dengyinhuan 2 years ago
parent
commit
31274da900
  1. 12
      web/client/src/sections/organization/nav-item.js
  2. 20
      web/client/src/sections/patrolManage/nav-item.js
  3. 12
      web/client/src/sections/projectRegime/nav-item.js
  4. 4
      web/client/src/utils/func.js

12
web/client/src/sections/organization/nav-item.js

@ -2,7 +2,7 @@ import React from 'react';
import { Link } from 'react-router-dom';
import { Menu } from 'antd';
import { SettingOutlined } from '@ant-design/icons';
import { Func } from '$utils';
const SubMenu = Menu.SubMenu;
export function getNavItem(user, dispatch) {
@ -10,13 +10,13 @@ export function getNavItem(user, dispatch) {
// return null
// }
return (
<SubMenu key="organization" icon={<SettingOutlined />} title={'组织管理'}>
<Menu.Item key="userManage">
Func.isAuthorized('ORG_MANAGE') && <SubMenu key="organization" icon={<SettingOutlined />} title={'组织管理'}>
{Func.isAuthorized('USER_CONFIG') && <Menu.Item key="userManage">
<Link to="/organization/user">部门成员</Link>
</Menu.Item>
<Menu.Item key="authority">
</Menu.Item>}
{Func.isAuthorized('AUTH_CONFIG') && <Menu.Item key="authority">
<Link to="/organization/authority">权限配置</Link>
</Menu.Item>
</Menu.Item>}
</SubMenu>
);
}

20
web/client/src/sections/patrolManage/nav-item.js

@ -2,7 +2,7 @@ import React from 'react';
import { Link } from 'react-router-dom';
import { Menu } from 'antd';
import { SettingOutlined } from '@ant-design/icons';
import { Func } from '$utils';
const SubMenu = Menu.SubMenu;
export function getNavItem (user, dispatch) {
@ -10,19 +10,19 @@ export function getNavItem (user, dispatch) {
// return null
// }
return (
<SubMenu key="patrolManage" icon={<SettingOutlined />} title={'巡检管理'}>
<Menu.Item key="patrolPlan">
Func.isAuthorized('PATROL_MANAGE') && <SubMenu key="patrolManage" icon={<SettingOutlined />} title={'巡检管理'}>
{Func.isAuthorized('PATROL_PLAN_CONFIG') && <Menu.Item key="patrolPlan">
<Link to="/patrolManage/patrolPlan">巡检计划制定</Link>
</Menu.Item>
<Menu.Item key="patrolRecord">
</Menu.Item>}
{Func.isAuthorized('PATROL_RECORD_VIEW') && <Menu.Item key="patrolRecord">
<Link to="/patrolManage/patrolRecord">巡检记录</Link>
</Menu.Item>
<Menu.Item key="checkItems">
</Menu.Item>}
{Func.isAuthorized('CHECKITEMSET') && <Menu.Item key="checkItems">
<Link to="/patrolManage/checkItems">检查项设定</Link>
</Menu.Item>
<Menu.Item key="patrolTemplate">
</Menu.Item>}
{Func.isAuthorized('CHECKMOULD') && <Menu.Item key="patrolTemplate">
<Link to="/patrolManage/patrolTemplate">巡检模板</Link>
</Menu.Item>
</Menu.Item>}
</SubMenu>
);
}

12
web/client/src/sections/projectRegime/nav-item.js

@ -2,17 +2,17 @@ import React from 'react';
import { Link } from 'react-router-dom';
import { Menu } from 'antd';
import { SettingOutlined } from '@ant-design/icons';
import { Func } from '$utils';
const SubMenu = Menu.SubMenu;
export function getNavItem (user, dispatch) {
return <SubMenu key="projectRegime" icon={<SettingOutlined />} title={'结构物管理'}>
<Menu.Item key="information">
return Func.isAuthorized('STRUCTURE_MANAGE') && <SubMenu key="projectRegime" icon={<SettingOutlined />} title={'结构物管理'}>
{Func.isAuthorized('STRU_INFO_CONFIG') &&<Menu.Item key="information">
<Link to="/projectRegime/information">结构物基础信息管理</Link>
</Menu.Item>
<Menu.Item key="qrCode">
</Menu.Item>}
{Func.isAuthorized('QR_CODE_CONFIG') &&<Menu.Item key="qrCode">
<Link to="/projectRegime/qrCode">二维码管理</Link>
</Menu.Item>
</Menu.Item>}
</SubMenu>
}

4
web/client/src/utils/func.js

@ -3,8 +3,8 @@
export default class Func {
static isAuthorized(authcode) {
if (JSON.parse(sessionStorage.getItem('user'))) {
const { resources } = JSON.parse(sessionStorage.getItem('user'));
return resources.includes(authcode);
const { userResources } = JSON.parse(sessionStorage.getItem('user'));
return userResources.includes(authcode);
}else{
return false;
}

Loading…
Cancel
Save