From cfd2621f98e34e348a0e7ca7466464f9886d4eb2 Mon Sep 17 00:00:00 2001 From: eight <641137800@qq.com> Date: 星期四, 12 十二月 2024 19:46:48 +0800 Subject: [PATCH] 工位选择界面 诊室安装room id排序 --- src/components/RoomBedSelect/src/RoomBedSelect.vue | 64 +++++++++++++++++++++++-------- 1 files changed, 47 insertions(+), 17 deletions(-) diff --git a/src/components/RoomBedSelect/src/RoomBedSelect.vue b/src/components/RoomBedSelect/src/RoomBedSelect.vue index a804b87..e6318d3 100644 --- a/src/components/RoomBedSelect/src/RoomBedSelect.vue +++ b/src/components/RoomBedSelect/src/RoomBedSelect.vue @@ -1,16 +1,19 @@ <script lang="ts" setup> -import { RoomApi, RoomVO } from '@/api/ecg/room' +import { RoomVO } from '@/api/ecg/room' import {PropType} from "vue"; -import {useUserStore} from "@/store/modules/user"; -const emit = defineEmits(['haveSeat', 'leaveSeat']) +import {useCheckTypeStore} from "@/store/modules/checkType"; +import {UserVO} from "@/store/modules/user"; + +const emit = defineEmits(['event-haveseat', 'event-leaveseat', 'event-setcurseat']) defineComponent({ name: 'RoomBedSelect' }) const props = defineProps({ +// defineProps({ title: { - type: String, + type: Number, required: true }, bedList: { @@ -20,17 +23,23 @@ curBed: { type: Object as PropType<RoomVO>, required: true + }, + curUser: { + type: Object as PropType<UserVO>, + required: true } }) -const userStore = useUserStore() -const curUser = userStore.getUser +const checkTypeStore = useCheckTypeStore(); -const onHaveSeatclick = (newItem) => { - emit('haveSeat', newItem) +const onHaveSeatclick = (newItem: RoomVO) => { + emit('event-haveseat', newItem) } -const onLeaveSeatclick = (curItem) => { - emit('leaveSeat', curItem) +const onLeaveSeatclick = (curItem: RoomVO) => { + emit('event-leaveseat', curItem) +} +const onSetCurSeatclick = (curItem: RoomVO) => { + emit('event-setcurseat', curItem) } /** 鍒濆鍖� **/ @@ -42,26 +51,46 @@ <template> <el-card style="width: 200px" shadow="hover" > - <template #header>{{title}}</template> + <template #header>{{bedList[0].roomName}}</template> <div v-for="(bedItem, index) in bedList" :key="index"> <div class="deskwarp"> + + <div v-for="(checkType, subIndex) in bedItem.checkTypes" :key="subIndex"> + {{checkTypeStore.getCheckTypeName(checkType)}} + </div> + <div> + {{bedItem.opType === 1?"棰嗙敤":""}} + {{bedItem.opType === 2?"瀹夎":""}} + </div> + <img - v-if="curBed.roomId !== bedItem.roomId || curBed.bedNo !== bedItem.bedNo" - src="@/assets/room/desk.png" + v-if="bedItem.docId === null" + src="@/assets/room/open.jpg" style="width: 100%" + alt="鏃犲尰鐢�" /> <img v-else src="@/assets/room/desk-doctor.jpeg" style="width: 100%" + alt="鏈夊尰鐢�" /> - <div>{{bedItem.bedNo}} {{bedItem.docName}}</div> + <div>{{bedItem.bedNo}} {{bedItem.docName}} {{bedItem.status === 30?"-鏆傚仠":""}}</div> <el-button v-if="bedItem.docId === null" @click = onHaveSeatclick(bedItem)> 鍏ュ骇 </el-button> - <el-button v-if="bedItem.docId === curUser.id" @click = onLeaveSeatclick(bedItem)> - 绂诲骇 - </el-button> + <div v-if="bedItem.docId === curUser.id"> + <el-button @click = onLeaveSeatclick(bedItem)> + 绂诲骇 + </el-button> + <span v-if="bedItem.roomId === curBed.roomId && bedItem.bedNo === curBed.bedNo" > + 褰撳墠 + </span> + <el-button v-else @click = onSetCurSeatclick(bedItem)> + 璁句负褰撳墠 + </el-button> + </div> + <el-divider/> </div> </div> </el-card> @@ -91,6 +120,7 @@ display: flex; flex-direction: column; align-items: center; + /*height: 260px;*/ } </style> -- Gitblit v1.9.3