<template>
|
<div class="guest_info_box flex flex-col">
|
<div v-if="roomInfo && roomInfo.roomNo" class="room_title">{{ roomInfo.roomNo }}</div>
|
<div class="room_content flex-1">
|
<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">
|
<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; */
|
margin-bottom: 40px;
|
}
|
.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>
|