From e6dff096a9e94d1a5323e82f74bc1368ff7a72d6 Mon Sep 17 00:00:00 2001 From: eight <641137800@qq.com> Date: 星期四, 12 九月 2024 13:47:17 +0800 Subject: [PATCH] 装机 作业列表 --- src/views/ecg/queue/index.vue | 148 ++++++++++++++++++++++++++---------------------- 1 files changed, 80 insertions(+), 68 deletions(-) diff --git a/src/views/ecg/queue/index.vue b/src/views/ecg/queue/index.vue index 07d3827..c226d11 100644 --- a/src/views/ecg/queue/index.vue +++ b/src/views/ecg/queue/index.vue @@ -26,24 +26,20 @@ class="!w-240px" /> </el-form-item> - <el-form-item label="鎮h�呮�у埆" prop="patGender"> - <el-select - v-model="queryParams.patGender" - placeholder="璇烽�夋嫨鎮h�呮�у埆" - clearable - class="!w-240px" - > - <el-option label="璇烽�夋嫨瀛楀吀鐢熸垚" value="" /> - </el-select> - </el-form-item> <el-form-item label="棰勭害鏃舵" prop="bookTimeslot"> - <el-input + <el-select v-model="queryParams.bookTimeslot" placeholder="璇疯緭鍏ラ绾︽椂娈�" clearable - @keyup.enter="handleQuery" class="!w-240px" - /> + > + <el-option + 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 @@ -52,7 +48,12 @@ clearable class="!w-240px" > - <el-option label="璇烽�夋嫨瀛楀吀鐢熸垚" value="" /> + <el-option + 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="鎺掗槦搴忓彿" prop="seqNum"> @@ -64,63 +65,37 @@ class="!w-240px" /> </el-form-item> - <el-form-item label="鐘舵��" prop="status"> + <el-form-item label="鎺掗槦鐘舵��" prop="status"> <el-select v-model="queryParams.status" - placeholder="璇烽�夋嫨鐘舵��" + placeholder="璇烽�夋嫨鎺掗槦鐘舵��" clearable class="!w-240px" > - <el-option label="璇烽�夋嫨瀛楀吀鐢熸垚" value="" /> + <el-option + v-for="dict in getIntDictOptions(DICT_TYPE.ECG_QUEUE_STATUS)" + :key="dict.value" + :label="dict.label" + :value="dict.value" + /> </el-select> </el-form-item> - <el-form-item label="杩囧彿鏍囪" prop="passed"> - <el-select - v-model="queryParams.passed" - placeholder="璇烽�夋嫨杩囧彿鏍囪" - clearable - class="!w-240px" - > - <el-option label="璇烽�夋嫨瀛楀吀鐢熸垚" value="" /> - </el-select> - </el-form-item> - <el-form-item label="棰勭害杩囨湡鏍囪" prop="expired"> - <el-select - v-model="queryParams.expired" - placeholder="璇烽�夋嫨棰勭害杩囨湡鏍囪" - clearable - class="!w-240px" - > - <el-option label="璇烽�夋嫨瀛楀吀鐢熸垚" value="" /> - </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" - placeholder="璇疯緭鍏ヨ瘖鐤楀簥缂栧彿" + v-model="queryParams.bedNo" + placeholder="璇疯緭鍏ヨ瘖鐤楀簥鍙�" clearable @keyup.enter="handleQuery" class="!w-240px" - /> - </el-form-item> - <el-form-item label="鍒涘缓鏃堕棿" prop="createTime"> - <el-date-picker - v-model="queryParams.createTime" - value-format="YYYY-MM-DD HH:mm:ss" - type="daterange" - start-placeholder="寮�濮嬫棩鏈�" - end-placeholder="缁撴潫鏃ユ湡" - :default-time="[new Date('1 00:00:00'), new Date('1 23:59:59')]" - class="!w-220px" /> </el-form-item> <el-form-item> @@ -154,14 +129,27 @@ <el-table-column label="鎮h�呯紪鍙�" align="center" prop="patId" /> <el-table-column label="鎮h�呭鍚�" align="center" prop="patName" /> <el-table-column label="鎮h�呮�у埆" align="center" prop="patGender" /> - <el-table-column label="棰勭害鏃舵" align="center" prop="bookTimeslot" /> - <el-table-column label="妫�鏌ョ被鍨�" align="center" prop="bookCheckType" /> - <el-table-column label="鎺掗槦搴忓彿" align="center" prop="seqNum" /> - <el-table-column label="鐘舵��" align="center" prop="status" /> + <el-table-column label="棰勭害鏃舵" align="center" prop="bookTimeslot" > + <template #default="scope"> + <dict-tag :type="DICT_TYPE.ECG_BOOK_TIMESLOT" :value="scope.row.bookTimeslot" /> + </template> + </el-table-column> + <el-table-column label="妫�鏌ョ被鍨�" align="center" prop="bookCheckType" > + <template #default="scope"> + <dict-tag :type="DICT_TYPE.ECG_CHECK_TYPE" :value="scope.row.bookCheckType" /> + </template> + </el-table-column> + <el-table-column label="鎺掗槦搴忓彿" align="center" prop="seqNum" /> + <el-table-column label="鐘舵��" align="center" prop="status" > + <template #default="scope"> + <dict-tag :type="DICT_TYPE.ECG_QUEUE_STATUS" :value="scope.row.status" /> + </template> + </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" @@ -187,6 +175,15 @@ > 鍒犻櫎 </el-button> + <el-button + link + type="danger" + @click="handleJump(scope.row)" + v-if="scope.row.status === 10" + v-hasPermi="['ecg:queue:jump']" + > + {{scope.row.jumpFlag === 0? "鎻掗槦" : "鍙栨秷鎻掗槦"}} + </el-button> </template> </el-table-column> </el-table> @@ -206,8 +203,9 @@ <script setup lang="ts"> import { dateFormatter } from '@/utils/formatTime' import download from '@/utils/download' -import { queueApi, queueVO } from '@/api/ecg/queue' -import queueForm from './queueForm.vue' +import { QueueApi, QueueVO } from '@/api/ecg/queue' +import queueForm from './QueueForm.vue' +import {DICT_TYPE, getIntDictOptions} from '@/utils/dict' /** 鎺掗槦 鍒楄〃 */ defineOptions({ name: 'queue' }) @@ -216,7 +214,7 @@ const { t } = useI18n() // 鍥介檯鍖� const loading = ref(true) // 鍒楄〃鐨勫姞杞戒腑 -const list = ref<queueVO[]>([]) // 鍒楄〃鐨勬暟鎹� +const list = ref<QueueVO[]>([]) // 鍒楄〃鐨勬暟鎹� const total = ref(0) // 鍒楄〃鐨勬�婚〉鏁� const queryParams = reactive({ pageNo: 1, @@ -230,9 +228,8 @@ status: undefined, passed: undefined, expired: undefined, - roomNum: undefined, - bedNum: undefined, - createTime: [] + roomId: undefined, + bedNo: undefined, }) const queryFormRef = ref() // 鎼滅储鐨勮〃鍗� const exportLoading = ref(false) // 瀵煎嚭鐨勫姞杞戒腑 @@ -241,7 +238,7 @@ const getList = async () => { loading.value = true try { - const data = await queueApi.getqueuePage(queryParams) + const data = await QueueApi.getqueuePage(queryParams) list.value = data.list total.value = data.total } finally { @@ -273,8 +270,23 @@ // 鍒犻櫎鐨勪簩娆$‘璁� await message.delConfirm() // 鍙戣捣鍒犻櫎 - await queueApi.deletequeue(id) + await QueueApi.deletequeue(id) message.success(t('common.delSuccess')) + // 鍒锋柊鍒楄〃 + await getList() + } catch {} +} + +/** 鎻掗槦鎸夐挳鎿嶄綔 */ +const handleJump = async (item: QueueVO ) => { + try { + if (item.jumpFlag === 0) + item.jumpFlag = 1 + else + item.jumpFlag = 0 + + const data = await QueueApi.jumpQueue(item) + message.success(data) // 鍒锋柊鍒楄〃 await getList() } catch {} @@ -287,7 +299,7 @@ await message.exportConfirm() // 鍙戣捣瀵煎嚭 exportLoading.value = true - const data = await queueApi.exportqueue(queryParams) + const data = await QueueApi.exportqueue(queryParams) download.excel(data, '鎺掗槦.xls') } catch { } finally { -- Gitblit v1.9.3