import { defineStore } from 'pinia'; import { setLocalStorage, getLocalStorage } from '@/utils/storage'; import {logout} from '@/api/admin/login' import { usePermissionStore } from '@/store/permission'; import { getInfo } from '@/api/admin/sys-user'; import { getAppConfig } from '@/api/admin/login'; export const useUserStore = defineStore('user', { state: () => { return { token: window.sessionStorage.getItem('token') || '', uid: window.sessionStorage.getItem('uid') || '', sysConfig: getLocalStorage('sysConfig'), buttonPermissions:[], userInfo:window.sessionStorage.getItem('manage-userInfo')?JSON.parse(window.sessionStorage.getItem('manage-userInfo')):'' } }, // getters: { // roles: (state) => state.userInfo.roles || [], // }, actions: { setInfo(token,user) { this.token = token; this.userInfo=user; window.sessionStorage.setItem('token', token); window.localStorage.setItem('uid',user.user_id); window.sessionStorage.setItem('manage-userInfo',JSON.stringify(user)); }, // async getUserInfo() { // try { // const res = await getInfo(); // // window.sessionStorage.setItem('uid', res.data.userId); // this.userInfo = res.data; // } catch (err) { // console.error(err); // } // }, async getSysConfig() { try { // const res = await getAppConfig(); // setLocalStorage('sysConfig', res.data); //res.data; let data={sys_app_logo: "https://doc-image.zhangwj.com/img/go-admin.png", sys_app_name: "互联网医院后台管理"}; setLocalStorage('sysConfig', data); this.sysConfig =data } catch (err) { console.error(err); } }, async userLogut() { const {code} = await logout(); const permissionStore=usePermissionStore(); if(code==200){ this.token = null; this.userInfo = null; permissionStore.ClearMenuList(); permissionStore.clearRouters(); } } } })