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 | 48 ++++++++++++++++++++++++++++++++++++++++-------- 1 files changed, 40 insertions(+), 8 deletions(-) diff --git a/src/layout/hooks/useNav.ts b/src/layout/hooks/useNav.ts index 2da245e..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,13 +53,14 @@ : useUserStoreHook()?.nickname; }); - /** 瑙掕壊 */ + /** 褰撳墠瑙掕壊 */ const userRoles = computed(() => { - console.log(useUserStoreHook()?.roles, "useUserStoreHook()?.roles"); + return useUserStoreHook()?.nowRole; + }); - return isAllEmpty(useUserStoreHook()?.roles) - ? useUserStoreHook()?.roles - : {}; + /** 瑙掕壊 */ + const userRolesList = computed(() => { + return useUserStoreHook()?.exRoles ?? []; }); const avatarsStyle = computed(() => { @@ -87,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(); @@ -160,8 +190,10 @@ pureApp, username, userRoles, + userRolesList, userAvatar, avatarsStyle, - tooltipEffect + tooltipEffect, + changRole }; } -- Gitblit v1.9.1