From 3caa6f535e0442143d0e313a723de03472028213 Mon Sep 17 00:00:00 2001
From: eight <641137800@qq.com>
Date: 星期五, 16 八月 2024 18:18:33 +0800
Subject: [PATCH] 医生选择诊室和工位 PASS

---
 src/store/modules/user.ts |   50 ++++++++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 50 insertions(+), 0 deletions(-)

diff --git a/src/store/modules/user.ts b/src/store/modules/user.ts
index b386180..2d5600b 100644
--- a/src/store/modules/user.ts
+++ b/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 {RoomVO} from "@/api/ecg/room";
 
 const { wsCache } = useCache()
 
@@ -19,6 +20,10 @@
   roles: string[]
   isSetUser: boolean
   user: UserVO
+
+  // 鍖荤敓璇婂閫夋嫨
+  isSetRoom: boolean
+  room: RoomVO
 }
 
 export const useUserStore = defineStore('admin-user', {
@@ -31,6 +36,15 @@
       avatar: '',
       nickname: '',
       deptId: 0
+    },
+    // 鍖荤敓璇婂閫夋嫨
+    isSetRoom: false,
+    room: {
+      id: 0,
+      roomId: 0,
+      roomName: "",
+      bedNo: "",
+      onstage: true
     }
   }),
   getters: {
@@ -45,6 +59,13 @@
     },
     getUser(): UserVO {
       return this.user
+    },
+    // 鍖荤敓璇婂閫夋嫨
+    getIsSetRoom(): boolean {
+      return this.isSetRoom
+    },
+    getRoom(): RoomVO {
+      return this.room
     }
   },
   actions: {
@@ -64,6 +85,26 @@
       wsCache.set(CACHE_KEY.USER, userInfo)
       wsCache.set(CACHE_KEY.ROLE_ROUTERS, userInfo.menus)
     },
+    // 鍖荤敓璇婂閫夋嫨
+    async setRoomInfoAction(room: RoomVO) {
+      if (!getAccessToken()) {
+        this.resetState()
+        return null
+      }
+
+      // 鏇存柊 store
+      this.room = room
+      this.isSetRoom = true
+
+      // 鏇存柊 cache
+      const userInfo2 = wsCache.get(CACHE_KEY.USER)
+      if (userInfo2) {
+        userInfo2.room = room
+        userInfo2.isSetRoom = true
+        wsCache.set(CACHE_KEY.USER, userInfo2)
+      }
+    },
+
     async setUserAvatarAction(avatar: string) {
       const userInfo = wsCache.get(CACHE_KEY.USER)
       // NOTE: 鏄惁闇�瑕佸儚`setUserInfoAction`涓�鏍峰垽鏂璥userInfo != null`
@@ -94,6 +135,15 @@
         nickname: '',
         deptId: 0
       }
+      // 鍖荤敓璇婂閫夋嫨
+      this.isSetRoom = false
+      this.room = {
+        id: 0,
+        roomId: 0,
+        roomName: "",
+        bedNo: "",
+        onstage: true
+      }
     }
   }
 })

--
Gitblit v1.9.3