From 9e023fc04103803ff420be62b4e75a89b044662c Mon Sep 17 00:00:00 2001 From: eight <641137800@qq.com> Date: 星期一, 18 十一月 2024 11:25:25 +0800 Subject: [PATCH] 常规 & 装机 界面 自动叫号 控制 --- src/views/ecg/doctor/DevInstall.vue | 63 ++++++++++++++++++++----------- 1 files changed, 40 insertions(+), 23 deletions(-) diff --git a/src/views/ecg/doctor/DevInstall.vue b/src/views/ecg/doctor/DevInstall.vue index 970f8af..b75e50f 100644 --- a/src/views/ecg/doctor/DevInstall.vue +++ b/src/views/ecg/doctor/DevInstall.vue @@ -1,5 +1,5 @@ <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'; @@ -12,10 +12,12 @@ const roomBedVO = ref<RoomBedVO>({ roomId: null, roomName: null, - bedNo: null + bedNo: null, + checkTypes: null, + opType: null }) -const onStagePatient = ref<QueueVO>({ +const installingPatient = ref<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 }) @@ -23,10 +25,12 @@ 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) - getOnstagePatient() + patientStat.value = await DoctorApi.getDevInstallStatistic(roomBedVO.value) + getInstallingPatient() + + // 鐢ㄤ簬瑙e喅 宸︿晶閲嶇疆鍚� 鑾峰彇褰撳墠 銆愬畨瑁呬腑銆戞偅鑰� + setInstallingPatient(installingPatient.value) } finally { finishFlag.value = false } @@ -50,25 +57,25 @@ const passNextPatient = async () => { passFlag.value = true try { - patientList.value = await DoctorApi.passNextPatient(roomBedVO.value) - patientStat.value = await DoctorApi.getPatientStatistic(roomBedVO.value) - getOnstagePatient() + patientList.value = await DoctorApi.passInstallNextPatient(roomBedVO.value) + patientStat.value = await DoctorApi.getDevInstallStatistic(roomBedVO.value) + getInstallingPatient() } finally { passFlag.value = false } } const callAgain = async () => { - await DoctorApi.callAgainPatient(roomBedVO.value) + await DoctorApi.callInstallingPatientAgain(roomBedVO.value) } -const getOnstagePatient = () => { - const tempPatient : QueueVO | undefined = patientList.value.find(item => item.status === 30) +const getInstallingPatient = () => { + const tempPatient : QueueVO | undefined = patientList.value.find(item => item.status === 36) if (undefined === tempPatient) { - setOnStagePatient(undefined) - } else if (tempPatient.patId !== onStagePatient.value.patId) { - onStagePatient.value= tempPatient - setOnStagePatient(tempPatient) + //setInstallingPatient(undefined) + } else if (tempPatient.patId !== installingPatient.value.patId) { + installingPatient.value= tempPatient + setInstallingPatient(tempPatient) } } @@ -82,9 +89,9 @@ return } - patientList.value = await DoctorApi.getReceivedPatientList(roomBedVO.value) - getOnstagePatient() - patientStat.value = await DoctorApi.getPatientStatistic(roomBedVO.value) + patientList.value = await DoctorApi.getToBeInstalledPatientList(roomBedVO.value) + getInstallingPatient() + patientStat.value = await DoctorApi.getDevInstallStatistic(roomBedVO.value) const queueVO2 = await DoctorApi.bedDoctorGet(roomBedVO.value) if (queueVO2.status === 20) state.value = true @@ -125,6 +132,8 @@ roomBedVO.value.roomId = userStore.room!.roomId roomBedVO.value.roomName = userStore.room!.roomName roomBedVO.value.bedNo = userStore.room!.bedNo + roomBedVO.value.checkTypes = userStore.room!.checkTypes + roomBedVO.value.opType = userStore.room!.opType timerRunFlag = true doctorTimer() @@ -146,6 +155,13 @@ const onEventDevInstall = () => { //console.info("onDevInstallPanelEvent...") + installingPatient.value.patId = "" + + if (autoCall.value) { + finishNextPatient() + } else { + initLoad() + } } const onEventRecallFinish = () => { @@ -154,7 +170,7 @@ /** 鎮h�呭彉鏇存搷浣� */ const devInstallPanelRef = ref() -const setOnStagePatient = (tempPatient: QueueVO | undefined) => { +const setInstallingPatient = (tempPatient: QueueVO | undefined) => { devInstallPanelRef.value.setPatient(tempPatient) } @@ -163,17 +179,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 ref="devInstallPanelRef" @event_dev_install="onEventDevInstall"/> + <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 +203,7 @@ .right-bottom { position: absolute; bottom: 50px; - right: 100px; + right: 80px; //background-color: #f00; //color: #fff; //padding: 10px; -- Gitblit v1.9.3