更改校端权限
This commit is contained in:
+28
-14
@@ -1,4 +1,5 @@
|
||||
import type { RouteRecordRaw } from "vue-router";
|
||||
import { UserRoleEnum } from "@/types";
|
||||
import GroupUser from "@/views/group-user/index.vue";
|
||||
import AppList from "@/views/app/AppList.vue";
|
||||
import AppCategory from "@/views/app/AppCategory.vue";
|
||||
@@ -12,41 +13,54 @@ import OperationLogList from "@/views/oplog/OperationLogList.vue";
|
||||
import OapiLogList from "@/views/oapilog/OapiLogList.vue";
|
||||
import PushLog from "@/views/push/PushLog.vue";
|
||||
import PushTest from "@/views/push/PushTest.vue";
|
||||
import NoAuth from "@/views/NoAuth.vue";
|
||||
|
||||
// 管理端四级访问控制:meta.roles 为空/未声明 = 登录即可访问
|
||||
const ALL_ADMIN = [UserRoleEnum.SuperAdmin, UserRoleEnum.Bureau, UserRoleEnum.School];
|
||||
|
||||
const routes: RouteRecordRaw[] = [
|
||||
{
|
||||
path: "/",
|
||||
redirect: "/group-user",
|
||||
},
|
||||
// ===== 无权限页(路由守卫重定向目标)=====
|
||||
{
|
||||
path: "/no-auth",
|
||||
name: "NoAuth",
|
||||
component: NoAuth,
|
||||
meta: { title: "暂无权限" },
|
||||
},
|
||||
// ===== 开发组(组/用户管理,多页嵌套目录)=====
|
||||
{
|
||||
path: "/group-user",
|
||||
name: "GroupUser",
|
||||
component: GroupUser,
|
||||
meta: { title: "组,用户管理", icon: "icon-list", modId: 1101 },
|
||||
meta: { title: "组,用户管理", icon: "icon-list", modId: 1101, roles: ALL_ADMIN },
|
||||
},
|
||||
// ===== 应用管理(单选项卡)=====
|
||||
// 应用管理主页(= 应用列表),菜单顶层「应用管理」指向此路由(modId 1102)
|
||||
// 局端不开放应用管理(局端的应用动作是「开通」)
|
||||
{
|
||||
path: "/app-manage/list",
|
||||
name: "AppList",
|
||||
component: AppList,
|
||||
meta: { title: "应用管理", icon: "icon-list", modId: 1102, keepAlive: true },
|
||||
meta: { title: "应用管理", icon: "icon-list", modId: 1102, keepAlive: true, roles: [UserRoleEnum.SuperAdmin, UserRoleEnum.School] },
|
||||
},
|
||||
// 应用类型管理(深层子页,不在菜单里):meta.parentId=1102 关联父菜单「应用管理」,
|
||||
// 由 layout.vue 的 routeChange 推导面包屑「应用管理>应用类型管理」并高亮父菜单
|
||||
// 校管可:类别改名/排序(写覆盖表);新增/删除类别按钮由页面按级别隐藏
|
||||
{
|
||||
path: "/app-manage/category",
|
||||
name: "AppCategory",
|
||||
component: AppCategory,
|
||||
meta: { title: "应用类型管理", modId: 11022, parentId: 1102 },
|
||||
meta: { title: "应用类型管理", modId: 11022, parentId: 1102, roles: [UserRoleEnum.SuperAdmin, UserRoleEnum.School] },
|
||||
},
|
||||
// 模块管理(深层子页,不在菜单里):meta.parentId=1102 关联父菜单「应用管理」
|
||||
// 模块管理(深层子页,不在菜单里):仅超管
|
||||
{
|
||||
path: "/app-manage/module",
|
||||
name: "ModuleManage",
|
||||
component: ModuleManage,
|
||||
meta: { title: "模块管理", modId: 11023, parentId: 1102 },
|
||||
meta: { title: "模块管理", modId: 11023, parentId: 1102, roles: [UserRoleEnum.SuperAdmin] },
|
||||
},
|
||||
// /app-manage 兜底重定向到主页
|
||||
{
|
||||
@@ -59,7 +73,7 @@ const routes: RouteRecordRaw[] = [
|
||||
path: "/role-authz/list",
|
||||
name: "RoleAuthzList",
|
||||
component: RoleAuthzList,
|
||||
meta: { title: "角色授权", icon: "icon-list", modId: 1110, keepAlive: true },
|
||||
meta: { title: "角色授权", icon: "icon-list", modId: 1110, keepAlive: true, roles: ALL_ADMIN },
|
||||
},
|
||||
// 角色管理(深层子页,不在菜单里):meta.parentId=1110 关联父菜单「角色授权」,
|
||||
// 由 layout.vue 推导面包屑「角色授权>角色管理」并高亮父菜单(与 /app-manage/category 范式一致)
|
||||
@@ -67,7 +81,7 @@ const routes: RouteRecordRaw[] = [
|
||||
path: "/role-authz/manage",
|
||||
name: "RoleManage",
|
||||
component: RoleManage,
|
||||
meta: { title: "角色管理", modId: 11101, parentId: 1110 },
|
||||
meta: { title: "角色管理", modId: 11101, parentId: 1110, roles: ALL_ADMIN },
|
||||
},
|
||||
// /role-authz 兜底重定向到主页
|
||||
{
|
||||
@@ -78,45 +92,45 @@ const routes: RouteRecordRaw[] = [
|
||||
path: "/app-open",
|
||||
name: "AppOpen",
|
||||
component: AppOpen,
|
||||
meta: { title: "应用开通", icon: "icon-list", modId: 1103 },
|
||||
meta: { title: "应用开通", icon: "icon-list", modId: 1103, roles: [UserRoleEnum.SuperAdmin, UserRoleEnum.Bureau] },
|
||||
},
|
||||
{
|
||||
path: "/group-auth",
|
||||
name: "GroupAuth",
|
||||
component: GroupAuth,
|
||||
meta: { title: "组授权", icon: "icon-list", modId: 1104 },
|
||||
meta: { title: "组授权", icon: "icon-list", modId: 1104, roles: ALL_ADMIN },
|
||||
},
|
||||
{
|
||||
path: "/permission-view",
|
||||
name: "PermissionView",
|
||||
component: PermissionView,
|
||||
meta: { title: "权限一览", icon: "icon-list", modId: 1105 },
|
||||
meta: { title: "权限一览", icon: "icon-list", modId: 1105, roles: ALL_ADMIN },
|
||||
},
|
||||
{
|
||||
path: "/push-log",
|
||||
name: "PushLog",
|
||||
component: PushLog,
|
||||
meta: { title: "推送日志", icon: "icon-list", modId: 1112, keepAlive: true },
|
||||
meta: { title: "推送日志", icon: "icon-list", modId: 1112, keepAlive: true, roles: [UserRoleEnum.SuperAdmin] },
|
||||
},
|
||||
{
|
||||
path: "/push-test",
|
||||
name: "PushTest",
|
||||
component: PushTest,
|
||||
meta: { title: "测试推送", icon: "icon-list", modId: 1113 },
|
||||
meta: { title: "测试推送", icon: "icon-list", modId: 1113, roles: [UserRoleEnum.SuperAdmin] },
|
||||
},
|
||||
// ===== 操作日志 =====
|
||||
{
|
||||
path: "/oplog",
|
||||
name: "OperationLogList",
|
||||
component: OperationLogList,
|
||||
meta: { title: "操作日志", icon: "icon-list", modId: 1111, keepAlive: true },
|
||||
meta: { title: "操作日志", icon: "icon-list", modId: 1111, keepAlive: true, roles: [UserRoleEnum.SuperAdmin] },
|
||||
},
|
||||
// ===== 开放接口日志 =====
|
||||
{
|
||||
path: "/oapilog",
|
||||
name: "OapiLogList",
|
||||
component: OapiLogList,
|
||||
meta: { title: "开放接口日志", icon: "icon-list", modId: 1114, keepAlive: true },
|
||||
meta: { title: "开放接口日志", icon: "icon-list", modId: 1114, keepAlive: true, roles: [UserRoleEnum.SuperAdmin] },
|
||||
},
|
||||
];
|
||||
|
||||
|
||||
Reference in New Issue
Block a user