yxh
2026-10-03 d553a4be94d4f6ee162cc353a28b220403909cfc
src/store/modules/user.ts
@@ -3,6 +3,7 @@
import { getAccessToken, removeToken } from '@/utils/auth'
import { CACHE_KEY, useCache, deleteUserCache } from '@/hooks/web/useCache'
import { getInfo, loginOut } from '@/api/login'
import { releaseBedOnExit } from '@/utils/releaseBed'
const { wsCache } = useCache()
@@ -79,6 +80,11 @@
      wsCache.set(CACHE_KEY.USER, userInfo)
    },
    async loginOut() {
      // 先释放诊疗床位(医生常在「诊室选择」页占了床位就直接退出系统)。
      // 后端 `/system/auth/logout` 内部虽然也会离座,但:
      //   ① 若该请求失败/网络中断,床位就留在占用状态;
      //   ② 本接口失败也不会阻断退出流程(releaseBedOnExit 内部已兜底)。
      await releaseBedOnExit('manual-logout')
      await loginOut()
      removeToken()
      deleteUserCache() // 删除用户缓存