From 84f2dda7dafcfb6814897b84c65feaa9943d5501 Mon Sep 17 00:00:00 2001 From: zhangxiao <898441624@qq.com> Date: 星期四, 29 八月 2024 22:49:29 +0800 Subject: [PATCH] fix: 修改bug --- src/store/modules/user/index.ts | 31 +++++++++++++++++++++++++++---- 1 files changed, 27 insertions(+), 4 deletions(-) diff --git a/src/store/modules/user/index.ts b/src/store/modules/user/index.ts index 0a3e0d3..84388d7 100644 --- a/src/store/modules/user/index.ts +++ b/src/store/modules/user/index.ts @@ -9,6 +9,7 @@ import { removeRouteListener } from '@/utils/route-listener'; import { UserState } from './types'; import useAppStore from '../app'; +import router from "@/router"; const useUserStore = defineStore('user', { @@ -30,6 +31,7 @@ certification: undefined, role: '', resources:undefined, + hrefUrl:undefined }), getters: { @@ -67,17 +69,30 @@ async login(loginForm: LoginData):string { try { const res = await userLogin(loginForm); + setToken(res.data.access_token); + const userInfo = { avatar: res.data.avatar, - name: res.data.nickname, + name: res.data.userName, email: res.data.email, + role: res.data.roles[0].roleKey, }; - this.resources=res.data.resources; - setUserInfo(JSON.stringify(userInfo)); - setUserResources(JSON.stringify(this.resources)) + this.name=res.data.userName + + if(res.data?.roles.length>0) + //閬嶅巻roles + for (const r of res.data.roles) { + if (!(this.resources)) { + this.resources = []; + } + this.resources = this.resources.concat(r.resources); + } + setUserInfo(JSON.stringify(userInfo)); + setUserResources(JSON.stringify(this.resources)) for (const r of this.resources) { if (r.menuType == 0) { + return r.component } } @@ -98,9 +113,17 @@ try { await userLogout(); } finally { + router.push({ + name: "login", + }); this.logoutCallBack(); } }, + + + getHreFurl(url: string) { + this.hrefUrl=url + }, }, }); -- Gitblit v1.8.0