From 5311b8ec19221a560aeca28262f14433b7781801 Mon Sep 17 00:00:00 2001 From: jxmanxk <312142485@qq.com> Date: 星期二, 23 一月 2024 17:43:53 +0800 Subject: [PATCH] update_202401231742_强制重置房间状态,不传治疗记录数组 --- src/pages/room/detail.vue | 160 ++++++++++++++++++++++++++++++++++++++--------------- 1 files changed, 115 insertions(+), 45 deletions(-) diff --git a/src/pages/room/detail.vue b/src/pages/room/detail.vue index 13df298..032c3b9 100644 --- a/src/pages/room/detail.vue +++ b/src/pages/room/detail.vue @@ -87,7 +87,7 @@ <div v-if="occupyInfoViewArr && occupyInfoViewArr.length" class="page_container flex flex-1" :class="[occupyInfoViewArr && occupyInfoViewArr.length>1?'over-width':'']"> <div class="flex flex-1"> <div v-for="(item,index) in occupyInfoViewArr" :key="index" class="main flex-1"> - <div v-if="occupyInfoViewArr.length>1" class="cancel_icon_block" @click="cancelCustomerItem(item)"> + <div v-if="occupyInfoViewArr.length>1 && item.treatRoomStatus === 0" class="cancel_icon_block" @click="cancelCustomerItem(item)"> <img class="img" src="static/imgs/cancel.png"> </div> <XioRoomGuestInfoBox :ref="`XioRoomGuestInfoBox_${item.id}`" :room-info="roomInfo" :occupy-info-view="item" :off-narcosis-ids="offNarcosisIds" @setStatus="setComStatus" /> @@ -95,7 +95,7 @@ </div> <div class="right flex flex-col"> <div v-for="(item,index) in occupyInfoViewArr" :key="index" class="flex-1 right_room_info"> - <XioRoomInfoBlock ref="XioRoomInfoBlock" :occupy-info-view="item" /> + <XioRoomInfoBlock ref="XioRoomInfoBlock" :occupy-info-view="item" :occupy-info-view-arr="occupyInfoViewArr" /> </div> <div v-if="occupyInfoViewArr.length<=1" class="flex flex-col" style="border-radius: 10px;"> <XioRoomGuestBox ref="XioRoomGuestBox" :assign-treat-list-view-com="assignTreatListView" @selectCustomer="selectCustomer" /> @@ -161,15 +161,11 @@ computed: { // 褰撳墠宸查�夋嫨鐢ㄦ埛鐨勬暟缁勬暟鎹� occupyInfoViewArr() { - // 缂撳瓨璁板綍 - if (this.curTreatIds && this.curTreatIds.length) { - // todo 瀛樺湪缂撳瓨涓斿瓨鍦ㄥ崰鐢ㄦ暟鎹殑鏃跺�欙紝鏍规嵁鍚庣杩斿洖鍐嶈ˉ鍏呴�昏緫 - return this.getCurTreatArr(this.curTreatIds) + if (this.occupyInfo && this.occupyInfo.length) { + return this.occupyInfoViewArrIdsHandleArr() } else { - // todo 瀛樺湪鍗犵敤鏁版嵁鐨勬椂鍊欙紝鏍规嵁鍚庣杩斿洖鍐嶈ˉ鍏呴�昏緫 - if (this.occupyInfo) { - this.occupyInfoViewArrIdsHandle(this.occupyInfo) - return [this.occupyInfo] + if (this.curTreatIds && this.curTreatIds.length) { + return this.getCurTreatArr(this.curTreatIds) } else { if ((!isUseDefault || (isUseDefault && isUseDefaultChg === 0)) && this.assignTreatList && this.assignTreatList.length) { isUseDefault = true @@ -195,7 +191,7 @@ } else { // 杩樻病浣跨敤榛樿瀹汉鍊兼垨鑰呭凡浣跨敤榛樿瀹汉鍊艰繕娌℃敼鍙樼姸鎬侊紙閫傞厤杞锛� if ((!isUseDefault || (isUseDefault && isUseDefaultChg === 0)) && this.assignTreatList && this.assignTreatList.length) { - isUseDefault = true + // isUseDefault = true return this.assignTreatList[0] // 宸蹭娇鐢ㄨ繃榛樿瀹汉鍊� } else { @@ -273,6 +269,32 @@ this.curTreatIds.push(item.id) this.setLocalCurTreatIds() }, + // 鍒濆榛樿閫夋嫨鐨刬d鏁扮粍澶勭悊 + occupyInfoViewArrIdsHandleArr() { + if (!this.curTreatIds) { + this.curTreatIds = [] + } + if (this.occupyInfo && this.occupyInfo.length === 1) { + var res = [] + res.push(this.occupyInfo[0]) + if (this.curTreatIds && this.curTreatIds.length) { + this.curTreatIds = this.curTreatIds.filter((o) => { return o !== this.occupyInfo[0].id }) + if (this.assignTreatList && this.assignTreatList.length && this.curTreatIds && this.curTreatIds.length) { + var curTreatItem = this.assignTreatList.find((o) => { return o.id === this.curTreatIds[0] }) + if (curTreatItem) { + res.push(curTreatItem) + } + } + } + this.setLocalCurTreatIds() + return res + } else if (this.occupyInfo && this.occupyInfo.length > 1) { + this.occupyInfo.forEach((o) => { + this.curTreatIds.push(o.id) + }) + return this.occupyInfo + } + }, // 璁剧疆宸查�氱煡鍗搁夯id鏁扮粍 setLocalStorageOffNarcosisIds() { localStorage.setItem('offNarcosisIds', JSON.stringify(this.offNarcosisIds)) @@ -320,6 +342,13 @@ }) } }) + // 鍩烘湰涓嶄細鍑虹幇杩欑鎯呭喌锛屼絾鏄互闃蹭竾涓�锛岃嫢鏈湴缂撳瓨id瀛樺湪锛屼絾瀵逛笉涓婂垪琛ㄥ垯缂撳瓨绗竴鏉℃暟鎹甶d + if (!arr.length) { + arr.push(this.assignTreatList[0]) + this.curTreatIds = [] + this.curTreatIds.push(this.assignTreatList[0].id) + this.setLocalCurTreatIds() + } } return arr }, @@ -360,6 +389,7 @@ userName: '榛勫槈鑽�', gender: 1, hempStatus: 2, + treatRoomStatus: 0, ciq: '123', adviserName: 'a鍚�', aDoctorName: 'b鍚�', @@ -373,6 +403,7 @@ userName: '鏉庡痉鍗�', gender: 1, hempStatus: 2, + treatRoomStatus: 0, ciq: '456', adviserName: 'd鍚�', aDoctorName: 'e鍚�', @@ -386,6 +417,7 @@ userName: '鐚涘鍙�', gender: 2, hempStatus: 2, + treatRoomStatus: 0, ciq: '789', adviserName: 'g鍚�', aDoctorName: 'h鍚�', @@ -408,18 +440,17 @@ o.appellationName = o.userName[0] + `${o.gender ? ['濂冲+', '鍏堢敓', '濂冲+'][o.gender] : '濂冲+'}` }) } - // todo 宸插崰鐢ㄧ敤鎴锋暟鎹鐞嗭紝寰呭悗绔慨鏀瑰啀澶勭悊 - if (res.data.occupyInfo && res.data.occupyInfo.userName) { - res.data.occupyInfo.appellationName = res.data.occupyInfo.userName[0] + `${res.data.occupyInfo.gender ? ['濂冲+', '鍏堢敓', '濂冲+'][res.data.occupyInfo.gender] : '濂冲+'}` + if (res.data.occupyInfo && res.data.occupyInfo.length) { + res.data.occupyInfo.forEach((o) => { + // 娌荤枟鏃堕棿澶勭悊 + var st = (o.startTime).split(' ')[1].split(':') + o.startTime = `${st[0]}:${st[1]}` + // 绉拌皳澶勭悊 + o.appellationName = o.userName[0] + `${o.gender ? ['濂冲+', '鍏堢敓', '濂冲+'][o.gender] : '濂冲+'}` + }) } - // todo 宸叉湁鍗犵敤鐨勶紝鏇存敼宸蹭娇鐢ㄩ粯璁ゅ浜虹殑鐘舵�� - res.data.occupyInfo && (isUseDefaultChg = 1) - res.data.occupyInfo && (isUseDefault = 1) - // todo 鍗犵敤淇℃伅娌荤枟鏃堕棿澶勭悊 - if (res.data.occupyInfo && res.data.occupyInfo.startTime) { - var ost = (res.data.occupyInfo.startTime).split(' ')[1].split(':') - res.data.occupyInfo.startTime = `${ost[0]}:${ost[1]}` - } + res.data.occupyInfo && res.data.occupyInfo.length && (isUseDefaultChg = 1) + res.data.occupyInfo && res.data.occupyInfo.length && (isUseDefault = 1) for (const key in res.data) { this[key] = res.data[key] } @@ -498,16 +529,62 @@ // 鏀瑰彉鎴块棿鐘舵�佸紓姝ユ柟娉� changeStatusFn(item = {}, status, cb) { var params = {} - // 鏇存敼鐨勭姸鎬� - params.status = status * 1 // 鎴块棿id if (this.id) { params.shopRoomId = this.id } - // 娌荤枟璁板綍id + // 娌荤枟璁板綍id this.curTreatIds occupyInfoViewArr + // 1.浣跨敤涓�/鏁烽夯涓� 鏁烽夯涓� 2 浜哄崰鐢� + // 2.浣跨敤涓�/浣跨敤涓� 浣跨敤涓� 2 浜哄崰鐢� + // 3.浣跨敤涓�/浼戞伅涓� 浣跨敤涓� 1 浜哄崰鐢� + var arr = JSON.parse(JSON.stringify(this.occupyInfoViewArr)) if (item && item.id) { - params.treatRecordId = item.id + if (arr && arr.length) { + arr.forEach((o) => { + if (o.id === item.id) { + o.treatRoomStatus = status * 1 + } + }) + // 鏄惁鏈変汉浣跨敤涓� + var status_1 = arr.find((o) => { return o.treatRoomStatus === 1 }) + // 鏄惁鏈夊浜轰紤鎭� + var status_2 = arr.find((o) => { return o.treatRoomStatus === 2 }) + // 鏄惁鏈変汉鎵撴壂涓� + var status_3 = arr.find((o) => { return o.treatRoomStatus === 3 }) + // 鏄惁鏈変汉鏁烽夯 + var status_4 = arr.find((o) => { return o.treatRoomStatus === 4 }) + // 鏇存敼鐨勭姸鎬� 鏁烽夯涓� > 浣跨敤涓� > 浼戞伅涓� > 寰呮墦鎵� + params.status = status * 1 + if (status_3) { + params.status = 3 + } + if (status_2) { + params.status = 2 + } + if (status_1) { + params.status = 1 + } + if (status_4) { + params.status = 4 + } + } + + // 褰撳墠閫夋嫨瀹㈡埛鐨勬暟缁勫垹闄ゅ鎴� + this.occupyInfoViewArrDataHandle('cancel', item) + params.treatRoomList = [] + if (arr && arr.length) { + arr.forEach((o) => { + params.treatRoomList.push({ + treatRecordId: o.id, + status: o.treatRoomStatus + }) + }) + } + } else { + // 鏇存敼鐨勭姸鎬� + params.status = status * 1 } + Req.http.post({ url: 'guide/treat/screen/room/status/update', data: params, @@ -523,25 +600,13 @@ console.log('鍦ㄥ凡鏈夐粯璁ゅ浜虹殑鎯呭喌涓嬶紝鏀瑰彉鐘舵�佹洿鏀规爣璇�') isUseDefaultChg = 1 } - // 褰撳墠閫変腑鐨勭敤鎴锋埧闂存洿鏀逛簡鐘舵�侊紝宸茬粡鎴愪负鍗犵敤鏃讹紝娓呴櫎閫変腑鍖荤枟璁板綍id - // if (item && item.id && item.id === this.curTreatId) { - // console.log('褰撳墠閫変腑鐨勭敤鎴锋埧闂存洿鏀逛簡鐘舵�侊紝宸茬粡鎴愪负鍗犵敤鏃讹紝娓呴櫎閫変腑鍖荤枟璁板綍id') - // localStorage.removeItem('curTreatId') - // this.curTreatId = '' - // } // 鍙鏇存敼涓虹┖闂插氨閲嶇疆鍙傛暟 - if (status === 0) { + if (params.status === 0) { console.log('鎴块棿鏇存敼涓虹┖闂�') // 閲嶇疆榛樿宸蹭娇鐢ㄥ浜虹殑鍙傛暟 isUseDefault = false isUseDefaultChg = 0 // this.isShowAppellationName = true - } - // todo 鐢ㄦ埛缁撴潫娌荤枟鍚庯紝灏嗗叾浠庣紦瀛樹腑鍒犻櫎, 寰呮祴璇� - if (item && item.id && this.curTreatIds && this.curTreatIds.length && status === 0) { - console.log('褰撳墠鐢ㄦ埛鎵�鍦ㄦ埧闂存洿鏀逛簡鐘舵�佷负缁撴潫锛屾竻闄ゅ綋鍓嶇殑鍖荤枟璁板綍id') - // 褰撳墠閫夋嫨瀹㈡埛鐨勬暟缁勫垹闄ゅ鎴� - this.occupyInfoViewArrDataHandle('cancel', item) } // console.log('8888888888888888888888888888888888', res) cb && cb() @@ -597,12 +662,12 @@ // 褰撳墠閫夋嫨瀹㈡埛鐨勬暟缁勫鍔犲鎴� this.occupyInfoViewArrDataHandle('add', opt) // 閲嶇疆鎴块棿鐘舵�� - if (this.roomInfo) { - this.changeStatusFn({}, 0, () => { - // 鍒锋柊璇︽儏 - this.getData() - }) - } + // if (this.roomInfo) { + // this.changeStatusFn({}, 0, () => { + // // 鍒锋柊璇︽儏 + // this.getData() + // }) + // } // 鍏抽棴寮圭獥 this.$refs['XioCustomerSelect'].hideDialog() }, @@ -625,6 +690,11 @@ // 缂撳瓨 this.setLocalCurTreatIds() } + if (this.curTreatIds && !this.curTreatIds.length) { + this.curTreatIds.push(item.id) + // 缂撳瓨 + this.setLocalCurTreatIds() + } // 鏁扮粍鏁版嵁澶勭悊 // if (this.occupyInfoViewArr && this.occupyInfoViewArr.length) { // this.occupyInfoViewArr.push(item) -- Gitblit v1.8.0