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(() => {
|
|
|
|
const token = useStorage('token', '', uniStorage)
|
|
|
|
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,
|
|
|
|
}
|
|
|
|
})
|