ludc
2025-01-16 391eec3114a17e68652434c6eae610799d80290e
Source/plt-web/plt-web-ui/src/store/modules/user.js
@@ -4,7 +4,7 @@
import {isURL, validatenull} from '@/util/validate'
import {deepClone, queryStringToObject} from '@/util/util'
import website from '@/config/website'
import {loginByUsername, loginBySocial, loginBySso, getUserInfo, logout, refreshToken, getButtons} from '@/api/user'
import {loginByUsername, loginBySocial, loginBySso, getUserInfo, logout, refreshToken, getButtons,getUserPhoto} from '@/api/user'
import {getTopMenu, getRoutes} from '@/api/system/menu'
import md5 from 'js-md5'
import func from "@/util/func";
@@ -286,12 +286,27 @@
      state.tenantId = tenantId;
      setStore({name: 'tenantId', content: state.tenantId})
    },
    // SET_USER_INFO: (state, userInfo) => {
    //   getUserPhoto().then(res => {
    //     userInfo.avatar = URL.createObjectURL(res.data);
    //     console.log('userInfo',userInfo)
    //   })
    //   state.userInfo = userInfo;
    //   setStore({name: 'userInfo', content: state.userInfo})
    // },
    SET_USER_INFO: (state, userInfo) => {
      if (validatenull(userInfo.avatar)) {
        userInfo.avatar = "/img/bg/img-logo.png";
      }
      state.userInfo = userInfo;
      setStore({name: 'userInfo', content: state.userInfo})
      getUserPhoto().then(res => {
        // 将 Blob 转换为 Base64
        const reader = new FileReader();
        reader.onloadend = (result) => {
          userInfo.avatar = reader.result; // 存储 Base64 字符串
          // 更新状态并存储到 localStorage
          state.userInfo = userInfo;
          setStore({ name: 'userInfo', content: state.userInfo });
        };
        reader.readAsDataURL(res.data); // 调用reader方法
      });
    },
    SET_ROLES: (state, roles) => {
      state.roles = roles;