From fd15b2a99a4ebd476a54671c560b3a89f69b621e Mon Sep 17 00:00:00 2001
From: zhangxiao <898441624@qq.com>
Date: 星期二, 27 八月 2024 10:26:42 +0800
Subject: [PATCH] feat: 修改bug
---
src/store/modules/user/index.ts | 34 +++++++++++++++++++++++++++++-----
1 files changed, 29 insertions(+), 5 deletions(-)
diff --git a/src/store/modules/user/index.ts b/src/store/modules/user/index.ts
index ca37a8b..56d90b8 100644
--- a/src/store/modules/user/index.ts
+++ b/src/store/modules/user/index.ts
@@ -5,10 +5,12 @@
getUserInfo,
LoginData,
} from '@/api/user';
-import { setToken, clearToken,setUserInfo } from '@/utils/auth';
+import { setToken, clearToken, setUserInfo, setUserResources, clearUserResources } from "@/utils/auth";
import { removeRouteListener } from '@/utils/route-listener';
import { UserState } from './types';
import useAppStore from '../app';
+import router from "@/router";
+
const useUserStore = defineStore('user', {
state: (): UserState => ({
@@ -29,6 +31,7 @@
certification: undefined,
role: '',
resources:undefined,
+ hrefUrl:undefined
}),
getters: {
@@ -51,6 +54,7 @@
// Reset user's information
resetInfo() {
+ clearUserResources()
this.$reset();
},
@@ -62,17 +66,29 @@
},
// Login
- async login(loginForm: LoginData) {
+ 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));
+ this.name=res.data.userName
+
+ if(res.data?.roles.length>0)
+ this.resources=res.data.roles[0].resources;
+ setUserInfo(JSON.stringify(userInfo));
+ setUserResources(JSON.stringify(this.resources))
+ for (const r of this.resources) {
+ if (r.menuType == 0) {
+ return r.component
+ }
+ }
} catch (err) {
clearToken();
throw err;
@@ -90,9 +106,17 @@
try {
await userLogout();
} finally {
+ router.push({
+ name: "login",
+ });
this.logoutCallBack();
}
},
+
+
+ getHreFurl(url: string) {
+ this.hrefUrl=url
+ },
},
});
--
Gitblit v1.8.0