src/api/ecg/room/index.ts | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/assets/room/desk-doctor.jpeg | 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/assets/room/desk.png | 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/components/RoomBedSelect/index.ts | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/components/RoomBedSelect/src/RoomBedSelect.vue | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/views/ecg/room/RoomLoginSelect.vue | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/views/ecg/room/RoomStatusSetting.vue | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 |
src/api/ecg/room/index.ts
@@ -47,7 +47,7 @@ }, // è·åè¯å®¤ç²¾ç®ä¿¡æ¯å表ï¼ç¨äºå»çéæ©ç»å½çè¯å®¤ getSimpleRoomList2: async () => { getOnstageBedMap: async () => { return await request.get({ url: `/clinic/room/list-simple-room` }) }, src/assets/room/desk-doctor.jpeg
src/assets/room/desk.png
src/components/RoomBedSelect/index.ts
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,3 @@ import RoomBedSelect from './src/RoomBedSelect.vue' export { RoomBedSelect } src/components/RoomBedSelect/src/RoomBedSelect.vue
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,81 @@ <script lang="ts" setup> import { RoomApi, RoomVO } from '@/api/ecg/room' import {PropType} from "vue"; defineComponent({ name: 'RoomBedSelect' }) const props = defineProps({ title: { type: String, required: true }, bedList: { type: Array as PropType<RoomVO[]>, required: true }, modelValue: { type: String, required: true } }) const emit = defineEmits<{ (e: 'update:modelValue', message: string): void; }>(); const onclick = (item) => { emit('update:modelValue', item.bedNo); } </script> <template> <el-card style="width: 200px" shadow="hover" > <template #header>{{title}}</template> <div v-for="(bedItem, index) in bedList" :key="index"> <div class="deskwarp"> <img v-if="modelValue !== bedItem.bedNo" src="@/assets/room/desk.png" style="width: 100%" @click = onclick(bedItem) /> <img v-else src="@/assets/room/desk-doctor.jpeg" style="width: 100%" @click = onclick(bedItem) /> <div>{{bedItem.bedNo}}</div> </div> </div> </el-card> </template> <style scoped lang="scss"> .card-title { font-size: 14px; font-weight: 600; &::before { position: relative; top: 8px; left: -5px; display: inline-block; width: 3px; height: 14px; //background-color: #105cfb; background: var(--el-color-primary); border-radius: 5px; content: ''; transform: translateY(-50%); } } .deskwarp { display: flex; flex-direction: column; align-items: center; } </style> src/views/ecg/room/RoomLoginSelect.vue
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,47 @@ <template> <div style="display: flex; flex-wrap: wrap; margin-bottom: 20px"> <div class=wrap v-for="(value, key) in bedMap" :key="key"> <RoomBedSelect :title="key" :bedList="value" v-model="curSel"/> </div> </div> <el-button @click="roomConfirm">KKKK</el-button> <!-- <el-button type="primary">Primary Button</el-button> <el-button type="success">Success Button</el-button> <el-button type="info">Info Button</el-button> <el-button type="warning">Warning Button</el-button> <el-button type="danger">Danger Button</el-button> --> </template> <script setup lang="ts"> import {RoomBedSelect} from "@/components/RoomBedSelect" import { RoomApi, RoomVO } from '@/api/ecg/room' defineOptions({ name: 'RoomLoginSelect' }) const bedMap = ref<Map<String, RoomVO[]>>() // åè¡¨çæ°æ® const curSel = ref<String>("B2"); /** æ¥è¯¢å表 */ const getList = async () => { const data = await RoomApi.getOnstageBedMap() bedMap.value = data as Map<String, RoomVO[]> } const roomConfirm = () => { } /** åå§å **/ onMounted(() => { getList() }) </script> <style scoped lang="scss"> .wrap { margin-right: 20px; } </style> src/views/ecg/room/RoomStatusSetting.vue
@@ -12,6 +12,8 @@ import { RoomApi, RoomVO } from '@/api/ecg/room' import { queueApi, queueVO } from '@/api/ecg/queue' defineOptions({ name: 'RoomStatusSetting' }) const bedMap = ref<Map<String, RoomVO[]>>() // åè¡¨çæ°æ® /** æ¥è¯¢å表 */