import {createGlobalState,useStorage} from '@vueuse/core' import {uniStorage} from "@/utils/uniStorage.js" import {ref} from 'vue' export const useAuth = createGlobalState(() => { const token = useStorage('token', '', uniStorage) const refreshToken = useStorage('refreshToken', '', uniStorage) const userInfo = useStorage('userInfo', {}, uniStorage) const leaderList = useStorage('leaderList', [], uniStorage) const myCompany = useStorage('myCompany','', uniStorage) const isLeader=ref(false) // const leaderList=ref([]) const getUserInfo=async ()=>{ const data={ ID:userInfo.value.ID } const res= await userInfoApi(data) if (res.status===0){ userInfo.value=res.data } } const getUserLeader=async ()=>{ const data={ departmentId:userInfo.value.PositionUsers?.map(x=>x.DepartmentId) } const res= await userLeaderApi(data) if (res.status===0){ isLeader.value=!!res.data.departmentLeaders?.find((x) => { return x.userID === userInfo.value.ID }) leaderList.value=res.data.departmentLeaders myCompany.value=res.data.company } } return { leaderList, myCompany, getUserLeader, getUserInfo, userInfo, token, refreshToken, } })