From 49206ee0689d44367b9f5de3decf0c3ec02bfb51 Mon Sep 17 00:00:00 2001 From: eight <641137800@qq.com> Date: 星期二, 15 四月 2025 10:56:18 +0800 Subject: [PATCH] update --- src/views/ecg/doctor/index.vue | 66 +++++++++++++++++++++----------- 1 files changed, 43 insertions(+), 23 deletions(-) diff --git a/src/views/ecg/doctor/index.vue b/src/views/ecg/doctor/index.vue index c239780..52e210f 100644 --- a/src/views/ecg/doctor/index.vue +++ b/src/views/ecg/doctor/index.vue @@ -1,24 +1,27 @@ +<!--璁惧棰嗙敤鎿嶄綔鐣岄潰--> <script setup lang="ts"> import TitlePanel from "@/views/ecg/doctor/components/TitlePanel.vue"; import QueuePanel from "@/views/ecg/doctor/components/QueuePanel.vue"; import {DoctorApi, PatientStatisticVO, RoomBedVO} from '@/api/ecg/doctor'; -import {useUserStore} from "@/store/modules/user"; import {QueueVO} from "@/api/ecg/queue"; import {ElNotification} from "element-plus"; import DevReadyPanel from "@/views/ecg/doctor/components/DevReadyPanel.vue"; +import {useRoomStore} from "@/store/modules/room"; -const userStore = useUserStore(); +const roomStore = useRoomStore(); const roomBedVO: RoomBedVO = { roomId: null, roomName: null, - bedNo: null + bedNo: null, + checkTypes: null, + opType: null } -const onStagePatient = ref<QueueVO>({ +let onStagePatient: QueueVO = { bedNo: "", bookCheckType: 0, bookTimeslot: 0, expired: 0, id: 0, jumpFlag: 0, passed: 0, patGender: 0, patId: "", patName: "", roomId: 0, roomName: "", seqNum: 0, status: 0 -}) +} const patientStat = ref<PatientStatisticVO>({ finishedNum: 0, @@ -27,6 +30,7 @@ queuingNum: 0 }) +const autoCall = ref<boolean>(false); const state = ref<boolean>() const patientList = ref<QueueVO[]>([]) @@ -42,6 +46,9 @@ patientList.value = await DoctorApi.finishReceiveNextPatient(roomBedVO) patientStat.value = await DoctorApi.getDevReadyStatistic(roomBedVO) getOnstagePatient() + + // 鐢ㄤ簬瑙e喅 宸︿晶閲嶇疆鍚� 鑾峰彇褰撳墠 銆愬氨璇婁腑銆戞偅鑰� + setOnStagePatient(onStagePatient) } finally { finishFlag.value = false } @@ -59,15 +66,15 @@ } const callAgain = async () => { - await DoctorApi.callAgainPatient(roomBedVO) + await DoctorApi.callPatientAgain(roomBedVO) } const getOnstagePatient = () => { - const tempPatient : QueueVO | undefined = patientList.value.find(item => item.status === 30) - if (undefined === tempPatient) { - setOnStagePatient(undefined) - } else if (tempPatient.patId !== onStagePatient.value.patId) { - onStagePatient.value= tempPatient + const tempPatient : QueueVO | undefined | null = patientList.value.find(item => item.status === 30) + if (tempPatient == null) { + // setOnStagePatient(undefined) + } else if (tempPatient.patId !== onStagePatient.patId) { + onStagePatient = tempPatient setOnStagePatient(tempPatient) } } @@ -82,13 +89,13 @@ return } - patientList.value = await DoctorApi.getPatientList(roomBedVO) + patientList.value = await DoctorApi.getToBeCheckedPatientList(roomBedVO) getOnstagePatient() patientStat.value = await DoctorApi.getDevReadyStatistic(roomBedVO) const queueVO2 = await DoctorApi.bedDoctorGet(roomBedVO) - if (queueVO2.status === 20) + if (queueVO2.status === 20) // 宸ヤ綅鐘舵�� 鏈夊尰鐢� state.value = true - else if (queueVO2.status === 30) + else if (queueVO2.status === 30) // 宸ヤ綅鐘舵�� 鏆傚仠 state.value = false } @@ -121,10 +128,12 @@ finishFlag.value = true passFlag.value = true - if (userStore.isSetRoom) { - roomBedVO.roomId = userStore.room!.roomId - roomBedVO.roomName = userStore.room!.roomName - roomBedVO.bedNo = userStore.room!.bedNo + if (roomStore.isSetRoom) { + roomBedVO.roomId = roomStore.room!.roomId + roomBedVO.roomName = roomStore.room!.roomName + roomBedVO.bedNo = roomStore.room!.bedNo + roomBedVO.checkTypes = roomStore.room!.checkTypes + roomBedVO.opType = roomStore.room!.opType timerRunFlag = true doctorTimer() @@ -143,7 +152,17 @@ }) const onEventDevReady = () => { - //console.info("onDevRentPanelEvent...") + onStagePatient = { + bedNo: "", bookCheckType: 0, bookTimeslot: 0, expired: 0, id: 0, jumpFlag: 0, passed: 0, + patGender: 0, patId: "", patName: "", roomId: 0, roomName: "", seqNum: 0, status: 0 + } + + console.info("autoCall " + autoCall.value) + if (autoCall.value) { + finishNextPatient() + } else { + initLoad() + } } const onEventRecallFinish = () => { @@ -152,7 +171,7 @@ /** 鎮h�呭彉鏇存搷浣� */ const devReadyPanelRef = ref() -const setOnStagePatient = (tempPatient: QueueVO | undefined) => { +const setOnStagePatient = (tempPatient: QueueVO | undefined | null) => { devReadyPanelRef.value.setPatient(tempPatient) } @@ -161,17 +180,18 @@ <template> <el-container> <el-header style="background-color: var(--el-color-primary-light-7); font-size: 24px"> - <TitlePanel :titleType=0 :room="roomBedVO" :patientStatistic="patientStat" /> + <TitlePanel :titleType=1 :room="roomBedVO" :patientStatistic="patientStat" /> </el-header> <el-container style="height: 100%;"> <el-main style="border: solid var(--el-color-primary-light-7)"> <DevReadyPanel :room="roomBedVO" ref="devReadyPanelRef" @event_dev_ready="onEventDevReady"/> </el-main> <el-aside width="400px" style="border: solid var(--el-color-primary-light-7)"> - <QueuePanel :queue="patientList" @event_RecallFinish="onEventRecallFinish"/> + <QueuePanel :room="roomBedVO" :queue="patientList" @event_RecallFinish="onEventRecallFinish"/> </el-aside> </el-container> <el-container class="right-bottom"> + <el-checkbox label="鑷姩 " v-model="autoCall" /> <el-button :disabled="finishFlag" type="primary" @click="finishNextPatient">鍙彿</el-button> <el-button :disabled="passFlag" type="primary" @click="passNextPatient">杩囧彿</el-button> <el-button type="primary" @click="callAgain">閲嶅彨</el-button> @@ -184,7 +204,7 @@ .right-bottom { position: absolute; bottom: 50px; - right: 100px; + right: 80px; //background-color: #f00; //color: #fff; //padding: 10px; -- Gitblit v1.9.3