This commit is contained in:
Chuck1sn
2025-05-15 21:48:09 +08:00
parent f33bcf3697
commit 082312db7c
56 changed files with 954 additions and 802 deletions

View File

@@ -50,14 +50,19 @@ export enum RouteName {
GLOBAL_NOTFOUND = "global-notfound",
}
export enum ROLE {
ADMIN = "ADMIN",
USER = "USER",
}
export enum ERole {
ADMIN = "ADMIN",
USER = "GENERAL",
}
export enum PERMISSION {
USER_VIEW = "user:view",
USER_ADD = "user:add",
USER_EDIT = "user:edit",
USER_DELETE = "user:delete",
}
export enum EPermission {
READ_POSITION_PERMISSION = "READ_POSITION_PERMISSION",
WRITE_POSITION_PERMISSION = "WRITE_POSITION_PERMISSION",
READ_DEPARTMENT_PERMISSION = "READ_DEPARTMENT_PERMISSION",
WRITE_DEPARTMENT_PERMISSION = "WRITE_DEPARTMENT_PERMISSION",
READ_SCHEDULER_PERMISSION = "READ_SCHEDULER_PERMISSION",
WRITE_SCHEDULER_PERMISSION = "WRITE_SCHEDULER_PERMISSION",
WRITE_USER_ROLE_PERMISSION = "WRITE_USER_ROLE_PERMISSION",
DELETE_USER_ROLE_PERMISSION = "DELETE_USER_ROLE_PERMISSION",
READ_USER_ROLE_PERMISSION = "READ_USER_ROLE_PERMISSION",
}

View File

@@ -20,7 +20,6 @@ const router = createRouter({
router.onError((err) => {
console.error("router err:", err);
// TODO 增加一个错误页面
router.push(RouteName.USERVIEW);
return false;
});

View File

@@ -1,7 +1,7 @@
import type { RouteRecordRaw } from "vue-router";
import Dashboard from "../../components/Dashboard.vue";
import OverView from "../../views/OverView.vue";
import { ROLE, RouteName, RoutePath } from "../constants";
import { EPermission, ERole, RouteName, RoutePath } from "../constants";
import userManagementRoutes from "./user";
const dashboardRoutes: RouteRecordRaw = {
@@ -40,7 +40,7 @@ const dashboardRoutes: RouteRecordRaw = {
component: () => import("@/views/SchedulerView.vue"),
meta: {
requiresAuth: true,
hasRole: ROLE.ADMIN,
hasPermission: EPermission.READ_SCHEDULER_PERMISSION,
},
},
{
@@ -49,7 +49,7 @@ const dashboardRoutes: RouteRecordRaw = {
component: () => import("@/views/DepartmentView.vue"),
meta: {
requiresAuth: true,
hasRole: ROLE.ADMIN,
hasPermission: EPermission.READ_DEPARTMENT_PERMISSION,
},
},
{
@@ -58,7 +58,7 @@ const dashboardRoutes: RouteRecordRaw = {
component: () => import("@/views/PositionView.vue"),
meta: {
requiresAuth: true,
hasRole: ROLE.ADMIN,
hasPermission: EPermission.READ_POSITION_PERMISSION,
},
},
],

View File

@@ -1,5 +1,5 @@
import type { RouteRecordRaw } from "vue-router";
import { ROLE, RouteName, RoutePath } from "../constants";
import { EPermission, ERole, RouteName, RoutePath } from "../constants";
const userManagementRoutes: RouteRecordRaw[] = [
{
@@ -8,7 +8,7 @@ const userManagementRoutes: RouteRecordRaw[] = [
component: () => import("@/views/UserView.vue"),
meta: {
requiresAuth: true,
hasRole: ROLE.ADMIN,
hasPermission: EPermission.READ_USER_ROLE_PERMISSION,
},
},
{
@@ -17,7 +17,7 @@ const userManagementRoutes: RouteRecordRaw[] = [
component: () => import("@/views/RoleView.vue"),
meta: {
requiresAuth: true,
hasRole: ROLE.ADMIN,
hasPermission: EPermission.READ_USER_ROLE_PERMISSION,
},
},
{
@@ -26,7 +26,7 @@ const userManagementRoutes: RouteRecordRaw[] = [
component: () => import("@/views/BindRoleView.vue"),
meta: {
requiresAuth: true,
hasRole: ROLE.ADMIN,
hasPermission: EPermission.WRITE_USER_ROLE_PERMISSION,
},
},
{
@@ -35,7 +35,7 @@ const userManagementRoutes: RouteRecordRaw[] = [
component: () => import("@/views/BindDepartmentView.vue"),
meta: {
requiresAuth: true,
hasRole: ROLE.ADMIN,
hasPermission: EPermission.WRITE_USER_ROLE_PERMISSION,
},
},
{
@@ -44,7 +44,7 @@ const userManagementRoutes: RouteRecordRaw[] = [
component: () => import("@/views/BindPermissionView.vue"),
meta: {
requiresAuth: true,
hasRole: ROLE.ADMIN,
hasPermission: EPermission.WRITE_USER_ROLE_PERMISSION,
},
},
{
@@ -53,7 +53,7 @@ const userManagementRoutes: RouteRecordRaw[] = [
component: () => import("@/views/PermissionView.vue"),
meta: {
requiresAuth: true,
hasRole: ROLE.ADMIN,
hasPermission: EPermission.READ_USER_ROLE_PERMISSION,
},
},
{
@@ -62,7 +62,7 @@ const userManagementRoutes: RouteRecordRaw[] = [
component: () => import("@/views/BindPositionView.vue"),
meta: {
requiresAuth: true,
hasRole: ROLE.ADMIN,
hasPermission: EPermission.WRITE_USER_ROLE_PERMISSION,
},
},
];