From 41004049209c22a9d029a992c7b84ccfc8dd36cc Mon Sep 17 00:00:00 2001 From: eight <641137800@qq.com> Date: 星期四, 15 八月 2024 17:55:21 +0800 Subject: [PATCH] update --- src/views/ecg/appointment/AppointmentConfirm.vue | 6 src/views/ecg/appointment/AppointmentForm.vue | 226 +++++++++++++++++++++++++++----------------- src/views/ecg/room/RoomStatusSetting.vue | 14 ++ src/components/RoomStatus/src/RoomStatus.vue | 2 src/views/ecg/queue/index.vue | 17 +- src/api/ecg/queue/index.ts | 8 + 6 files changed, 169 insertions(+), 104 deletions(-) diff --git a/src/api/ecg/queue/index.ts b/src/api/ecg/queue/index.ts index 2a37f08..30d6f90 100644 --- a/src/api/ecg/queue/index.ts +++ b/src/api/ecg/queue/index.ts @@ -12,7 +12,8 @@ status: number // 10:鎺掗槦涓� 20:鍊欒瘖鍑嗗 30:灏辫瘖涓� 40:灏辫瘖瀹屾垚 50:杩囧彿 60:杩囨湡 passed: boolean // 杩囧彿鏍囪 expired: boolean // 棰勭害杩囨湡鏍囪 - roomNum: string // 璇婂缂栧彿 + roomId: number // 璇婂缂栧彿 + roomName: string // 璇婂鍚嶇О bedNum: string // 璇婄枟搴婄紪鍙� } @@ -46,5 +47,10 @@ // 瀵煎嚭鎺掗槦 Excel exportqueue: async (params) => { return await request.download({ url: `/ecg/queue/export-excel`, params }) + }, + + // 鍒濆鍖栭槦鍒椾俊鎭紝鐢ㄤ簬寮�璇婅缃� + openingSetting: async () => { + return await request.get({ url: `/ecg/queue/opening-setting` }) } } diff --git a/src/components/RoomStatus/src/RoomStatus.vue b/src/components/RoomStatus/src/RoomStatus.vue index 1023d21..503b06b 100644 --- a/src/components/RoomStatus/src/RoomStatus.vue +++ b/src/components/RoomStatus/src/RoomStatus.vue @@ -26,7 +26,7 @@ </script> <template> - <el-card style="width: 180px" shadow="hover" > + <el-card style="width: 200px" shadow="hover" > <template #header>{{title}}</template> <div v-for="(bedItem, index) in bedList" :key="index"> <img v-if="bedItem.onstage" diff --git a/src/views/ecg/appointment/AppointmentConfirm.vue b/src/views/ecg/appointment/AppointmentConfirm.vue index db8a21c..38dd2f9 100644 --- a/src/views/ecg/appointment/AppointmentConfirm.vue +++ b/src/views/ecg/appointment/AppointmentConfirm.vue @@ -126,7 +126,7 @@ patId: undefined }) -const formData = ref({ +const formData = ref<AppointmentVO>({ id: 0, patId: "", patName: "", @@ -144,7 +144,7 @@ bookId: "", bookTime: new Date(), bookDate: new Date(), - bookTimeslot: 10001015, + bookTimeslot: 9000930, bookCheckType: 10 }) const formRef = ref() // 琛ㄥ崟 Ref @@ -200,7 +200,7 @@ bookId: "", bookTime: new Date(), bookDate: new Date(), - bookTimeslot: 10001015, + bookTimeslot: 9000930, bookCheckType: 10 } formRef.value?.resetFields() diff --git a/src/views/ecg/appointment/AppointmentForm.vue b/src/views/ecg/appointment/AppointmentForm.vue index 3d9b7b0..3fdc288 100644 --- a/src/views/ecg/appointment/AppointmentForm.vue +++ b/src/views/ecg/appointment/AppointmentForm.vue @@ -1,95 +1,147 @@ <template> - <Dialog :title="dialogTitle" v-model="dialogVisible"> + <Dialog width="60%" :title="dialogTitle" v-model="dialogVisible"> <el-form - ref="formRef" - :model="formData" - :rules="formRules" - label-width="100px" - v-loading="formLoading" + ref="formRef" + :model="formData" + :rules="formRules" + label-width="100px" + v-loading="formLoading" > - <el-form-item label="鎮h�呯紪鍙�" prop="patId"> - <el-input v-model="formData.patId" placeholder="璇疯緭鍏ユ偅鑰呯紪鍙�" /> - </el-form-item> - <el-form-item label="鎮h�呭鍚�" prop="patName"> - <el-input v-model="formData.patName" placeholder="璇疯緭鍏ユ偅鑰呭鍚�" /> - </el-form-item> - <el-form-item label="鎮h�呮�у埆" prop="patGender"> - <el-radio-group v-model="formData.patGender"> - <el-radio - v-for="dict in getIntDictOptions(DICT_TYPE.SYSTEM_USER_SEX)" - :key="dict.value" - :label="dict.value" - > - {{ dict.label }} - </el-radio> - </el-radio-group> - </el-form-item> - <el-form-item label="棰勭害缂栧彿" prop="bookId"> - <el-input v-model="formData.bookId" placeholder="璇疯緭鍏ラ绾︾紪鍙�" /> - </el-form-item> - <el-form-item label="棰勭害鏃ユ湡" prop="bookDate"> - <el-date-picker - v-model="formData.bookDate" - type="date" - value-format="x" - placeholder="閫夋嫨棰勭害鏃ユ湡" - /> - </el-form-item> - <el-form-item label="棰勭害鏃堕棿娈�" prop="bookTimeslot"> - <el-select v-model="formData.bookTimeslot" placeholder="璇烽�夋嫨棰勭害鏃堕棿娈�"> + <el-row :gutter="20"> + <el-col :span="12"> + <el-form-item label="鎮h�呯紪鍙�" prop="patId"> + <el-input v-model="formData.patId" placeholder="璇疯緭鍏ユ偅鑰呯紪鍙�" /> + </el-form-item> + </el-col> + <el-col :span="12"> + <el-form-item label="鎮h�呭鍚�" prop="patName"> + <el-input v-model="formData.patName" placeholder="璇疯緭鍏ユ偅鑰呭鍚�" /> + </el-form-item> + </el-col> + </el-row> + <el-row :gutter="20"> + <el-col :span="12"> + <el-form-item label="鎮h�呮�у埆" prop="patGender"> + <el-radio-group v-model="formData.patGender"> + <el-radio + v-for="dict in getIntDictOptions(DICT_TYPE.SYSTEM_USER_SEX)" + :key="dict.value" + :label="dict.value" + > + {{ dict.label }} + </el-radio> + </el-radio-group> + </el-form-item> + </el-col> + <el-col :span="12"> + <el-form-item label="棰勭害缂栧彿" prop="bookId"> + <el-input v-model="formData.bookId" placeholder="璇疯緭鍏ラ绾︾紪鍙�" /> + </el-form-item> + </el-col> + </el-row> + <el-row :gutter="20"> + <el-col :span="12"> + <el-form-item label="棰勭害鏃ユ湡" prop="bookDate"> + <el-date-picker + v-model="formData.bookDate" + type="date" + value-format="x" + placeholder="閫夋嫨棰勭害鏃ユ湡" + /> + </el-form-item> + </el-col> + <el-col :span="12"> + <el-form-item label="棰勭害鏃堕棿娈�" prop="bookTimeslot"> + <el-select v-model="formData.bookTimeslot" placeholder="璇烽�夋嫨棰勭害鏃堕棿娈�"> <el-option - v-for="dict in getIntDictOptions(DICT_TYPE.ECG_BOOK_TIMESLOT)" - :key="dict.value" - :label="dict.label" - :value="dict.value" + v-for="dict in getIntDictOptions(DICT_TYPE.ECG_BOOK_TIMESLOT)" + :key="dict.value" + :label="dict.label" + :value="dict.value" /> - </el-select> - </el-form-item> - <el-form-item label="棰勭害妫�鏌ョ被鍨�" prop="bookCheckType"> - <el-select v-model="formData.bookCheckType" placeholder="璇烽�夋嫨棰勭害妫�鏌ョ被鍨�"> + </el-select> + </el-form-item> + </el-col> + </el-row> + <el-row :gutter="20"> + <el-col :span="12"> + <el-form-item label="棰勭害妫�鏌ョ被鍨�" prop="bookCheckType"> + <el-select v-model="formData.bookCheckType" placeholder="璇烽�夋嫨棰勭害妫�鏌ョ被鍨�"> <el-option - v-for="dict in getIntDictOptions(DICT_TYPE.ECG_CHECK_TYPE)" - :key="dict.value" - :label="dict.label" - :value="dict.value" + v-for="dict in getIntDictOptions(DICT_TYPE.ECG_CHECK_TYPE)" + :key="dict.value" + :label="dict.label" + :value="dict.value" /> - </el-select> - </el-form-item> - <el-form-item label="鎮h�呯敓鏃�" prop="patBirthday"> - <el-date-picker - v-model="formData.patBirthday" - type="date" - value-format="x" - placeholder="閫夋嫨鎮h�呯敓鏃�" - /> - </el-form-item> - <el-form-item label="鎮h�呮墜鏈�" prop="patMobile"> - <el-input v-model="formData.patMobile" placeholder="璇疯緭鍏ユ偅鑰呮墜鏈�" /> - </el-form-item> - <el-form-item label="鎮h�呯數璇�" prop="patPhone"> - <el-input v-model="formData.patPhone" placeholder="璇疯緭鍏ユ偅鑰呯數璇�" /> - </el-form-item> - <el-form-item label="韬唤璇佸彿" prop="patIdentityId"> - <el-input v-model="formData.patIdentityId" placeholder="璇疯緭鍏ヨ韩浠借瘉鍙�" /> - </el-form-item> - <el-form-item label="鎮h�呭湴鍧�" prop="patAddr"> - <el-input v-model="formData.patAddr" placeholder="璇疯緭鍏ユ偅鑰呭湴鍧�" /> - </el-form-item> - <el-form-item label="鎮h�呮墍鍦ㄧ瀹や唬鐮�" prop="patDeptCode"> - <el-input v-model="formData.patDeptCode" placeholder="璇疯緭鍏ユ偅鑰呮墍鍦ㄧ瀹や唬鐮�" /> - </el-form-item> - <el-form-item label="鎮h�呮墍鍦ㄧ瀹ゅ悕绉�" prop="patDeptDesc"> - <el-input v-model="formData.patDeptDesc" placeholder="璇疯緭鍏ユ偅鑰呮墍鍦ㄧ瀹ゅ悕绉�" /> - </el-form-item> - <el-form-item label="鎮h�呮墍鍦ㄧ梾鍖轰唬鐮�" prop="patWardCode"> - <el-input v-model="formData.patWardCode" placeholder="璇疯緭鍏ユ偅鑰呮墍鍦ㄧ梾鍖轰唬鐮�" /> - </el-form-item> - <el-form-item label="鎮h�呮墍鍦ㄧ梾鍖哄悕绉�" prop="patWardDesc"> - <el-input v-model="formData.patWardDesc" placeholder="璇疯緭鍏ユ偅鑰呮墍鍦ㄧ梾鍖哄悕绉�" /> - </el-form-item> - <el-form-item label="搴婂彿" prop="patBedNo"> - <el-input v-model="formData.patBedNo" placeholder="璇疯緭鍏ュ簥鍙�" /> - </el-form-item> + </el-select> + </el-form-item> + </el-col> + <el-col :span="12"> + <el-form-item label="鎮h�呯敓鏃�" prop="patBirthday"> + <el-date-picker + v-model="formData.patBirthday" + type="date" + value-format="x" + placeholder="閫夋嫨鎮h�呯敓鏃�" + /> + </el-form-item> + </el-col> + </el-row> + <el-row :gutter="20"> + <el-col :span="12"> + <el-form-item label="鎮h�呮墜鏈�" prop="patMobile"> + <el-input v-model="formData.patMobile" placeholder="璇疯緭鍏ユ偅鑰呮墜鏈�" /> + </el-form-item> + </el-col> + <el-col :span="12"> + <el-form-item label="鎮h�呯數璇�" prop="patPhone"> + <el-input v-model="formData.patPhone" placeholder="璇疯緭鍏ユ偅鑰呯數璇�" /> + </el-form-item> + </el-col> + </el-row> + <el-row :gutter="20"> + <el-col :span="12"> + <el-form-item label="韬唤璇佸彿" prop="patIdentityId"> + <el-input v-model="formData.patIdentityId" placeholder="璇疯緭鍏ヨ韩浠借瘉鍙�" /> + </el-form-item> + </el-col> + <el-col :span="12"> + <el-form-item label="鎮h�呭湴鍧�" prop="patAddr"> + <el-input v-model="formData.patAddr" placeholder="璇疯緭鍏ユ偅鑰呭湴鍧�" /> + </el-form-item> + </el-col> + </el-row> + <el-row :gutter="20"> + <el-col :span="12"> + <el-form-item label="鎮h�呮墍鍦ㄧ瀹や唬鐮�" prop="patDeptCode"> + <el-input v-model="formData.patDeptCode" placeholder="璇疯緭鍏ユ偅鑰呮墍鍦ㄧ瀹や唬鐮�" /> + </el-form-item> + </el-col> + <el-col :span="12"> + <el-form-item label="鎮h�呮墍鍦ㄧ瀹ゅ悕绉�" prop="patDeptDesc"> + <el-input v-model="formData.patDeptDesc" placeholder="璇疯緭鍏ユ偅鑰呮墍鍦ㄧ瀹ゅ悕绉�" /> + </el-form-item> + </el-col> + </el-row> + <el-row :gutter="20"> + <el-col :span="12"> + <el-form-item label="鎮h�呮墍鍦ㄧ梾鍖轰唬鐮�" prop="patWardCode"> + <el-input v-model="formData.patWardCode" placeholder="璇疯緭鍏ユ偅鑰呮墍鍦ㄧ梾鍖轰唬鐮�" /> + </el-form-item> + </el-col> + <el-col :span="12"> + <el-form-item label="鎮h�呮墍鍦ㄧ梾鍖哄悕绉�" prop="patWardDesc"> + <el-input v-model="formData.patWardDesc" placeholder="璇疯緭鍏ユ偅鑰呮墍鍦ㄧ梾鍖哄悕绉�" /> + </el-form-item> + </el-col> + </el-row> + <el-row :gutter="20"> + <el-col :span="12"> + <el-form-item label="搴婂彿" prop="patBedNo"> + <el-input v-model="formData.patBedNo" placeholder="璇疯緭鍏ュ簥鍙�" /> + </el-form-item> + </el-col> + </el-row> </el-form> <template #footer> <el-button @click="submitForm" type="primary" :disabled="formLoading">纭� 瀹�</el-button> @@ -128,7 +180,7 @@ bookId: undefined, bookTime: undefined, bookDate: new Date().getTime(), - bookTimeslot: 10001015, + bookTimeslot: 9000930, bookCheckType: 10 }) const formRules = reactive({ @@ -203,7 +255,7 @@ bookId: undefined, bookTime: undefined, bookDate: new Date().getTime(), - bookTimeslot: 10001015, + bookTimeslot: 9000930, bookCheckType: 10 } formRef.value?.resetFields() diff --git a/src/views/ecg/queue/index.vue b/src/views/ecg/queue/index.vue index 1108742..6f15206 100644 --- a/src/views/ecg/queue/index.vue +++ b/src/views/ecg/queue/index.vue @@ -80,18 +80,18 @@ /> </el-select> </el-form-item> - <el-form-item label="璇婂缂栧彿" prop="roomNum"> + <el-form-item label="璇婂缂栧彿" prop="roomId"> <el-input - v-model="queryParams.roomNum" + v-model="queryParams.roomId" placeholder="璇疯緭鍏ヨ瘖瀹ょ紪鍙�" clearable @keyup.enter="handleQuery" class="!w-240px" /> </el-form-item> - <el-form-item label="璇婄枟搴婂彿" prop="bedNum"> + <el-form-item label="璇婄枟搴婂彿" prop="bedNo"> <el-input - v-model="queryParams.bedNum" + v-model="queryParams.bedNo" placeholder="璇疯緭鍏ヨ瘖鐤楀簥鍙�" clearable @keyup.enter="handleQuery" @@ -158,8 +158,9 @@ </el-table-column> <el-table-column label="杩囧彿鏍囪" align="center" prop="passed" /> <el-table-column label="杩囨湡鏍囪" align="center" prop="expired" /> - <el-table-column label="璇婂缂栧彿" align="center" prop="roomNum" /> - <el-table-column label="璇婄枟搴婂彿" align="center" prop="bedNum" /> + <el-table-column label="璇婂缂栧彿" align="center" prop="roomId" /> + <el-table-column label="璇婂鍚嶇О" align="center" prop="roomName" /> + <el-table-column label="璇婄枟搴婂彿" align="center" prop="bedNo" /> <el-table-column label="鍒涘缓鏃堕棿" align="center" @@ -229,8 +230,8 @@ status: undefined, passed: undefined, expired: undefined, - roomNum: undefined, - bedNum: undefined, + roomId: undefined, + bedNo: undefined, createTime: [] }) const queryFormRef = ref() // 鎼滅储鐨勮〃鍗� diff --git a/src/views/ecg/room/RoomStatusSetting.vue b/src/views/ecg/room/RoomStatusSetting.vue index 82ebdbc..a10faeb 100644 --- a/src/views/ecg/room/RoomStatusSetting.vue +++ b/src/views/ecg/room/RoomStatusSetting.vue @@ -1,14 +1,16 @@ <template> - <div style="display: flex; flex-wrap: wrap;"> - <div class=wrap v-for="(value2, key) in bedMap" :key="key"> - <RoomStatus :title="key" :bedList="value2"/> + <div style="display: flex; flex-wrap: wrap; margin-bottom: 20px"> + <div class=wrap v-for="(value, key) in bedMap" :key="key"> + <RoomStatus :title="key" :bedList="value"/> </div> </div> + <el-button @click="startUsing">鍚敤</el-button> </template> <script setup lang="ts"> import {RoomStatus} from "@/components/RoomStatus" import { RoomApi, RoomVO } from '@/api/ecg/room' +import { queueApi, queueVO } from '@/api/ecg/queue' const bedMap = ref<Map<String, RoomVO[]>>() // 鍒楄〃鐨勬暟鎹� @@ -16,6 +18,10 @@ const getList = async () => { const data = await RoomApi.getAllBedMap() bedMap.value = data as Map<String, RoomVO[]> +} + +const startUsing = async () => { + await queueApi.openingSetting(); } /** 鍒濆鍖� **/ @@ -27,6 +33,6 @@ <style scoped lang="scss"> .wrap { - margin-right: 10px; + margin-right: 20px; } </style> -- Gitblit v1.9.3