<template>
|
<div style="display: flex; flex-wrap: wrap; justify-content: center; margin-bottom: 20px">
|
<div class=wrap v-for="(value, key) in bedMap" :key="key">
|
<RoomStatus :title="key" :bedList="value" @refresh="getList"/>
|
</div>
|
</div>
|
<el-button @click="startBiz" :disabled = "startBizFlag"> 手动开诊 </el-button>
|
<el-button @click="resetRoom" :disabled = "resetRoomFlag"> 重置诊室 </el-button>
|
<el-button @click="resetSchedule" :disabled="resetScheduleFlag"> 重置定时任务 </el-button>
|
<el-button @click="refresh" :disabled="refreshFlag"> 刷新 </el-button>
|
</template>
|
|
<script setup lang="ts">
|
import {RoomStatus} from "@/components/RoomStatus"
|
import { RoomApi, RoomVO } from '@/api/ecg/room'
|
import { QueueApi } from '@/api/ecg/queue'
|
|
defineOptions({ name: 'RoomStatusSetting' })
|
|
const bedMap = ref() // 列表的数据
|
|
const startBizFlag = ref<boolean>(false)
|
const resetRoomFlag = ref<boolean>(false)
|
const resetScheduleFlag = ref<boolean>(false)
|
const refreshFlag = ref<boolean>(false)
|
|
/** 查询列表 */
|
const getList = async () => {
|
const data = await RoomApi.getAllBedMap()
|
bedMap.value = data as Map<String, RoomVO[]>
|
}
|
|
const startBiz = async () => {
|
startBizFlag.value = true
|
await QueueApi.startBiz();
|
startBizFlag.value = false
|
}
|
|
const resetRoom = async () => {
|
resetRoomFlag.value = true
|
await RoomApi.resetRoom();
|
getList()
|
resetRoomFlag.value = false
|
}
|
|
const resetSchedule = async () => {
|
resetScheduleFlag.value = true
|
await QueueApi.resetSchedule();
|
resetScheduleFlag.value = false
|
}
|
|
const refresh = async () => {
|
refreshFlag.value = true
|
getList()
|
refreshFlag.value = false
|
}
|
|
/** 初始化 **/
|
onMounted(() => {
|
getList()
|
})
|
|
</script>
|
|
<style scoped lang="scss">
|
.wrap {
|
margin-right: 20px;
|
}
|
</style>
|