From 3324a54fa4d0840f8a5dc8adb21753180ecd3f3c Mon Sep 17 00:00:00 2001 From: zhangwei <1504152376@qq.com> Date: 星期二, 02 九月 2025 14:25:06 +0800 Subject: [PATCH] 公告信息页面 --- src/layout/hooks/useNav.ts | 46 +++++++++++++++++++++++++++++++++++++++++----- 1 files changed, 41 insertions(+), 5 deletions(-) diff --git a/src/layout/hooks/useNav.ts b/src/layout/hooks/useNav.ts index 56cd593..b3b11a0 100644 --- a/src/layout/hooks/useNav.ts +++ b/src/layout/hooks/useNav.ts @@ -2,7 +2,7 @@ import { getConfig } from "@/config"; import { emitter } from "@/utils/mitt"; import Avatar from "@/assets/user.jpg"; -import { getTopMenu } from "@/router/utils"; +import { initRouter, getTopMenu, handleAliveRoute } from "@/router/utils"; import { useFullscreen } from "@vueuse/core"; import type { routeMetaType } from "../types"; import { useRouter, useRoute } from "vue-router"; @@ -14,6 +14,8 @@ import { usePermissionStoreHook } from "@/store/modules/permission"; import ExitFullscreen from "~icons/ri/fullscreen-exit-fill"; import Fullscreen from "~icons/ri/fullscreen-fill"; +import { unref } from "vue"; +import { message } from "@/utils/message"; const errorInfo = "The current routing configuration is incorrect, please check the configuration"; @@ -51,9 +53,14 @@ : useUserStoreHook()?.nickname; }); - /** 瑙掕壊 */ + /** 褰撳墠瑙掕壊 */ const userRoles = computed(() => { - return useUserStoreHook()?.exRoles[0]; + return useUserStoreHook()?.nowRole; + }); + + /** 瑙掕壊 */ + const userRolesList = computed(() => { + return useUserStoreHook()?.exRoles ?? []; }); const avatarsStyle = computed(() => { @@ -83,7 +90,34 @@ if (Title) document.title = `${meta.title} | ${Title}`; else document.title = meta.title; } - + /** 鍒锋柊璺敱 */ + function onFresh() { + const { fullPath, query } = unref(route); + router.replace({ + path: "/redirect" + fullPath, + query + }); + handleAliveRoute(route as ToRouteType, "refresh"); + } + /** 鍒囨崲瑙掕壊 */ + const changRole = item => { + useUserStoreHook() + .changeLogoInExRule({ + ruleCode: item.code + }) + .then(res => { + if (res.code == 200) { + // 鑾峰彇鍚庣璺敱 + initRouter().then(() => { + const path = getTopMenu(true); + router.push({ name: path.name }); + }); + // onFresh(); + } else { + message(res?.message, { type: "warning" }); + } + }); + }; /** 閫�鍑虹櫥褰� */ function logout() { useUserStoreHook().logOut(); @@ -156,8 +190,10 @@ pureApp, username, userRoles, + userRolesList, userAvatar, avatarsStyle, - tooltipEffect + tooltipEffect, + changRole }; } -- Gitblit v1.9.1