From 01ee694a3bb8048372fc793a8de314d70b688b35 Mon Sep 17 00:00:00 2001
From: yxh <172933527@qq.com>
Date: 星期日, 18 十月 2026 22:36:21 +0800
Subject: [PATCH] 修改了工位

---
 src/utils/releaseBed.ts |   66 ++++++++-------------------------
 1 files changed, 16 insertions(+), 50 deletions(-)

diff --git a/src/utils/releaseBed.ts b/src/utils/releaseBed.ts
index b3b3524..a642a49 100644
--- a/src/utils/releaseBed.ts
+++ b/src/utils/releaseBed.ts
@@ -2,7 +2,7 @@
 import { getAccessToken } from '@/utils/auth'
 
 /**
- * 閫�鍑虹郴缁熸椂鑷姩閲婃斁璇婂宸ヤ綅锛堥渶姹傦細鍖荤敓甯稿繕璁般�岀搴с�嶅氨閫�鍑虹郴缁燂級銆�
+ * 鎵嬪姩銆岄��鍑虹櫥褰曘�嶆椂閲婃斁璇婂宸ヤ綅銆�
  *
  * 鑳屾櫙
  * ----
@@ -10,20 +10,23 @@
  * 锛堝悗绔啓鍦� `clinic_room.doc_id` / `status`锛夈��
  * 鑻ュ尰鐢熶笉鐐广�岀搴с�嶈�岀洿鎺ラ��鍑虹郴缁燂紝搴婁綅浼氫竴鐩存樉绀鸿鍗犵敤锛屽叾浠栧尰鐢熸棤娉曚娇鐢ㄣ��
  *
- * 瑕嗙洊鐨勯��鍑鸿矾寰�
- * --------------
- *  1. 鎵嬪姩鐐广�岄��鍑虹櫥褰曘�� 鈫� 鍚庣 `/system/auth/logout` 宸蹭細绂诲骇锛圓uthController锛夛紝
- *     鏈嚱鏁板湪鍏朵箣鍓嶅啀鍏滀竴娆★紝淇濊瘉鍗充娇 logout 璇锋眰澶辫触涔熷凡閲婃斁锛�
- *  2. **绌洪棽 30 鍒嗛挓鑷姩鐧诲嚭**锛坄useIdleLogout`锛夆啋 鍘熷厛鍙竻鏈湴鍑瘉銆佷笉璋冨悗绔� 鈬� 搴婁綅涓嶉噴鏀撅紝
- *     杩欐槸鏈淇鐨勬牳蹇冨満鏅紱
- *  3. **浠ょ墝澶辨晥/鍒锋柊澶辫触琚己鍒剁櫥鍑�**锛坄config/axios/service.ts` 鐨� `handleAuthorized`锛夛紱
- *  4. 鍏抽棴/鍒锋柊椤甸潰鍓嶇殑 `pagehide` 鍏滃簳銆�
+ * 銆愰噸瑕佸彉鏇达紙鏈锛夈�戝彧淇濈暀銆屾墜鍔ㄩ��鍑虹櫥褰曘�嶈繖涓�鏉¤矾寰�
+ * ---------------------------------------------------------------
+ * 鍘熷厛瑕嗙洊 4 鏉¤矾寰勶細鎵嬪姩閫�鍑恒�佺┖闂� 30 鍒嗛挓鑷姩鐧诲嚭銆佷护鐗屽け鏁�(401)銆乣pagehide`锛堝埛鏂�/鍏抽〉锛夈��
+ * 瀹炴祴闂锛氬悗涓夋潯浼氭妸銆屼护鐗屽埌鏈� / 鍒锋柊椤甸潰 / 绂诲紑涓�浼氬効銆嶈褰撴垚銆屽尰鐢熺搴с�嶏紝
+ * 瀵艰嚧宸ヤ綅琚竻绌� 鈥斺�� 鍖荤敓鍥炴潵鐪嬪埌宸ヤ綔鍙板彧鍓╁彧璇汇�佸苟鎻愮ず"璇烽噸鏂板氨鍧�"锛岃�屽伐浣嶅凡鍙樼┖闂层��
+ *
+ * 鐜板湪鐨勫彛寰勶細
+ *   路 **鍙湁鎵嬪姩銆岄��鍑虹櫥褰曘��**锛堜互鍙婅瘖瀹ら�夋嫨椤电殑鎵嬪姩銆岀搴с�嶏級鎵嶉噴鏀惧伐浣嶏紱
+ *   路 绌洪棽瓒呮椂锛坄useIdleLogout`锛夊彧瑕佹眰閲嶆柊杈撳瘑鐮侊紝宸ヤ綅淇濈暀锛�
+ *   路 401 / 鍒锋柊浠ょ墝澶辫触鍙竻鏈湴鍑瘉锛屽伐浣嶄繚鐣欙紱
+ *   路 涓嶅啀娉ㄥ唽 `pagehide` 鍏滃簳锛堝埛鏂伴〉闈笉搴旇涓㈠伐浣嶏級锛�
+ *   路 鍖荤敓鐪熺殑涓嬬彮蹇樼搴х殑鍏滃簳锛氣憼 闂瘖鏃剁郴缁熺粺涓�娓呯┖褰撶彮宸ヤ綅锛涒憽 绠$悊鍛樸�屾竻绌哄伐浣嶃�嶃��
  *
  * 涓轰粈涔堢敤**瑁� axios** 鑰屼笉鏄」鐩殑 request
  * ----------------------------------------
- * 椤圭洰鐨� `request` 鎸備簡 401 鎷︽埅鍣紝鑰屾湰鍑芥暟**鎭版伆鏄湪 401 涔嬪悗**琚皟鐢ㄧ殑銆�
- * 鑻ヨ蛋鎷︽埅鍣紝浼氬啀娆¤Е鍙�"鍒锋柊浠ょ墝澶辫触 鈫� 寮哄埗鐧诲嚭 鈫� 鍐嶈皟鏈嚱鏁�"鐨勯�掑綊銆�
- * 瑁� axios 涓嶆寕浠讳綍鎷︽埅鍣紝澶╃劧鏂紑杩欐潯閾俱��
+ * 鏈嚱鏁板彲鑳藉湪閴存潈鐘舵�佷笉绋虫椂琚皟鐢紝鑻ヨ蛋椤圭洰 request 鐨� 401 鎷︽埅鍣紝
+ * 浼氬啀娆¤Е鍙�"鍒锋柊浠ょ墝澶辫触 鈫� 寮哄埗鐧诲嚭"鐨勯�掑綊銆傝8 axios 涓嶆寕浠讳綍鎷︽埅鍣紝澶╃劧鏂紑杩欐潯閾俱��
  *
  * 涓轰粈涔堢敤**鏈嶅姟绔寜 userId 鍙嶆煡**鑰屼笉鏄墠绔紶搴婁綅鍙�
  * ------------------------------------------------
@@ -31,9 +34,7 @@
  * 灏变細"閲婃斁涓嶆帀"銆傛晠鍚庣鎻愪緵鏃犲弬鎺ュ彛 `/ecg/doctor/release-my-beds`锛屾寜褰撳墠鐧诲綍鐢ㄦ埛
  * 鍙嶆煡鍏跺崰鐢ㄧ殑鍏ㄩ儴搴婁綅銆傚墠绔彧闇�甯︿笂浠ょ墝銆�
  *
- * 鈿狅笍 鏈枃浠�**涓嶈 import `@/config/axios/config`**锛�
- *   `config/axios/service.ts` 闇�瑕� import 鏈枃浠讹紙鍦� 401 澶勭悊閲岄噴鏀惧簥浣嶏級锛�
- *   鑻ユ湰鏂囦欢鍙嶅悜 import 瀹冪殑 config锛屼細褰㈡垚寰幆渚濊禆銆�
+ * 鈿狅笍 鏈枃浠�**涓嶈 import `@/config/axios/config`**锛氶伩鍏嶄笌 service.ts 褰㈡垚寰幆渚濊禆銆�
  *   杩欓噷鐩存帴鐢ㄥ悓涓�涓幆澧冨彉閲忔嫾鎺ワ紝鏁堟灉绛変环涓旀棤鐜��
  *
  * 澶辫触澶勭悊锛氭湰鍑芥暟**姘镐笉鎶涘紓甯�**锛堥��鍑烘祦绋嬩笉搴斿洜瀹冭�屼腑鏂級銆�
@@ -68,39 +69,4 @@
   } finally {
     releasing = false
   }
-}
-
-/**
- * 娉ㄥ唽 `pagehide` 鍏滃簳锛氬叧闂爣绛鹃〉/鍒锋柊/璺宠蛋鏃跺皾璇曢噴鏀惧簥浣嶃��
- *
- * 鐢� `sendBeacon` 鑰岄潪 ajax 鈥斺�� 椤甸潰鍗歌浇鏃舵櫘閫氳姹備細琚祻瑙堝櫒鍙栨秷锛宐eacon 涓嶄細銆�
- * 浣� beacon **鏃犳硶鑷畾涔夎姹傚ご**锛堜笉鑳藉甫 Authorization锛夛紝鏁呮敼鐢� URL 浼犱护鐗岋細
- * 鍚庣 `SecurityProperties.tokenParameter` 榛樿灏辨槸 `"token"`锛�
- * 涓� `TokenAuthenticationFilter` 浼氳鍙栧畠锛堣 `obtainAuthorization`锛夈��
- *
- * 娉ㄦ剰锛氭湰椤规槸**灏藉姏鑰屼负**鐨勫厹搴曪紝涓嶄綔涓轰富瑕佹墜娈� 鈥斺��
- * 涓昏鎵嬫鏄笂闈� 1/2/3 涓夋潯鏄庣‘璺緞銆�
- */
-export function setupBedReleaseOnUnload(): void {
-  if (typeof window === 'undefined') return
-  // 骞傜瓑锛氶伩鍏� HMR / 閲嶅璋冪敤瀵艰嚧閲嶅娉ㄥ唽
-  if ((window as any).__bedReleaseUnloadBound) return
-  ;(window as any).__bedReleaseUnloadBound = true
-
-  window.addEventListener('pagehide', () => {
-    const token = getAccessToken()
-    if (!token) return
-    try {
-      const url = `${BASE_URL}/ecg/doctor/release-my-beds?token=${encodeURIComponent(token)}`
-      const ok = navigator.sendBeacon?.(url)
-      if (!ok) {
-        // sendBeacon 涓嶅彲鐢�/琚嫆缁濇椂锛岄��鍥炲悓姝� XHR 鏈�鍚庝竴鎼�
-        const xhr = new XMLHttpRequest()
-        xhr.open('POST', url, false) // 鍚屾锛岀‘淇濆嵏杞藉墠鍙戝嚭
-        xhr.send()
-      }
-    } catch {
-      /* 蹇界暐锛氬嵏杞介樁娈典笉搴旀姤閿� */
-    }
-  })
 }

--
Gitblit v1.9.3