yxh
2026-10-03 d553a4be94d4f6ee162cc353a28b220403909cfc
src/permission.ts
@@ -13,6 +13,7 @@
import { useRoomStoreWithOut } from "@/store/modules/room";
// 需求:30 分钟无操作才要求重新登录(前端空闲检测)
import { setupIdleLogout } from '@/hooks/web/useIdleLogout'
import { setupBedReleaseOnUnload } from '@/utils/releaseBed'
const { start, done } = useNProgress()
@@ -178,5 +179,10 @@
  // ==========================================================================
  if (getAccessToken() && to.path !== '/login') {
    setupIdleLogout()
    // 需求:退出系统时自动退出占用的诊疗床位。
    // 注册 `pagehide` 兜底(关闭标签页/刷新/跳走)—— 内部自带幂等保护,
    // 只是"尽力而为"的最后一层;主要保障在 useIdleLogout / userStore.loginOut /
    // axios 的 handleAuthorized 三处明确的退出路径上。
    setupBedReleaseOnUnload()
  }
})