From 41d50b20c975faeaa9e5277bdcff13b5acecb575 Mon Sep 17 00:00:00 2001
From: qushaowei <qushaowei@163.com>
Date: 星期三, 13 十二月 2023 16:57:37 +0800
Subject: [PATCH] Merge branch 'master' of http://117.34.109.166:18448/r/vue_mdc_430 into develop

---
 src/views/WorkshopSignage.vue |   83 ++++++++++++++++++++++++++++++++++-------
 1 files changed, 68 insertions(+), 15 deletions(-)

diff --git a/src/views/WorkshopSignage.vue b/src/views/WorkshopSignage.vue
index 7c0379b..5dc5cb2 100644
--- a/src/views/WorkshopSignage.vue
+++ b/src/views/WorkshopSignage.vue
@@ -1,6 +1,6 @@
 <template>
   <dv-full-screen-container class="full-screen-container">
-    <header class="page-header">
+    <header class="page-header" :style="{height: pageHeaderHeight+'px'}">
       {{ workshopDetails.workshopName }}
       <div class="header-left" v-has="'home:saveDevicePositionAndSize'">
         <a-space>
@@ -17,11 +17,11 @@
         <a-button type="primary" icon="save" size="large" @click="saveDevicePositionAndSizeByApi">淇濆瓨浣嶇疆</a-button>
       </div>
       <div class="device-status-info">
-        <div v-for="item in deviceStatusList" :key="item.value" class="single-status-info">
+        <a-space v-for="item in deviceStatusList" :key="item.value" class="single-status-info">
           <div>{{ item.label }}</div>
           <div class="status-square" :style="{ backgroundColor: item.color }"></div>
           <div>{{ getDeviceNumberByStatus(item.value) }}</div>
-        </div>
+        </a-space>
       </div>
     </header>
 
@@ -77,7 +77,6 @@
             </div>
           </div>
         </VueDragResize>
-
       </div>
     </dv-border-box-8>
 
@@ -103,6 +102,11 @@
     },
     data() {
       return {
+        pageHeaderHeight: 80,// 椤靛ご楂樺害
+        taskBarHeight: window.screen.height - window.screen.availHeight,// 灞忓箷搴曢儴浠诲姟鏍忛珮搴�
+        utilsBarHeight: window.outerHeight - window.innerHeight,// 娴忚鍣ㄥ伐鍏锋爮楂樺害
+        normalPageHeight: 0,
+        fullScreenPageHeight: 0,
         workshopDetails: {}, //  杞﹂棿璇︾粏淇℃伅,
         isDraggable: false, // 鏄惁寮�鍚嫋鎷�
         isResizable: false, // 鏄惁寮�鍚缉鏀�
@@ -141,7 +145,8 @@
             value: 22,
             color: '#FF0000'
           }
-        ] // 璁惧鐘舵�佹寚绀虹伅鍒楄〃
+        ],// 璁惧鐘舵�佹寚绀虹伅鍒楄〃锛�
+        isFullscreen: false
       }
     },
     watch: {
@@ -186,7 +191,14 @@
             this.workshopDetails.backgroundImage
           )})`
 
+          this.fullScreenPageHeight = `calc(100% - ${this.pageHeaderHeight}px)`
+          this.normalPageHeight = `calc(100% - ${this.pageHeaderHeight}px - ${this.taskBarHeight}px - ${this.utilsBarHeight}px)`
 
+          if (this.isFullscreen) {
+            this.$refs.deviceContainerRef.style.height = this.fullScreenPageHeight
+          } else {
+            this.$refs.deviceContainerRef.style.height = this.normalPageHeight
+          }
         })
       },
 
@@ -285,6 +297,35 @@
           //   setTimeout( this.$refs.equmentDetaiModel.initData(item.equipmentId),0)
           // },1000*10)
         }
+      },
+
+      onResize() {
+        // 鍒╃敤灞忓箷鍒嗚鲸鐜囧拰window瀵硅薄鐨勫唴楂樺害鏉ュ垽鏂吋瀹笽E
+        let winFlag = window.innerHeight === window.screen.height
+        // 鍒╃敤window鍏ㄥ睆鏍囪瘑鏉ュ垽鏂� -- IE鏃犳晥
+        let isFull = window.fullScreen || document.webkitIsFullScreen
+
+        if (isFull === undefined) {
+          this.isFullscreen = winFlag
+        } else {
+          this.isFullscreen = winFlag || isFull
+        }
+        console.log(winFlag)  // true鍏ㄥ睆   false涓嶆槸鍏ㄥ睆
+        console.log('浠诲姟鏍忛珮搴�', this.taskBarHeight)
+        console.log('宸ュ叿鏍忛珮搴�', this.utilsBarHeight)
+
+        //鍏ㄥ睆鍒欏浘绾哥洅瀛愬彲瑙嗛珮搴﹀噺鍘婚〉澶撮珮搴︼紝姝e父绐楀彛鍒欏噺鍘婚〉澶淬�佸睆骞曞簳閮ㄤ换鍔℃爮浠ュ強娴忚鍣ㄥ伐鍏锋爮楂樺害
+        if (winFlag) {
+          console.log('瑙﹀彂鍏ㄥ睆')
+          this.$refs.deviceContainerRef.style.height = this.fullScreenPageHeight
+
+        } else {
+          console.log('鍏抽棴鍏ㄥ睆')
+          // 濡傛灉鍒锋柊椤甸潰閲嶆柊鍔犺浇鍚庨粯璁ゅ浜庡叏灞忔ā寮忥紝鍒欏伐鍏锋爮楂樺害涓鸿礋鏁帮紝鍥犳闇�瑕侀��鍑哄叏灞忔ā寮忔椂閲嶇疆宸ュ叿鏍忛珮搴�
+          this.utilsBarHeight = window.outerHeight - window.innerHeight
+          this.normalPageHeight = `calc(100% - ${this.pageHeaderHeight}px - ${this.taskBarHeight}px - ${this.utilsBarHeight}px)`
+          this.$refs.deviceContainerRef.style.height = this.normalPageHeight
+        }
       }
 
     },
@@ -293,15 +334,29 @@
         this.getDeviceListByApi(this.$route.params.id)
         this.getWorkshopDetailsByApi(this.$route.params.id)
       }
+
+
+      let winFlag = window.innerHeight === window.screen.height
+      // 鍒╃敤window鍏ㄥ睆鏍囪瘑鏉ュ垽鏂� -- IE鏃犳晥
+      let isFull = window.fullScreen || document.webkitIsFullScreen
+
+      if (isFull === undefined) {
+        this.isFullscreen = winFlag
+      } else {
+        this.isFullscreen = winFlag || isFull
+      }
+
+      // window.addEventListener('resize', this.onResize)
     },
     mounted() {
       // 绂佹鐢ㄦ埛閫変腑鍐呭
       document.onselectstart = () => false
     },
     beforeDestroy() {
-      // 纭繚閿�姣佸畾鏃跺櫒鍙婂洖鏀惰祫婧�
+      // 纭繚閿�姣佸畾鏃跺櫒銆佷簨浠跺強鍥炴敹璧勬簮
       clearInterval(this.timingAcquisition)
       this.timingAcquisition = null
+      // window.removeEventListener('resize', this.onResize)
     }
   }
 </script>
@@ -313,7 +368,6 @@
     color: #fff;
 
     .page-header {
-      height: 80px;
       font-size: 50px;
       text-align: center;
       position: relative;
@@ -340,10 +394,10 @@
         justify-content: space-between;
 
         .single-status-info {
-          width: 60px;
-          display: flex;
-          align-items: center;
-          justify-content: space-between;
+          /*width: 70px;*/
+          /*display: flex;*/
+          /*align-items: center;*/
+          /*justify-content: space-between;*/
 
           .status-square {
             width: 14px;
@@ -357,10 +411,10 @@
 
     .content-container {
       width: 100%;
-      height: calc(100% - 80px);
+      /*height: calc(100% - 200px);*/
+      /*height: 100%;*/
       background-repeat: no-repeat;
       background-size: 100% 100%;
-
 
       .single-device {
         position: absolute;
@@ -380,8 +434,7 @@
           width: 100%;
           height: 100%;
           display: flex;
-          align-items:end ;
-
+          align-items: end;
 
           .status-image {
             background-size: 100% 100%;

--
Gitblit v1.9.3