zhangwei
2025-08-05 b94b71d44d62802bb8093f64a202d0176fdade50
src/utils/auth.ts
@@ -16,8 +16,10 @@
  username?: string;
  /** 昵称 */
  nickname?: string;
  /** 当前登录用户的角色 */
  /** 当前登录用户的角色列表 */
  exRoles?: Array<string>;
  /** 当前登录用户的角色 */
  roles?: Array<string>;
  /** 当前登录用户的按钮级别权限 */
  permissions?: Array<string>;
}
@@ -193,11 +195,19 @@
      : {}
  );
  function setUserKey({ avatar, username, nickname, exRoles, permissions }) {
  function setUserKey({
    avatar,
    username,
    nickname,
    exRoles,
    permissions,
    roles
  }) {
    useUserStoreHook().SET_AVATAR(avatar);
    useUserStoreHook().SET_USERNAME(username);
    useUserStoreHook().SET_NICKNAME(nickname);
    useUserStoreHook().SET_ROLES(exRoles);
    useUserStoreHook().SET_EXROLES(exRoles);
    useUserStoreHook().SET_ROLES(roles);
    useUserStoreHook().SET_PERMS(permissions);
    storageLocal().setItem(userKey, {
      refreshToken,
@@ -206,17 +216,19 @@
      username,
      nickname,
      exRoles,
      roles,
      permissions
    });
  }
  if (data.exRoles) {
    const { username, exRoles } = data;
  if (data.exRoles && data.roles) {
    const { username, exRoles, roles } = data;
    setUserKey({
      avatar: data?.avatar ?? "",
      username,
      nickname: data?.nickname ?? "",
      exRoles,
      roles,
      permissions: data?.permissions ?? []
    });
  } else {
@@ -228,6 +240,8 @@
      storageLocal().getItem<DataInfo<number>>(userKey)?.nickname ?? "";
    const exRoles =
      storageLocal().getItem<DataInfo<number>>(userKey)?.exRoles ?? [];
    const roles =
      storageLocal().getItem<DataInfo<number>>(userKey)?.roles ?? [];
    const permissions =
      storageLocal().getItem<DataInfo<number>>(userKey)?.permissions ?? [];
    setUserKey({
@@ -235,6 +249,7 @@
      username,
      nickname,
      exRoles,
      roles,
      permissions
    });
  }
@@ -250,7 +265,7 @@
}
export function setRoleListInfo(data: DataInfo<string>) {
  useUserStoreHook().SET_ROLES_LIST(data);
  useUserStoreHook().SET_EXROLES_LIST(data);
  storageLocal().setItem("rolesList", data);
}
@@ -262,6 +277,7 @@
    });
    data = { ...obj, ...data };
  }
  useUserStoreHook().SET_ROLES([data.name]);
  useUserStoreHook().SET_NOW_ROLE(data);
  storageLocal().setItem("nowRole", data);
}