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-13 05:09:38 +00:00
const token = ref('30119d9978a6f3321fb4779c0040e997df4dd0dd0cf6b71119657617d2249ed783f940b0050d5be7e758740ea467afdf3eeb4d28fb5ea234af60ebe51fb218ff6a0563074f3084b41c1bc8dc0733d06bfbb433a8d5a1d13eb6227adbf50a5da566a4cacdbf91899e563f10864fe2acfe8edb3a186766d1fb247c2e3c6bb3c014a610243d87b0460c692d5bea2442fe553a9cf98e29ff7be27c364ab2047c67957e28df8f7cdd90366fd8f94967d5f8e037fab5f9e3c3a342f4830875841d5a4361ab087bd4205321e6ad9db918811786bd9e1be7df913383eef6f47f436073ca')
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,
}
})