| 
					
				 | 
			
			
				@@ -75,6 +75,7 @@ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             :gatestate1="frontGateStatus" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             :gatestate2="midGateStatus" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             :gatestate3="rearGateStatus" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            :cameralist="cameralist" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             :height="height" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             :doorcount="ndoorcount" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				           ></doorAnimate> 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -100,7 +101,7 @@ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         <div class="flcard" v-if="this.TabCur == 'fanmain'"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				           <fanmainAnimate 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             ref="fanpage" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            style="width: 100%; min-width: 550px; height: calc(68vh - 220px)" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            style="width: 100%" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             :door1="door1" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             :topdoor1="topdoor1" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             :fundoor1="fundoor1" 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -131,67 +132,6 @@ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             :windowcount="nwindownum" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				           ></windowAnimate> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         </div> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        <div 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-          class="flcard" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-          style="height: calc(100vh - 80px); overflow-y: auto; padding: 0px" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        > 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-          <u-row 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            :gutter="0" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            v-for="(row, index) in rows" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            style="width: calc(100vw - 50px); float: left" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            :key="index" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-          > 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            <!-- 循环所有摄像头,根据摄像头个数分行分列 --> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            <!-- 分列 --> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            <u-col 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-              :span="24" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-              v-for="(item, subindex) in row.list" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-              :key="subindex" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-              style="margin-top: 5px; margin-bottom: 5px" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-              :style="'height:' + height" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            > 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-              <!-- 摄像头标题显示 --> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-              <u-row> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                <view class="videotitle"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                  <span>{{ item.name }}</span 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                  ><span v-if="item.netStatus == 0">【网络断开】</span> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                </view> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-              </u-row> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				- 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-              <!-- 摄像头展示 --> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-              <view 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                v-if="item.devicekind == 'flv'" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                style="width: 100%; height: 100%; text-align: center" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-              > 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                <video 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                  :id="'cameraElement' + item.id" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                  muted 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                  autoplay 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                  controls 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                  width="100%" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                  height="100%" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                ></video> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-              </view> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-              <!-- 海康控件展示 --> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-              <iframe 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                v-if="item.devicekind == 'hk'" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                ref="iframe" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                frameborder="0" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                scrolling="yes" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                style=" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                  z-index: -1; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                  background-color: transparent; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                  width: 100%; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                  height: 100%; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                  top: 0; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                  left: 0; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                  bottom: 0; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                " 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                :src="item.showurl" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-              ></iframe> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            </u-col> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-          </u-row> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        </div> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         <div class="flcard"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				           <div class="flex-container"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             <div 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -200,7 +140,10 @@ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				               :key="index" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				               v-show="item.appShow == 1" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             > 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-              <div class="datacardtime" v-if="item.monitorcode == 'readTime'"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              <div 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                class="datacardtime" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                v-if="item.monitorcode == 'readTime' && item.datatype == 1" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              > 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 <view 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                   class="demo-layout bg-purple-light" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                   style="padding: 20rpx; color: #3787fe" 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -211,44 +154,60 @@ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				               <div class="datacard" v-if="item.monitorcode !== 'readTime'"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 <div class="left-content"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                   <view 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                    v-if="item.monitorcode == 'ndoortype'" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    v-if="item.monitorcode == 'ndoortype' && item.datatype == 1" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     class="demo-layout bg-purple-light" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                    style="margin-top: 10rpx; color: #3787fe" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    style="margin-top: 60rpx; color: #3787fe" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                   > 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     {{ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                       tableData[item.monitorcode] == "1" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                         ? "行人" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                         : tableData[item.monitorcode] == "2" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                         ? "行车" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                        : "-" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        : "--" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     }} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                   </view> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                   <view 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                    v-else-if="item.monitorcode == 'netStatus'" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    v-else-if=" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                      item.monitorcode == 'netStatus' && item.datatype == 1 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    " 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     class="demo-layout bg-purple-light" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                    style="margin-top: 10rpx; color: #3787fe" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    style="margin-top: 60rpx; color: #3787fe" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                   > 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     {{ doorNetStatus == "1" ? "正常" : "异常" }} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                   </view> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                   <view 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                    v-else-if="item.monitorcode == 'warnFlag'" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    v-else-if=" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                      item.monitorcode == 'warnFlag' && item.datatype == 1 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    " 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     class="demo-layout bg-purple-light" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                    style="margin-top: 10rpx; color: #3787fe" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    style="margin-top: 60rpx; color: #3787fe" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                   > 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     {{ warnFlag == "1" ? "正常" : "异常" }} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                   </view> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                   <view 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                    v-else 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    v-else-if="item.datatype == 1" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     class="demo-layout bg-purple-light" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                    style="margin-top: 10rpx; color: #3787fe" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    style="margin-top: 60rpx; color: #3787fe" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                   > 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     {{ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                       tableData[item.monitorcode] == null || 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                       tableData[item.monitorcode] == "" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                        ? "-" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        ? "--" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                         : tableData[item.monitorcode] 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     }} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                   </view> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                  <view 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    v-else-if="item.datatype == 2" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    class="demo-layout bg-purple-light" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    style="margin-top: 60rpx; color: #3787fe" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                  > 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    {{ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                      tableData.readData[item.monitorcode] == null || 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                      tableData.readData[item.monitorcode] == "" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        ? "--" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        : tableData.readData[item.monitorcode] 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    }} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                  </view> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                   <div class="spacer"></div> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                   <!-- 间距 --> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                   <view 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -258,7 +217,7 @@ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     {{ item.des }} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                   </view> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 </div> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                <div 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                <!-- <div 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                   class="right-content" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                   :style="{ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     backgroundImage: 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -289,7 +248,7 @@ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                         : 'url(\'\')', 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     backgroundSize: '100% 100%', 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                   }" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                ></div> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                ></div> --> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				               </div> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             </div> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				           </div> 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -350,11 +309,10 @@ import windowAnimate from "../windowAnimate/windowAnimate.vue"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import windrectAnimate from "../windrectAnimate/windrectAnimate.vue"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import fanlocalAnimate from "../fanlocalAnimate/fanlocalAnimate2.vue"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import fanmainAnimate from "../fanmainAnimate/fanmainAnimate.vue"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-import flvjs from "flv.js"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 export default { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				   data() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     return { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-      tableData: [], //监测数据 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      tableData: {}, //监测数据 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       typeList: [], //展示字段 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       itemId: "", // 初始化 itemId 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       name: "", // 初始化 name 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -393,12 +351,6 @@ export default { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       fan2State: "", 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       deviceid: "", //ID 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       cameralist: [], //摄像数据 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-      rows: [], //分行 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-      flvPlayer: [], 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-      num: 1, //摄像头个数 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-      columnNum: 1, //列数 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-      columSpan: 24, //列块 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-      cameraType: "", 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     }; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				   }, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				   onLoad(query) { 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -476,7 +428,7 @@ export default { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				               response.data.result.msgTxt[0].datalist.length > 0 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             ) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				               var result = response.data.result.msgTxt[0].datalist[0]; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-              this.tableData = result.readData; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              this.tableData = result; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				               if (this.tableData.frontGateOpen == "1") { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 this.tableData.frontGateOpen = "打开"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				               } else { 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -529,8 +481,7 @@ export default { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				           .then((response) => { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             if (response.data.code == 200) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				               if (response.data.result.records.length > 0) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                this.cameralist = response.data.result.records; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                this.initData(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                this.cameralist = response.data.result.records[0]; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				               } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             } else { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				               resolve(response); 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -541,69 +492,6 @@ export default { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				           }); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       }); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     }, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    initData() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-      this.num = this.cameralist.length; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-      // 根据总数量  设置行数、列数 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-      // 分行分列 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-      this.setRows(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-      // if (this.cameraType == "flv") { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-      if (this.cameralist.length > 0) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        setTimeout(() => { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-          this.cameralist.forEach((element) => { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            if (element.netStatus == 1) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-              // 根据id设置每个播放摄像头的地址 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-              this.setVideoUrl(element, element.id); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-          }); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        }, 1000); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        // } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-      } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-      // } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    }, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				- 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    // 根据id设置每个播放摄像头的地址 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    setVideoUrl(element, id) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-      if (flvjs.isSupported()) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        var videourl = element.ip; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        if (videourl == null || videourl.indexOf("http") == -1) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-          videourl = configUrl.getCameraFLV() + id + ".flv"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        var videoElement = document.getElementById("cameraElement" + id); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        // 控件设置地址信息 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        var vdo = flvjs.createPlayer({ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-          type: "flv", 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-          url: videourl, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        }); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        // 控件绑定 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        vdo.attachMediaElement(videoElement); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        vdo.load(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        // 播放 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        vdo.play(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        this.flvPlayer.push(vdo); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-      } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    }, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				- 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    // 每行摄像头分列 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    setRows() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-      this.rows = []; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-      var index = 0; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-      // 循环行 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-      for (var i = 0; i < this.cameralist.length; i++) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        // 一行 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        var row1 = {}; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        var rowlist = []; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        // 根据摄像头信息设置每个摄像头的访问地址 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        if (index == 0) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-          this.cameralist[i].showurl = 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            this.cameralist[i].showurl + "&checkComponent=1"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        // 每行摄像头信息 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        rowlist.push(this.cameralist[i]); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        index++; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        row1.index = i; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        row1.list = rowlist; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        // 摄像头行数 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        this.rows.push(row1); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        console.log(this.rows, "1111111111111111"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-      } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    }, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     //设备控制 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     ctrlDevice(pass) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       let IDString = String(this.itemId); // 将 ID 转换为字符串 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -648,27 +536,11 @@ export default { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				   destroyed() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     // 停止定时器 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     this.stopTimer(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    // 控件清除缓存 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    this.flvPlayer.forEach((element) => { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-      element.pause(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-      element.unload(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-      element.detachMediaElement(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-      element.destroy(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-      element = null; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    }); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				   }, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 }; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 </script> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 <style lang="scss" scoped> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-.videotitle { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-  z-index: 2; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-  position: absolute; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-  top: 0px; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-  top: 10px; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-  right: 10px; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-  font-size: 16px; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 .top-nav { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				   background-image: url(../../../../static/topnavbar.png); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				   background-size: cover; /* 背景图片大小适应 */ 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -727,7 +599,8 @@ export default { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				   flex: 1; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				   margin: 1%; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				   float: left; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-  height: 50rpx; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  height: 50px; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  line-height: 29px; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				   text-align: center; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				   background: linear-gradient( 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     to right, 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -742,7 +615,7 @@ export default { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				   flex: 1; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				   margin: 1%; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				   float: left; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-  height: 100rpx; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  height: 180rpx; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				   text-align: center; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				   background: linear-gradient( 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     to right, 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -752,7 +625,7 @@ export default { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				   ); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 .left-content { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-  width: 50%; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  width: 100%; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				   display: flex; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				   flex-direction: column; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 } 
			 |