From 563952b6d7c953ab7888512ea6c78d9cad0f80b6 Mon Sep 17 00:00:00 2001 From: eight <641137800@qq.com> Date: 星期二, 15 四月 2025 13:26:50 +0800 Subject: [PATCH] update --- src/views/ecg/doctor/DevInstall.vue | 69 ++++++++++++++++++++++------------ 1 files changed, 44 insertions(+), 25 deletions(-) diff --git a/src/views/ecg/doctor/DevInstall.vue b/src/views/ecg/doctor/DevInstall.vue index c2d66dc..6b4866c 100644 --- a/src/views/ecg/doctor/DevInstall.vue +++ b/src/views/ecg/doctor/DevInstall.vue @@ -1,32 +1,36 @@ <script setup lang="ts"> -import TitleInstallPanel from "@/views/ecg/doctor/components/TitleInstallPanel.vue"; +import TitlePanel from "@/views/ecg/doctor/components/TitlePanel.vue"; import DevInstallPanel from "@/views/ecg/doctor/components/DevInstallPanel.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 {useRoomStore} from "@/store/modules/room"; -const userStore = useUserStore(); +const roomStore = useRoomStore(); const roomBedVO = ref<RoomBedVO>({ roomId: null, roomName: null, - bedNo: null + bedNo: null, + checkTypes: null, + opType: null }) -const installingPatient = ref<QueueVO>({ +let installingPatient: 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, readyNum: 0, + receivedNum: 0, passedNum: 0, queuingNum: 0 }) +const autoCall = ref<boolean>(false); const state = ref<boolean>() const patientList = ref<QueueVO[]>([]) @@ -40,8 +44,11 @@ finishFlag.value = true try { patientList.value = await DoctorApi.finishInstallNextPatient(roomBedVO.value) - patientStat.value = await DoctorApi.getPatientStatistic(roomBedVO.value) + patientStat.value = await DoctorApi.getDevInstallStatistic(roomBedVO.value) getInstallingPatient() + + // 鐢ㄤ簬瑙e喅 宸︿晶閲嶇疆鍚� 鑾峰彇褰撳墠 銆愬畨瑁呬腑銆戞偅鑰� + setInstallingPatient(installingPatient) } finally { finishFlag.value = false } @@ -50,8 +57,8 @@ const passNextPatient = async () => { passFlag.value = true try { - patientList.value = await DoctorApi.passNextPatient(roomBedVO.value) - patientStat.value = await DoctorApi.getPatientStatistic(roomBedVO.value) + patientList.value = await DoctorApi.passInstallNextPatient(roomBedVO.value) + patientStat.value = await DoctorApi.getDevInstallStatistic(roomBedVO.value) getInstallingPatient() } finally { passFlag.value = false @@ -59,15 +66,15 @@ } const callAgain = async () => { - await DoctorApi.callAgainPatient(roomBedVO.value) + await DoctorApi.callInstallingPatientAgain(roomBedVO.value) } const getInstallingPatient = () => { - const tempPatient : QueueVO | undefined = patientList.value.find(item => item.status === 36) - if (undefined === tempPatient) { - setInstallingPatient(undefined) - } else if (tempPatient.patId !== installingPatient.value.patId) { - installingPatient.value= tempPatient + const tempPatient : QueueVO | undefined | null = patientList.value.find(item => item.status === 36) + if (tempPatient == null) { + //setInstallingPatient(undefined) + } else if (tempPatient.patId !== installingPatient.patId) { + installingPatient = tempPatient setInstallingPatient(tempPatient) } } @@ -82,9 +89,9 @@ return } - patientList.value = await DoctorApi.getReceivedPatientList(roomBedVO.value) + patientList.value = await DoctorApi.getToBeInstalledPatientList(roomBedVO.value) getInstallingPatient() - patientStat.value = await DoctorApi.getPatientStatistic(roomBedVO.value) + patientStat.value = await DoctorApi.getDevInstallStatistic(roomBedVO.value) const queueVO2 = await DoctorApi.bedDoctorGet(roomBedVO.value) if (queueVO2.status === 20) state.value = true @@ -121,10 +128,12 @@ finishFlag.value = true passFlag.value = true - if (userStore.isSetRoom) { - roomBedVO.value.roomId = userStore.room!.roomId - roomBedVO.value.roomName = userStore.room!.roomName - roomBedVO.value.bedNo = userStore.room!.bedNo + if (roomStore.isSetRoom) { + roomBedVO.value.roomId = roomStore.room!.roomId + roomBedVO.value.roomName = roomStore.room!.roomName + roomBedVO.value.bedNo = roomStore.room!.bedNo + roomBedVO.value.checkTypes = roomStore.room!.checkTypes + roomBedVO.value.opType = roomStore.room!.opType timerRunFlag = true doctorTimer() @@ -145,7 +154,16 @@ }) const onEventDevInstall = () => { - //console.info("onDevInstallPanelEvent...") + installingPatient = { + bedNo: "", bookCheckType: 0, bookTimeslot: 0, expired: 0, id: 0, jumpFlag: 0, passed: 0, + patGender: 0, patId: "", patName: "", roomId: 0, roomName: "", seqNum: 0, status: 0 + } + + if (autoCall.value) { + finishNextPatient() + } else { + initLoad() + } } const onEventRecallFinish = () => { @@ -163,17 +181,18 @@ <template> <el-container> <el-header style="background-color: var(--el-color-primary-light-7); font-size: 24px"> - <TitleInstallPanel :room="roomBedVO" :patientStatistic="patientStat" /> + <TitlePanel :titleType=2 :room="roomBedVO" :patientStatistic="patientStat" /> </el-header> <el-container style="height: 100%;"> <el-main style="border: solid var(--el-color-primary-light-7)"> <DevInstallPanel :room="roomBedVO" ref="devInstallPanelRef" @event_dev_install="onEventDevInstall"/> </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> @@ -186,7 +205,7 @@ .right-bottom { position: absolute; bottom: 50px; - right: 100px; + right: 80px; //background-color: #f00; //color: #fff; //padding: 10px; -- Gitblit v1.9.3