import userApi from '@/reqApi/user.js'; // 引入你的 API 请求模块 const userStore = { state: { token:uni.getStorageSync('token') || '',//token userInfo:uni.getStorageSync('userInfo') || {},//用户信息 schoolsList:uni.getStorageSync('schoolsList') || '',//schoolsList modulesList:uni.getStorageSync('modulesList') || [],//模块权限列表 }, mutations: { //设置token SET_TOKEN(state, token) { state.token = token; }, //设置用户信息 SET_USER_INFO(state, userInfo) { state.userInfo = userInfo; }, //退出登录 LOGOUT_USERINFO(state) { state.token = ''; state.userInfo = {}; state.schoolsList = ''; state.modulesList = []; uni.removeStorageSync('token'); uni.removeStorageSync('userInfo'); uni.removeStorageSync('schoolsList'); uni.removeStorageSync('modulesList'); }, //保存学校 SET_SCHOOLSLIST(state,list){ state.schoolsList = list; }, //保存模块权限列表 SET_MODULESLIST(state,list){ state.modulesList = list; } }, getters: { currentColor(state) { return state.colorList[state.colorIndex] } }, actions: { //设置token setToken({ commit }, token) { commit('SET_TOKEN', token); }, //注销退出登录 async logout({commit},isOut){ if(isOut){ try { const res = await userApi.signOut(); if (res.code === 200) { commit('LOGOUT_USERINFO'); } } catch (error) { // signOut 失败(如token无效),直接清除本地数据 commit('LOGOUT_USERINFO'); } }else{ commit('LOGOUT_USERINFO'); } }, //设置用户信息 async setUserInfo({ commit }) { try { const res = await userApi.getUserInfo(); if (res.code === 200) { console.log("打印用户信息",res.data); let userInfo={ email:res.data.email || '',//用户邮箱 userName:res.data.userName || '',//用户昵称 userId:res.data.id || '',//用户Id roleName:res.data.roleName || '',//用户角色 accountId:res.data.loginName || '',//登录账号 schoolName:res.data.schoolName || '',//学校名称 schoolId:res.data.schoolId || '',//学校id userImage:res.data.headPic || '',//用户头像 roleCodes:res.data.roleCodes || '',//用户角色编码 roleNames:res.data.roleNames || '',//用户角色名称 identify:res.data.identify || '',//用户身份 phone:res.data.phone || '',//用户手机号 schoolType:res.data.schoolType || '',//学校类型 wxName:res.data.wxName || '',//用户微信昵称 // userSex:res.data.gender || 0,//用户性别 }; commit('SET_USER_INFO', userInfo); uni.setStorageSync('userInfo', userInfo); // 存储 token 到本地 } else { } } catch (error) { } }, //保存学校 setSchoolsList({ commit }, list){ commit('SET_SCHOOLSLIST', list); }, //保存模块权限列表 setModulesList({ commit }, list){ commit('SET_MODULESLIST', list); } } } export default userStore