chat-app/src/store/auth/index.js

48 lines
1.7 KiB
JavaScript
Raw Normal View History

2024-11-11 06:46:14 +00:00
import {createGlobalState,useStorage} from '@vueuse/core'
import {uniStorage} from "@/utils/uniStorage.js"
import {ref} from 'vue'
export const useAuth = createGlobalState(() => {
2024-11-22 01:06:37 +00:00
// const token = useStorage('token', '', uniStorage)
2024-12-10 03:31:36 +00:00
const token = ref('30119d9978a6f3321fb4779c0040e997df4dd0dd0cf6b71119657617d2249ed783f940b0050d5be7e758740ea467afdf3eeb4d28fb5ea234af60ebe51fb218ff6a0563074f3084b41c1bc8dc0733d06bfbb433a8d5a1d13eb6227adbf50a5da566a4cacdbf91899e563f10864fe2acfe62e0966fbd28506c80ffdda3f2f2f1cdf47228c1222630dd71bf9086f3fd73b23ac4fa18032fd834babe4ba7c7c210a329e9767e3e70b35f7745f2c84fda47c1c0ee95bdc6bf946fbef5927b397b37f7614b53736e13edef3e504c70124204b44913e3def0c87bf860be2788bf0360c3')
2024-11-11 06:46:14 +00:00
const refreshToken = useStorage('refreshToken', '', uniStorage)
const userInfo = useStorage('userInfo', {}, uniStorage)
const leaderList = useStorage('leaderList', [], uniStorage)
2024-11-19 05:57:36 +00:00
const myCompany = useStorage('myCompany','', uniStorage)
2024-11-11 06:46:14 +00:00
const isLeader=ref(false)
// const leaderList=ref([])
2024-11-19 05:57:36 +00:00
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
}
2024-11-11 06:46:14 +00:00
2024-11-19 05:57:36 +00:00
}
2024-11-11 06:46:14 +00:00
return {
leaderList,
2024-11-19 05:57:36 +00:00
myCompany,
getUserLeader,
getUserInfo,
2024-11-11 06:46:14 +00:00
userInfo,
token,
refreshToken,
}
})