diff --git a/src/api/flowable/hazardConfig.js b/src/api/flowable/hazardConfig.js index b812216..1453bd8 100644 --- a/src/api/flowable/hazardConfig.js +++ b/src/api/flowable/hazardConfig.js @@ -44,17 +44,3 @@ export function listMyFactoryHazardFlowConfigs() { method: 'get' }) } - -export function listFactoryDepartments() { - return request({ - url: '/system/dept/factoryList', - method: 'get' - }) -} - -export function getMyFactoryDepartment() { - return request({ - url: '/system/dept/myFactory', - method: 'get' - }) -} diff --git a/src/api/points/rule.js b/src/api/points/rule.js index ad59b17..4d54ecf 100644 --- a/src/api/points/rule.js +++ b/src/api/points/rule.js @@ -4,14 +4,6 @@ export function listPointsRules(params) { return request({ url: '/business/points/rule/list', method: 'get', params }) } -export function listFactoryDepartments() { - return request({ url: '/system/dept/factoryList', method: 'get' }) -} - -export function getMyFactoryDepartment() { - return request({ url: '/system/dept/myFactory', method: 'get' }) -} - export function togglePointsRule(id, enabled) { return request({ url: '/business/points/rule/toggleEnabled', diff --git a/src/api/system/dept.js b/src/api/system/dept.js index 970ecde..5557ce0 100644 --- a/src/api/system/dept.js +++ b/src/api/system/dept.js @@ -17,6 +17,22 @@ export function treeselect() { }) } +// 查询所有厂区级部门列表(超级管理员选择厂区用) +export function listFactoryDepartments() { + return request({ + url: '/system/dept/factoryList', + method: 'get' + }) +} + +// 查询当前用户所属厂区部门 +export function getMyFactoryDepartment() { + return request({ + url: '/system/dept/myFactory', + method: 'get' + }) +} + // 查询部门列表(排除节点) export function listDeptExcludeChild(deptId) { return request({ diff --git a/src/store/modules/permission.js b/src/store/modules/permission.js index b3c216a..60dd523 100644 --- a/src/store/modules/permission.js +++ b/src/store/modules/permission.js @@ -36,7 +36,7 @@ const permission = { getRouters().then(res => { const sdata = JSON.parse(JSON.stringify(res.data)) const rdata = JSON.parse(JSON.stringify(res.data)) - const sidebarRoutes = filterAsyncRouter(sdata) + const sidebarRoutes = filterAsyncRouter(filterHiddenSidebarRoutes(sdata)) const rewriteRoutes = filterAsyncRouter(rdata, false, true) const asyncRoutes = filterDynamicRoutes(dynamicRoutes); rewriteRoutes.push({ path: '*', redirect: '/404', hidden: true }) @@ -52,6 +52,24 @@ const permission = { } } +// 仅通过台账/工作台等入口携带参数进入、不在左侧菜单展示的页面(组件路径) +const HIDDEN_SIDEBAR_COMPONENTS = ['hazard/audit/index'] + +// 从侧栏菜单数据中剔除指定页面(保留路由注册,入口跳转不受影响) +function filterHiddenSidebarRoutes(routes) { + return routes.filter(route => { + const component = String(route.component || '').replace(/^\/+/, '').replace(/\.vue$/, '') + const title = route.meta && route.meta.title + if (HIDDEN_SIDEBAR_COMPONENTS.indexOf(component) !== -1 || title === '隐患审核') { + return false + } + if (route.children && route.children.length) { + route.children = filterHiddenSidebarRoutes(route.children) + } + return true + }) +} + // 遍历后台传来的路由字符串,转换为组件对象 function filterAsyncRouter(asyncRouterMap, lastRouter = false, type = false) { return asyncRouterMap.filter(route => { diff --git a/src/views/flowable/hazardConfig/index.vue b/src/views/flowable/hazardConfig/index.vue index 4e165ed..7c5a9b1 100644 --- a/src/views/flowable/hazardConfig/index.vue +++ b/src/views/flowable/hazardConfig/index.vue @@ -132,6 +132,14 @@ {{ scope.row.deptName || scope.row.deptId || '-' }} + + +