diff --git a/src/hooks/common/router.ts b/src/hooks/common/router.ts index 5affcdd..3c19bd5 100644 --- a/src/hooks/common/router.ts +++ b/src/hooks/common/router.ts @@ -97,7 +97,7 @@ export function useRouterPush(inSetup = true) { const redirect = route.value.query?.redirect as string; console.log(redirect); if (needRedirect && redirect) { - await routerPush(redirect); + await toHome(); } else { await toHome(); } diff --git a/src/router/guard/route.ts b/src/router/guard/route.ts index 6bb7839..3c32589 100644 --- a/src/router/guard/route.ts +++ b/src/router/guard/route.ts @@ -24,6 +24,7 @@ export function createRouteGuard(router: Router) { next(location); return; } + const authStore = useAuthStore(); @@ -37,19 +38,22 @@ export function createRouteGuard(router: Router) { const hasRole = authStore.userInfo.roles.some(role => routeRoles.includes(role)); const hasAuth = authStore.isStaticSuper || !routeRoles.length || hasRole; + // if(!location){ + // next({ name: 'home' }); + // return; + // } // if it is login route when logged in, then switch to the root page if (to.name === loginRoute && isLogin) { next({ name: rootRoute }); return; } - + // if the route does not need login, then it is allowed to access directly if (!needLogin) { handleRouteSwitch(to, from, next); return; } - // the route need login but the user is not logged in, then switch to the login page if (!isLogin) { next({ name: loginRoute, query: { redirect: to.fullPath } }); @@ -164,6 +168,8 @@ async function initRoute(to: RouteLocationNormalized): Promise) { } /** 删除API权限组 */ -export function deleteGroup(id: number) { +export function deleteGroup(id) { return request({ - url: `/adminapi/group/del/ids/${id}`, - method: 'get' + url: `/adminapi/group/del/ids`, + method: 'post', + data:{ids:id} }); } \ No newline at end of file diff --git a/src/service/api/index.ts b/src/service/api/index.ts index 89f4e58..a045d6e 100644 --- a/src/service/api/index.ts +++ b/src/service/api/index.ts @@ -1,2 +1,39 @@ export * from './auth'; export * from './route'; + +import { request } from '../request'; + + +/** 添加API权限组 */ +export function fetchGetAdminList(data) { + return request({ + url: '/adminapi/admin_manager/index', + method: 'post', + data + }); +} +/** 添加API权限组 */ +export function addAdmin(data,type) { + return request({ + url: '/adminapi/admin_manager/add', + method:type, + data + }); +} +/** 添加API权限组 */ +export function editAdmin(data) { + return request({ + url: '/adminapi/admin_manager/edit/ids', + method: 'post', + data + }); +} + +/** 添加API权限组 */ +export function deleteAdmin(data) { + return request({ + url: '/adminapi/admin_manager/del/ids', + method: 'post', + data + }); +} \ No newline at end of file diff --git a/src/service/api/route.ts b/src/service/api/route.ts index 01bc92c..c004b4d 100644 --- a/src/service/api/route.ts +++ b/src/service/api/route.ts @@ -7,7 +7,7 @@ export function fetchGetConstantRoutes() { /** get user routes */ export function fetchGetUserRoutes() { - return request({ url: '/adminapi/rule/index?is_tree=1' }); + return request({ url: '/adminapi/admin/menu?is_tree=1' }); } diff --git a/src/store/modules/auth/index.ts b/src/store/modules/auth/index.ts index 794698f..71ea6f1 100644 --- a/src/store/modules/auth/index.ts +++ b/src/store/modules/auth/index.ts @@ -10,6 +10,8 @@ import { $t } from '@/locales'; import { useRouteStore } from '../route'; import { useTabStore } from '../tab'; import { clearAuthStorage, getToken } from './shared'; +import { router } from '@/router'; + export const useAuthStore = defineStore(SetupStoreId.Auth, () => { const route = useRoute(); @@ -69,8 +71,8 @@ export const useAuthStore = defineStore(SetupStoreId.Auth, () => { const pass = await loginByToken(response.data.data.userinfo); if (pass) { - await redirectFromLogin(redirect); - + //await redirectFromLogin(redirect); + router.push('home'); window.$notification?.success({ title: $t('page.login.common.loginSuccess'), content: $t('page.login.common.welcomeBack', { userName: response.data.data.userinfo.nickname }), diff --git a/src/store/modules/route/index.ts b/src/store/modules/route/index.ts index 1a16a3c..293cfb0 100644 --- a/src/store/modules/route/index.ts +++ b/src/store/modules/route/index.ts @@ -299,14 +299,13 @@ export const useRouteStore = defineStore(SetupStoreId.Route, () => { */ function handleUpdateRootRouteRedirect(redirectKey: LastLevelRouteKey) { const redirect = getRoutePath(redirectKey); - + if (redirect) { const rootRoute: CustomRoute = { ...ROOT_ROUTE, redirect }; router.removeRoute(rootRoute.name); const [rootVueRoute] = getAuthVueRoutes([rootRoute]); - router.addRoute(rootVueRoute); } } diff --git a/src/views/system/auth/index.vue b/src/views/system/auth/index.vue index 30e4bcb..e7819e2 100644 --- a/src/views/system/auth/index.vue +++ b/src/views/system/auth/index.vue @@ -24,7 +24,7 @@ const model = ref> id: 0, name: '', rules: '', - status: '', + status: 'normal', rulesArray: [] }); const rules = {}; @@ -118,7 +118,7 @@ function handleAdd() { id: 0, name: '', rules: '', - status: '', + status: 'normal', rulesArray: [] }; openModal(); @@ -129,7 +129,7 @@ async function handleDelete(id: number) { const { response } = await deleteGroup(id); console.log(response); if (response?.data?.code === 1) { - window.$message?.success(response.data.msg); + window.$message?.success('删除成功!'); getData(); } else { window.$message?.error(response?.data?.msg || '删除失败'); diff --git a/src/views/system/user/index.vue b/src/views/system/user/index.vue index 8d724de..73ba708 100644 --- a/src/views/system/user/index.vue +++ b/src/views/system/user/index.vue @@ -1,7 +1,220 @@ + + + +