From d9e041b1020bebbfdaaa66141d94399340f88a17 Mon Sep 17 00:00:00 2001 From: eight <641137800@qq.com> Date: 星期二, 27 八月 2024 09:11:24 +0800 Subject: [PATCH] update --- src/views/ecg/room/RoomLoginSelect.vue | 49 ++++++++++++++++++++++++++++++++++++++++++++----- 1 files changed, 44 insertions(+), 5 deletions(-) diff --git a/src/views/ecg/room/RoomLoginSelect.vue b/src/views/ecg/room/RoomLoginSelect.vue index 8c30904..1498718 100644 --- a/src/views/ecg/room/RoomLoginSelect.vue +++ b/src/views/ecg/room/RoomLoginSelect.vue @@ -13,6 +13,7 @@ <script setup lang="ts"> import {RoomBedSelect} from "@/components/RoomBedSelect" import { RoomApi, RoomVO } from '@/api/ecg/room' +import { queueApi, queueVO } from '@/api/ecg/queue' import {useUserStore} from "@/store/modules/user"; import {CACHE_KEY, useCache} from "@/hooks/web/useCache"; import {ElMessage} from "element-plus"; @@ -26,24 +27,48 @@ const route = useRoute(); const userStore = useUserStore() +const curUser = userStore.getUser -const bedMap = ref<Map<String, RoomVO[]>>() // 鍒楄〃鐨勬暟鎹� +const bedMap = ref<Map<string, RoomVO[]>>() // 鍒楄〃鐨勬暟鎹� + +const originalSel = ref<RoomVO>({ + id: 0, + roomId: 0, + roomName: "", + bedNo: "", + status: 0, + docId: 0, + docName: "" +}); const curSel = ref<RoomVO>({ id: 0, roomId: 0, roomName: "", bedNo: "", - onstage: true - }); + status: 0, + docId: 0, + docName: "" +}); /** 鏌ヨ鍒楄〃 */ const getList = async () => { const data = await RoomApi.getOnstageBedMap() - bedMap.value = data as Map<String, RoomVO[]> + bedMap.value = data; + + for (const key in data) { + const roomVOArray = data[key] as RoomVO[]; + roomVOArray.forEach((roomVO) => { + if (roomVO.docId === curUser.id) { + originalSel.value = roomVO + curSel.value = roomVO + return + } + } ) + } } -const roomConfirm = () => { +const roomConfirm = async () => { console.info(curSel.value) if (curSel.value.roomId === 0) { @@ -55,9 +80,23 @@ return } + if (curSel.value !== originalSel.value) { + const data = await queueApi.bedDoctorOn(curSel.value) + if (data !== 0) { + ElMessage({ + message: '鍐呴儴閿欒!' + data, + type: 'info', + duration: 3000 // 鑷姩鍏抽棴鏃堕棿锛岄粯璁や负3000ms + }); + return + } + } + userStore.setRoomInfoAction(curSel.value) if (isStringEmpty(route.redirectedFrom?.fullPath)) push({ path: "/"}) + else if(route.redirectedFrom?.fullPath === "/login-room-select" ) + push({ path: "/"}) else push({ path: route.redirectedFrom?.fullPath}) } -- Gitblit v1.9.3