From 34cb2bd0b0846c04a8879be23e0f100478d6c97d Mon Sep 17 00:00:00 2001
From: jazzzone <312142485@qq.com>
Date: 星期六, 09 十二月 2023 18:16:46 +0800
Subject: [PATCH] update_202312091816_项目-治疗室屏幕web-反馈调整v1

---
 src/pages/room/detail.vue |  117 +++++++++++++++++++++++++++++++++++++++++++---------------
 1 files changed, 86 insertions(+), 31 deletions(-)

diff --git a/src/pages/room/detail.vue b/src/pages/room/detail.vue
index cd28687..d0218ab 100644
--- a/src/pages/room/detail.vue
+++ b/src/pages/room/detail.vue
@@ -22,7 +22,7 @@
       </div>
     </div>
     <!-- 鏈湁瀹夋帓 -->
-    <div v-if="!occupyInfoView && (!assignTreatList || !assignTreatList.length)" class="page_container flex flex-1">
+    <div v-if="!occupyInfoView && (!assignTreatListView || !assignTreatListView.length)" class="page_container flex flex-1">
       <div class="main flex-1">
         <div v-if="roomInfo && roomInfo.roomNo" class="room_title">{{ roomInfo.roomNo }}</div>
         <div v-if="roomInfo" class="room_main_tip" style="margin-top: 93px;line-height: 186px;font-size: 140px;">-{{ statusTx[roomInfo.status] }}-</div>
@@ -65,7 +65,7 @@
       </div>
     </div>
     <!-- 娌℃湁瀹汉鍜屾湁瀹夋帓 -->
-    <div v-if="!occupyInfoView && (assignTreatList && assignTreatList.length)" class="page_container flex flex-1">
+    <div v-if="!occupyInfoView && (assignTreatListView && assignTreatListView.length)" class="page_container flex flex-1">
       <div class="main flex-1">
         <div v-if="roomInfo && roomInfo.roomNo" class="room_title">{{ roomInfo.roomNo }}</div>
         <div v-if="roomInfo" class="room_main_tip">-{{ statusTx[roomInfo.status] }}-</div>
@@ -79,9 +79,9 @@
       <div class="right">
         <div class="right_block flex flex-col">
           <div class="guest_title flex flex-center">绛夊緟璇婄枟</div>
-          <div class="guest_block flex-1">
-            <div v-if="assignTreatList && assignTreatList.length" class="guest_list">
-              <div v-for="(item, index) in assignTreatList" :key="index" class="guest_list__row flex flex-ver" @click="selectCustomer(item)">
+          <div class="guest_block flex-1" style="border-radius: 0 0 10px 10px;">
+            <div v-if="assignTreatListView && assignTreatListView.length" class="guest_list">
+              <div v-for="(item, index) in assignTreatListView" :key="index" class="guest_list__row flex flex-ver" @click="selectCustomer(item)">
                 <div class="guest_list__td">
                   <div class="tx flex flex-ver">
                     <div class="flex-1 flex-1-w1 ell">{{ item.userName }}</div>
@@ -95,14 +95,14 @@
                   <span class="tx flex-1 flex-1-w1 ell">{{ item.aDoctorName?item.aDoctorName+'(鍖荤敓)銆�':'' }}{{ item.aNurseName?item.aNurseName+'(鎶ゅ+)':'' }}</span>
                 </div>
                 <div class="guest_list__td flex flex-center">
-                  <div class="tx">鍒囨崲</div>
+                  <div v-if="!item.act" class="tx" style="text-decoration: underline;color: #227beb;">鍒囨崲</div>
                   <!-- <div class="icon">
                     <img class="img" src="static/imgs/choose.png">
                   </div> -->
                 </div>
               </div>
             </div>
-            <div v-if="!assignTreatList || !assignTreatList.length" class="guest_list">
+            <div v-if="!assignTreatListView || !assignTreatListView.length" class="guest_list">
               <div class="guest_list__row flex flex-center rowtip">鏆傛棤鏁版嵁</div>
             </div>
           </div>
@@ -167,11 +167,11 @@
             </div>
           </div>
         </div>
-        <div class="guest_box flex flex-col">
+        <div class="guest_box flex flex-col" style="border-radius: 10px;">
           <div class="guest_title flex flex-center">绛夊緟璇婄枟</div>
           <div class="guest_block flex-1">
-            <div v-if="assignTreatList && assignTreatList.length" class="guest_list">
-              <div v-for="(item, index) in assignTreatList" :key="index" class="guest_list__row flex flex-ver" @click="selectCustomer(item)">
+            <div v-if="assignTreatListView && assignTreatListView.length" class="guest_list">
+              <div v-for="(item, index) in assignTreatListView" :key="index" class="guest_list__row flex flex-ver" @click="selectCustomer(item)">
                 <div class="guest_list__td">
                   <div class="tx flex flex-ver">
                     <div class="flex-1 flex-1-w1 ell">{{ item.userName }}</div>
@@ -185,14 +185,14 @@
                   <span class="tx flex-1 flex-1-w1 ell">{{ item.aDoctorName?item.aDoctorName+'(鍖荤敓)銆�':'' }}{{ item.aNurseName?item.aNurseName+'(鎶ゅ+)':'' }}</span>
                 </div>
                 <div class="guest_list__td flex flex-center">
-                  <div class="tx">鍒囨崲</div>
+                  <div v-if="!item.act" class="tx" style="text-decoration: underline;color: #227beb;">鍒囨崲</div>
                   <!-- <div class="icon">
                     <img class="img" src="static/imgs/choose.png">
                   </div> -->
                 </div>
               </div>
             </div>
-            <div v-if="!assignTreatList || !assignTreatList.length" class="guest_list">
+            <div v-if="!assignTreatListView || !assignTreatListView.length" class="guest_list">
               <div class="guest_list__row flex flex-center rowtip">鏆傛棤鏁版嵁</div>
             </div>
           </div>
@@ -233,30 +233,52 @@
       occupyInfo: '', // 褰撳墠鍗犵敤浜虹殑淇℃伅
       assignTreatList: [],
       statusTx: ['绌洪棽', '浣跨敤涓�', '瀹汉浼戞伅', '鎵撴壂涓�'],
-      timeObj: {} // week锛氭槦鏈燂紝date锛氬勾鏈堟棩锛宼imeMin锛氭椂鍒嗭紝time锛氭椂鍒嗙锛宼imeStamp锛氭椂闂存埑
+      timeObj: {}, // week锛氭槦鏈燂紝date锛氬勾鏈堟棩锛宼imeMin锛氭椂鍒嗭紝time锛氭椂鍒嗙锛宼imeStamp锛氭椂闂存埑
+      curTreatId: ''
     }
   },
   computed: {
     occupyInfoView() {
-      // console.log('00000000000000000000000', this.occupyInfo, isUseDefault, isUseDefaultChg)
-      // 鏈夊崰鐢�
-      if (this.occupyInfo) {
-        return this.occupyInfo
-      // 娌℃湁鍗犵敤
+      console.log('00000000000000000000000', this.occupyInfo, isUseDefault, isUseDefaultChg)
+      // 鏈夊綋鍓嶉�変腑鐨勶紝鏍规嵁闇�姹備慨鏀瑰鍔犻�変腑涓嶆洿鏀圭姸鎬侊紝鐢辩┖闂插紑濮�
+      if (this.curTreatId) {
+        return this.gatCurTreatInfo()
       } else {
-        // 杩樻病浣跨敤榛樿瀹汉鍊兼垨鑰呭凡浣跨敤榛樿瀹汉鍊艰繕娌℃敼鍙樼姸鎬侊紙閫傞厤杞锛�
-        if ((!isUseDefault || (isUseDefault && isUseDefaultChg === 0)) && this.assignTreatList && this.assignTreatList.length) {
-          isUseDefault = true
-          return this.assignTreatList[0]
-        // 宸蹭娇鐢ㄨ繃榛樿瀹汉鍊�
+        // 鏈夊崰鐢�
+        if (this.occupyInfo) {
+          return this.occupyInfo
+        // 娌℃湁鍗犵敤
         } else {
-          return ''
+          // 杩樻病浣跨敤榛樿瀹汉鍊兼垨鑰呭凡浣跨敤榛樿瀹汉鍊艰繕娌℃敼鍙樼姸鎬侊紙閫傞厤杞锛�
+          if ((!isUseDefault || (isUseDefault && isUseDefaultChg === 0)) && this.assignTreatList && this.assignTreatList.length) {
+            isUseDefault = true
+            return this.assignTreatList[0]
+          // 宸蹭娇鐢ㄨ繃榛樿瀹汉鍊�
+          } else {
+            return ''
+          }
         }
+      }
+    },
+    assignTreatListView() {
+      if (this.assignTreatList && this.assignTreatList.length) {
+        this.assignTreatList.forEach((o) => {
+          o.act = false
+          if (this.occupyInfoView && this.occupyInfoView.id === o.id) {
+            o.act = true
+          }
+        })
+        return this.assignTreatList
+      } else {
+        return []
       }
     }
   },
   activated() {
     console.log('roomDetail mounted')
+    // 璁板綍褰撳墠鐨勬不鐤桰D
+    var curTreatId = localStorage.getItem('curTreatId')
+    this.curTreatId = curTreatId || ''
     this.id = this.$route.query.id || ''
     this.init()
   },
@@ -274,6 +296,12 @@
       // 杞getData锛�8绉掍竴娆�
       this.pollingAjaxFn(this, 'getData', 'detail', 8000)
       // this.getData()
+    },
+    // 鑾峰彇褰撳墠娌荤枟淇℃伅
+    gatCurTreatInfo() {
+      if (this.assignTreatList && this.assignTreatList.length) {
+        return this.assignTreatList.find((o) => {return o.id === this.curTreatId})
+      }
     },
     // 鑾峰彇鎴块棿璇︽儏
     getData() {
@@ -327,6 +355,7 @@
     },
     // 杩斿洖
     back() {
+      // 閲嶇疆榛樿宸蹭娇鐢ㄥ浜虹殑鍙傛暟
       isUseDefault = false
       isUseDefaultChg = 0
       // 鍏抽棴璁℃椂
@@ -389,7 +418,21 @@
       }).then((res) => {
         // 鍦ㄥ凡鏈夐粯璁ゅ浜虹殑鎯呭喌涓嬶紝鏀瑰彉鐘舵�佹洿鏀规爣璇嗭紙閫傞厤杞锛�
         if (isUseDefault) {
+          console.log('鍦ㄥ凡鏈夐粯璁ゅ浜虹殑鎯呭喌涓嬶紝鏀瑰彉鐘舵�佹洿鏀规爣璇�')
           isUseDefaultChg = 1
+        }
+        // 褰撳墠閫変腑鐨勭敤鎴锋埧闂存洿鏀逛簡鐘舵�侊紝宸茬粡鎴愪负鍗犵敤鏃讹紝娓呴櫎閫変腑鍖荤枟璁板綍id
+        if (item && item.id && item.id === this.curTreatId) {
+          console.log('褰撳墠閫変腑鐨勭敤鎴锋埧闂存洿鏀逛簡鐘舵�侊紝宸茬粡鎴愪负鍗犵敤鏃讹紝娓呴櫎閫変腑鍖荤枟璁板綍id')
+          localStorage.removeItem('curTreatId')
+          this.curTreatId = ''
+        }
+        // 姝e父娴佺▼缁撴潫鎵撴壂
+        if (item && item.id && status === 0) {
+          console.log('姝e父娴佺▼缁撴潫鎵撴壂')
+          // 閲嶇疆榛樿宸蹭娇鐢ㄥ浜虹殑鍙傛暟
+          isUseDefault = false
+          isUseDefaultChg = 0
         }
         // console.log('8888888888888888888888888888888888', res)
         cb && cb()
@@ -407,7 +450,10 @@
       // if (roomInfo && opt.status * 1 == roomInfo.status) {
       //   return
       // }
-      this.changeStatusFn(occupyInfoView, opt.status, () => {
+      // 娓呴櫎閫変腑鍖荤枟璁板綍id
+      localStorage.removeItem('curTreatId')
+      this.curTreatId = ''
+      this.changeStatusFn({}, opt.status, () => {
         // 鍒锋柊璇︽儏
         this.getData()
         // 鍏抽棴寮圭獥
@@ -416,6 +462,9 @@
     },
     // 閫夋嫨瀹㈡埛
     selectCustomer(item = {}) {
+      if (item.act) {
+        return
+      }
       // 鎵撳紑寮圭獥
       this.$refs['XioCustomerSelect'].showDialog()
       // 缁勪欢瀹㈡埛鏁版嵁澶勭悊
@@ -429,12 +478,18 @@
     // 閫夋嫨瀹㈡埛纭畾
     selectCustomerSubmit(opt) {
       console.log('submit', opt)
-      this.changeStatusFn(opt, 1, () => {
-        // 鍒锋柊璇︽儏
-        this.getData()
-        // 鍏抽棴寮圭獥
-        this.$refs['XioCustomerSelect'].hideDialog()
-      })
+      // 纭畾閫夋嫨鐨勭敤鎴凤紝璁板綍id
+      localStorage.setItem('curTreatId', opt.id)
+      this.curTreatId = opt.id
+      // 閲嶇疆鎴块棿鐘舵��
+      if (this.roomInfo && this.roomInfo.status) {
+        this.changeStatusFn({}, 0, () => {
+          // 鍒锋柊璇︽儏
+          this.getData()
+        })
+      }
+      // 鍏抽棴寮圭獥
+      this.$refs['XioCustomerSelect'].hideDialog()
     }
   }
 }

--
Gitblit v1.8.0