From 3b8457c9c63f0996d8dae63ac988f976da956d38 Mon Sep 17 00:00:00 2001
From: eight <641137800@qq.com>
Date: 星期三, 28 八月 2024 10:58:49 +0800
Subject: [PATCH] update

---
 src/views/ecg/doctor/index.vue |   51 ++++++++++++++++++++++++++++++++++++++++++---------
 1 files changed, 42 insertions(+), 9 deletions(-)

diff --git a/src/views/ecg/doctor/index.vue b/src/views/ecg/doctor/index.vue
index 3189eb1..a19d272 100644
--- a/src/views/ecg/doctor/index.vue
+++ b/src/views/ecg/doctor/index.vue
@@ -1,7 +1,7 @@
 <script setup lang="ts">
 import TitlePanel from "@/views/ecg/doctor/components/TitlePanel.vue";
 import QueuePanel from "@/views/ecg/doctor/components/QueuePanel.vue";
-import { DoctorApi, RoomBedVO } from '@/api/ecg/doctor';
+import {DoctorApi, PatientStatisticVO, RoomBedVO} from '@/api/ecg/doctor';
 import {useUserStore} from "@/store/modules/user";
 import {queueVO} from "@/api/ecg/queue";
 
@@ -12,21 +12,52 @@
     bedNo: userStore.room.bedNo
 }
 
+const patientStat = ref<PatientStatisticVO>({
+    finishedNum: 0,
+    readyNum: 0,
+    passedNum: 0,
+    queuingNum: 0
+})
+
+let state: 'normal' | 'paused' = "normal";
+
 const list = ref<queueVO[]>([])
 
-const nextPatient = async () => {
-  const data = await DoctorApi.nextPatient(roomBedVO)
+const finishNextPatient = async () => {
+  const data = await DoctorApi.finishNextPatient(roomBedVO)
   list.value = data
+
+  const data2 = await DoctorApi.getPatientStatistic(roomBedVO)
+  patientStat.value = data2
 }
 
-const finishPatient = async () => {
-    const data = await DoctorApi.finishPatient(roomBedVO)
+const passNextPatient = async () => {
+    const data = await DoctorApi.passNextPatient(roomBedVO)
     list.value = data
+
+    const data2 = await DoctorApi.getPatientStatistic(roomBedVO)
+    patientStat.value = data2
+}
+
+const getPatientList = async () => {
+    const data = await DoctorApi.getPatientList(roomBedVO)
+    list.value = data
+
+    const data2 = await DoctorApi.getPatientStatistic(roomBedVO)
+    patientStat.value = data2
+}
+
+const pause = async () => {
+  state = 'paused'
+}
+
+const resume = async () => {
+  state = 'normal'
 }
 
 /** 鍒濆鍖� **/
 onMounted(() => {
-  nextPatient()
+    getPatientList()
 })
 
 </script>
@@ -34,7 +65,7 @@
 <template>
   <el-container>
     <el-header style="background-color: var(--el-color-primary-light-7); font-size: 24px">
-      <TitlePanel room="A208"/>
+      <TitlePanel :patientStatistic="patientStat" />
     </el-header>
     <el-container>
       <el-main>
@@ -45,8 +76,10 @@
       </el-aside>
     </el-container>
     <el-container style="justify-content: center;">
-      <el-button type="primary" @click="finishPatient">瀹屾垚</el-button>
-      <el-button type="primary" @click="nextPatient">涓嬩竴浣�</el-button>
+      <el-button type="primary" @click="finishNextPatient">鍙彿</el-button>
+      <el-button type="primary" @click="passNextPatient">杩囧彿</el-button>
+      <el-button v-if="state==='normal'" type="primary" @click="pause">鏆傚仠</el-button>
+      <el-button v-else type="primary" @click="resume">鎭㈠</el-button>
     </el-container>
   </el-container>
 </template>

--
Gitblit v1.9.3