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

48 lines
1.6 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-11-26 08:51:36 +00:00
const token = ref('30119d9978a6f3321fb4779c0040e997df4dd0dd0cf6b71119657617d2249ed783f940b0050d5be7e758740ea467afdf3eeb4d28fb5ea234af60ebe51fb218ffea38d3362de44912166520e87a6f38da5fa465eedb17110c9d5a7bb18d2a526249de3c56b42ad044dfada705af255bf9b021020b5f62f3bb26adf451d2736228924fc801fe89c57eaf8165fff1723136f4085f0a369bd83bf3abf52fa2e079f1241f62b1502a440bca65e0e954bd4e46b63a5bfc16ac9aec3104bd29b763bf03')
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,
}
})