New file |
| | |
| | | <template> |
| | | <div class="guest_info_box"> |
| | | <div v-if="roomInfo && roomInfo.roomNo" class="room_title">{{ roomInfo.roomNo }}</div> |
| | | <div class="room_content"> |
| | | <div class="tip">诊疗安排</div> |
| | | <!-- <div class="name">{{ occupyInfoView.userName }}</div> appellationName --> |
| | | <div v-show="isShowAppellationName" class="flex flex-center"> |
| | | <div class="flex flex-ver"> |
| | | <div class="name">{{ occupyInfoView.appellationName }}</div> |
| | | <div class="name_icon" @click="tapAppellationHandle"> |
| | | <img class="img" src="static/imgs/eye.png"> |
| | | </div> |
| | | </div> |
| | | </div> |
| | | <div v-show="!isShowAppellationName" class="flex flex-center"> |
| | | <div class="flex flex-ver"> |
| | | <div class="name"> |
| | | <el-popover |
| | | placement="top" |
| | | width="400" |
| | | popper-class="top_tx" |
| | | trigger="click" |
| | | :popper-options="{ removeOnDestroy: true }" |
| | | > |
| | | <div>{{ occupyInfoView.userName }}</div> |
| | | <div slot="reference" class="tx ell">{{ occupyInfoView.userName }}</div> |
| | | </el-popover> |
| | | </div> |
| | | <div class="name_icon" @click="tapAppellationHandle"> |
| | | <img class="img" src="static/imgs/eye.png"> |
| | | </div> |
| | | </div> |
| | | </div> |
| | | <div v-if="occupyInfoView.ciq" class="ciq">({{ occupyInfoView.ciq }})</div> |
| | | <div v-if="occupyInfoView.startTime" class="time">安排治疗时间:{{ occupyInfoView.startTime }} 开始</div> |
| | | </div> |
| | | <div v-show="occupyInfoView" class="room_left_btn_box flex flex-ver" style="margin-top: 105px;"> |
| | | <div v-show="occupyInfoView.treatRoomStatus == 0" class="room_left_btn_box__item flex flex-1 flex-center b-green btn_ani" @click="setStatus('敷麻中', 4, occupyInfoView)">开始敷麻</div> |
| | | <div v-show="occupyInfoView.treatRoomStatus == 0" class="room_left_btn_box__item flex flex-1 flex-center green btn_ani" style="margin-right: 0;" @click="setStatus('使用中', 1, occupyInfoView)">开始治疗</div> |
| | | <div v-show="occupyInfoView.treatRoomStatus == 4" class="room_left_btn_box__item flex flex-center green btn_ani" @click="setStatus('使用中', 1, occupyInfoView)">开始治疗</div> |
| | | <div v-show="occupyInfoView.treatRoomStatus == 1" class="room_left_btn_box__item flex-1 flex flex-center yellow btn_ani" @click="setStatus('客人休息', 2, occupyInfoView)">客人休息</div> |
| | | <div v-show="occupyInfoView.treatRoomStatus == 1" class="room_left_btn_box__item flex-1 flex flex-center gray btn_ani" style="margin-right: 0;" @click="setStatus('打扫中', 3, occupyInfoView)">通知打扫</div> |
| | | <div v-show="occupyInfoView.treatRoomStatus == 2" class="room_left_btn_box__item flex flex-center green btn_ani" @click="setStatus('打扫中', 3, occupyInfoView)">通知打扫</div> |
| | | <div v-show="occupyInfoView.treatRoomStatus == 3" class="room_left_btn_box__item flex flex-center green btn_ani" @click="setStatus('空闲', 0, occupyInfoView)">结束打扫</div> |
| | | </div> |
| | | <!-- MIC通知卸麻 --> |
| | | <XioRoomOffNarcosisNotice ref="XioRoomOffNarcosisNotice" @confirm="offNarcosisNoticeConfirm" /> |
| | | </div> |
| | | </template> |
| | | |
| | | <script> |
| | | // 通知卸麻 |
| | | import XioRoomOffNarcosisNotice from '@/components/xio_room_off_narcosis_notice' |
| | | export default { |
| | | name: 'XioRoomGuestInfoBox', |
| | | components: { |
| | | XioRoomOffNarcosisNotice |
| | | }, |
| | | props: { |
| | | roomInfo: { |
| | | type: Object, |
| | | default: () => { |
| | | return {} |
| | | } |
| | | }, |
| | | occupyInfoView: { |
| | | type: [Object, Array], |
| | | default: () => { |
| | | return {} |
| | | } |
| | | }, |
| | | offNarcosisIds: { |
| | | type: Array, |
| | | default: () => { |
| | | return [] |
| | | } |
| | | } |
| | | }, |
| | | data() { |
| | | return { |
| | | isShowAppellationName: true |
| | | } |
| | | }, |
| | | methods: { |
| | | noop() { |
| | | return |
| | | }, |
| | | // 设置已通知卸麻id数组 |
| | | setLocalStorageOffNarcosisIds() { |
| | | localStorage.setItem('offNarcosisIds', JSON.stringify(this.offNarcosisIds)) |
| | | }, |
| | | // 卸麻通知确认 |
| | | offNarcosisNoticeConfirm() { |
| | | if (this.occupyInfoView) { |
| | | if (this.offNarcosisIds && this.offNarcosisIds.length) { |
| | | var flag = this.offNarcosisIds.find((o) => { return o === this.occupyInfoView.userId }) |
| | | if (!flag) { |
| | | this.offNarcosisIds.push(this.occupyInfoView.userId) |
| | | } |
| | | } else if (this.offNarcosisIds) { |
| | | this.offNarcosisIds.push(this.occupyInfoView.userId) |
| | | } |
| | | this.setLocalStorageOffNarcosisIds() |
| | | } |
| | | }, |
| | | // 显示通知卸麻弹窗 |
| | | showOffNarcosisNotice() { |
| | | // 打开弹窗 |
| | | this.$refs['XioRoomOffNarcosisNotice'].showDialog() |
| | | this.$refs['XioRoomOffNarcosisNotice'].dataInit(this.occupyInfoView) |
| | | }, |
| | | // 点击显示隐藏称谓 |
| | | tapAppellationHandle() { |
| | | this.isShowAppellationName = !this.isShowAppellationName |
| | | }, |
| | | setStatus(tx, status, item) { |
| | | this.$emit('setStatus', { tx, status, item }) |
| | | }, |
| | | // 确认 |
| | | confirm() { |
| | | this.isShow = false |
| | | this.$emit('confirm', { }) |
| | | }, |
| | | // 显示弹窗 |
| | | showDialog() { |
| | | this.isShow = true |
| | | }, |
| | | // 关闭弹窗 |
| | | hideDialog() { |
| | | this.isShow = false |
| | | this.$emit('confirm', { }) |
| | | } |
| | | } |
| | | } |
| | | </script> |
| | | |
| | | <style scoped> |
| | | .guest_info_box { |
| | | width: 100%; |
| | | height: 100%; |
| | | box-sizing: border-box; |
| | | padding-top: 39px; |
| | | position: relative; |
| | | } |
| | | .guest_info_box .room_title { |
| | | line-height: 50px; |
| | | color: rgba(255,255,255,1); |
| | | font-size: 36px; |
| | | text-align: center; |
| | | font-family: PingFangSC-medium; |
| | | padding: 10px 0; |
| | | background-color: rgba(34,123,235,1); |
| | | width: 400px; |
| | | margin: 0 auto 0 auto; |
| | | } |
| | | .guest_info_box .room_main_tip { |
| | | line-height: 168px; |
| | | font-size: 120px; |
| | | color: rgba(46,77,124,1); |
| | | text-align: center; |
| | | font-family: PingFangSC-medium; |
| | | margin-top: 107px; |
| | | /* font-weight: bold; */ |
| | | } |
| | | .guest_info_box .room_main_tip.gray { |
| | | color: rgba(154,154,154,1); |
| | | } |
| | | .guest_info_box .btn_box { |
| | | margin-top: 130px; |
| | | } |
| | | .guest_info_box .btn_box__item { |
| | | width: 250px; |
| | | height: 120px; |
| | | border-radius: 10px; |
| | | box-shadow: 0px 2px 6px 0px rgba(206,206,206,1); |
| | | margin-right: 70px; |
| | | cursor: pointer; |
| | | } |
| | | .guest_info_box .btn_box__item:last-child { |
| | | margin-right: 0; |
| | | } |
| | | .guest_info_box .btn_box__item.white { |
| | | background-color: rgba(255,255,255,1); |
| | | } |
| | | .guest_info_box .btn_box__item.blue { |
| | | background-color: rgba(46,77,124,1); |
| | | } |
| | | .guest_info_box .btn_box__item.yellow { |
| | | background-color: rgba(255,199,115,1); |
| | | } |
| | | .guest_info_box .btn_box__item.gray { |
| | | background-color: rgba(206,206,206,1); |
| | | } |
| | | .guest_info_box .btn_box__item .icon { |
| | | width: 60px; |
| | | height: 60px; |
| | | display: block; |
| | | margin-right: 17px; |
| | | } |
| | | .guest_info_box .btn_box__item .icon .img { |
| | | width: 100%; |
| | | height: 100%; |
| | | } |
| | | .guest_info_box .btn_box__item .tx { |
| | | line-height: 37px; |
| | | color: rgba(51,51,51,1); |
| | | font-size: 26px; |
| | | text-align: center; |
| | | font-family: PingFangSC-medium; |
| | | } |
| | | .guest_info_box .btn_box__item .tx.white { |
| | | color: rgba(255,255,255,1); |
| | | } |
| | | .guest_info_box .room_left_btn_box { |
| | | padding: 0 23px; |
| | | margin-top: 163px; |
| | | } |
| | | .guest_info_box .room_left_btn_box__item { |
| | | width: 500px; |
| | | height: 150px; |
| | | line-height: 73px; |
| | | border-radius: 10px; |
| | | font-size: 50px; |
| | | text-align: center; |
| | | margin: auto; |
| | | } |
| | | .guest_info_box .room_left_btn_box__item.flex-1 { |
| | | width: auto; |
| | | height: 150px; |
| | | line-height: 58px; |
| | | border-radius: 10px; |
| | | font-size: 40px; |
| | | text-align: center; |
| | | font-family: Microsoft Yahei; |
| | | margin-right: 20px; |
| | | font-weight: bold; |
| | | } |
| | | /* .guest_info_box .room_left_btn_box__item:last-child { |
| | | margin-right: 0; |
| | | } */ |
| | | .guest_info_box .room_left_btn_box__item.yellow { |
| | | color: rgba(255,255,255,1); |
| | | background-color: rgba(233,157,66,1); |
| | | } |
| | | .guest_info_box .room_left_btn_box__item.gray { |
| | | background-color: rgba(206,206,206,1); |
| | | color: rgba(79,79,79,1); |
| | | } |
| | | .guest_info_box .room_left_btn_box__item.green { |
| | | background-color: rgba(47,174,206,1); |
| | | color: rgba(255,255,255,1); |
| | | } |
| | | .guest_info_box .room_left_btn_box__item.b-green { |
| | | background-color: rgba(79,167,114,1); |
| | | color: rgba(255,255,255,1); |
| | | } |
| | | .guest_info_box .room_content { |
| | | margin-top: 30px; |
| | | } |
| | | .guest_info_box .room_content .tip { |
| | | line-height: 33px; |
| | | color: rgba(79,79,79,1); |
| | | font-size: 24px; |
| | | text-align: center; |
| | | font-family: PingFangSC-medium; |
| | | } |
| | | .guest_info_box .room_content .name { |
| | | line-height: 168px; |
| | | color: rgba(51,51,51,1); |
| | | font-size: 120px; |
| | | text-align: center; |
| | | font-family: PingFangSC-medium; |
| | | margin-top: 13px; |
| | | } |
| | | .guest_info_box .room_content .name .tx { |
| | | max-width: 666px; |
| | | margin: auto; |
| | | text-align: center; |
| | | } |
| | | .guest_info_box .room_content .name_icon { |
| | | width: 40px; |
| | | height: 40px; |
| | | display: block; |
| | | margin-top: 13px; |
| | | padding: 20px; |
| | | } |
| | | .guest_info_box .room_content .name_icon .img { |
| | | width: 100%; |
| | | height: 100%; |
| | | } |
| | | .guest_info_box .room_content .ciq { |
| | | line-height: 42px; |
| | | color: rgba(51,51,51,1); |
| | | font-size: 30px; |
| | | text-align: center; |
| | | font-family: PingFangSC-regular; |
| | | margin-top: -5px; |
| | | } |
| | | .guest_info_box .room_content .time { |
| | | line-height: 42px; |
| | | color: rgba(0,0,0,1); |
| | | font-size: 30px; |
| | | text-align: center; |
| | | font-family: PingFangSC-medium; |
| | | font-weight: bold; |
| | | margin-top: 21px; |
| | | } |
| | | </style> |