From d306991caf17e3ba029f0f7d2c33d4aded6100cd Mon Sep 17 00:00:00 2001
From: zjj <3272660260@qq.com>
Date: 星期四, 10 七月 2025 13:20:07 +0800
Subject: [PATCH] #

---
 Monitor-APP/pages/home/home.vue |  333 +++++++++++++++++++++---------------------------------
 1 files changed, 130 insertions(+), 203 deletions(-)

diff --git a/Monitor-APP/pages/home/home.vue b/Monitor-APP/pages/home/home.vue
index 7b023e5..1409115 100644
--- a/Monitor-APP/pages/home/home.vue
+++ b/Monitor-APP/pages/home/home.vue
@@ -27,19 +27,16 @@
 										circular 鏄惁閲囩敤琛旀帴婊戝姩锛屽嵆鎾斁鍒版湯灏惧悗閲嶆柊鍥炲埌寮�澶�
 										vertical 婊戝姩鏂瑰悜鏄惁涓虹旱鍚� 
 										display-multiple-items 鍚屾椂鏄剧ず鐨勬粦鍧楁暟閲� -->
-										<swiper class="swiper-body-main" vertical="true" 
-										display-multiple-items="5"
-										circular="true" :autoplay="true" :interval="3000" :duration="2000">
-											<swiper-item class="swiper-item" v-for="(item,i) in locList" :key="i">
-												<!-- <view style="width: 30%;">{{i+1}} / {{swiperList.length}}</view> -->
-												<!-- <view style="width: 30%;">鏂欏彿: {{item.matnr}}</view> -->
-												<view style="width: 50%; font-size: 1vw;">鐗╂枡鐮�: {{item.matnr}}</view>
-												<view style="width: 50%; font-size: 1vw;">鏁伴噺: {{item.matnrCount}}</view>
+										
+											<view style="width: 100%;display: flex;" v-for="(item,i) in locList" :key="i">
+												
+												<view style="display: flex; justify-content: center;align-items: center;width: 48%; font-size: 1.3vw;">鐗╂枡鐮�: {{item.matnr}}</view>
+												<view style="display: flex; justify-content: center;align-items: center;width: 48%; font-size: 1.3vw;">鏁伴噺: {{item.matnrCount}}</view>
 												
 												
 												
-											</swiper-item>
-										</swiper>
+											</view>
+										
 										
 										
 									</view>
@@ -317,9 +314,9 @@
 </template>
 <!-- {"msg":"鎿嶄綔鎴愬姛","code":200,"data":[{"title":"鍏ㄦ澘鍑哄簱","workNo":7460,"staNo":110,"sourceStaNo":null,"locNo":null,"sourceLocNo":"0807102","matDtos":[{"matNo":"50460834","maknx":"200x60妗岄潰","count":26.0}],"emptyMk":false,"ioType":101}]} -->
 <script>
-	
+	import demodata from '@/mockdata/demodata.json';
 	import ycqdata from '@/pages/index/data.json';
-	
+	import {WebSocketClient} from "@/static/js/WebSocketClient"	
 	import WebSocketUtil from './uniWebSocket';
 	let socket;
 	export default {
@@ -332,10 +329,6 @@
 				homeMode: [],
 				infoMode: [],
 				errorInfoMode: [],
-				needUpdateCharts: false,
-				viewSwitchTimer: null, // 瑙嗗浘鍒囨崲瀹氭椂鍣�
-				viewSwitchInProgress: false, // 娣诲姞杩欎竴琛屾潵璺熻釜瑙嗗浘鍒囨崲鐘舵��
-				timerIds: [], // 瀛樺偍瀹氭椂鍣↖D
 				baseInfo: {
 					xDistance: 1,
 					yDistance: 2,
@@ -358,7 +351,7 @@
 						}]
 					},
 				},
-				duration: 1000,
+				duration: 300,
 				calendar: '',
 				ringOpts:{},
 				chartsDataLine1: {},
@@ -450,8 +443,7 @@
 			// that.webSockerInit()
 		},
 		onLoad() {			
-			// 瀛樺偍瀹氭椂鍣↖D浠ヤ究鍚庣画娓呯悊
-			const timerId1 = setInterval(()=>{
+			setInterval(()=>{
 				this.getServerData()
 				// this.initlineChart()
 				// this.initPieChart()
@@ -468,48 +460,45 @@
 				// 娴嬭瘯鐢�
 				
 			},1000)
-			this.timerIds.push(timerId1)
 			
-			const timerId2 = setInterval(()=> {	
+			setInterval(()=> {	
 				setTimeout(()=>{
 					plus.runtime.restart();
 				},100)
 				
 			},1000*60*60*4)
-			this.timerIds.push(timerId2)
-			//瀹夊崜鍐呭瓨鍗犵敤鎵撳嵃
-			// setInterval(() => {
-			// 	plus.android.importClass('android.os.Debug');
-			// 	          const mem = plus.android.invoke(
-			// 	            'android.os.Debug', 
-			// 	            'getNativeHeapAllocatedSize'
-			// 	          ) / 1048576;
-			// 	          console.log(mem.toFixed(1))
+			
+			// 姣忓皬鏃惰Е鍙戜竴娆″瀮鍦惧洖鏀�
+			const memoryCleanerId = setInterval(() => {
+			
+				if (plus.os.name.toLowerCase() === 'android') {
+					// 寮哄埗瑙﹀彂 GC
+					plus.android.importClass('java.lang.System');
+					plus.android.invoke('java.lang.System', 'gc');
+					console.log('鎵嬪姩瑙﹀彂 GC');
+				}
+			
+			
+				// 娓呯悊涓嶅啀闇�瑕佺殑澶у瀷鏁版嵁瀵硅薄
+				if (this.oldData && this.oldData.length > 100) {
+					this.oldData = [];
+				}
+			}, 3000*10); // 姣忓皬鏃舵墽琛屼竴娆�
+			
+			// setInterval(()=> {
+			// 	setTimeout(()=>{
+			// 		var time = new Date();
+			// 		var hh = time.getHours();
+			// 		var mm = time.getMinutes();
+			// 		if(hh > this.oldHours && mm >this.oldMin && this.oldMin - mm < 55){
+			// 			plus.runtime.restart();
+			// 		}
+			// 		if(mm >this.oldMin && mm - this.oldMin >2){
+			// 			plus.runtime.restart();
+			// 		}
+			// 	},100)
 				
-			// 	}, 2000)
-			
-		},
-		onUnload() {
-			// 娓呯悊鎵�鏈夊畾鏃跺櫒
-			this.timerIds.forEach(id => clearInterval(id))
-			this.timerIds = []
-		},
-		beforeDestroy() {
-			// 娓呯悊WebSocket杩炴帴
-			if (this.socketClient) {
-				this.socketClient.close()
-				this.socketClient = null
-			}
-			
-			// 娓呯悊鎵�鏈夊畾鏃跺櫒
-			this.timerIds.forEach(id => clearInterval(id))
-			this.timerIds = []
-			
-			// 娓呯悊瑙嗗浘鍒囨崲瀹氭椂鍣�
-			if (this.viewSwitchTimer) {
-				clearTimeout(this.viewSwitchTimer)
-				this.viewSwitchTimer = null
-			}
+			// },1000*30)
 		},
 		methods: {
 			uniWebSocket(){
@@ -609,8 +598,6 @@
 			showDate(data){
 				const that = this
 				if(data.type === "default"){
-					// 璁剧疆鏍囪锛岃〃绀烘暟鎹凡鏇存柊锛岄渶瑕侀噸鏂版覆鏌撳浘琛�
-					that.needUpdateCharts = true
 					that.chartsData.Pie.series[0].data = data.pie
 					that.baseInfo.stockCount = data.stockCunt
 					that.baseInfo.emptyCount = data.emptyCount
@@ -707,12 +694,8 @@
 				this.commonUrl = this.baseHttp + this.baseIP + ':' +this.basePort + "/" +this.baseUrl				
 			},
 			getServerData() {
-				// 鍙湪鏁版嵁鍙樺寲鏃舵墠杩涜娣辨嫹璐�
-				if (this.needUpdateCharts) {
-					this.chartsDataLine1=JSON.parse(JSON.stringify(this.chartsData.Line))
-					this.chartsDataPie2=JSON.parse(JSON.stringify(this.chartsData.Pie))
-					this.needUpdateCharts = false
-				}
+				this.chartsDataLine1=JSON.parse(JSON.stringify(this.chartsData.Line))
+				this.chartsDataPie2=JSON.parse(JSON.stringify(this.chartsData.Pie))
 			},
 			// 鑾峰彇閿欒淇℃伅
 			getInfo2() {
@@ -870,147 +853,91 @@
 			},
 			// 鎺у埗鍣�
 			controller() {
-    // 濡傛灉瑙嗗浘鍒囨崲姝e湪杩涜涓紝涓嶈涓柇
-    if (this.viewSwitchInProgress) {
-        return;
-    }
-    
-    // 娓呴櫎涔嬪墠鐨勮鍥惧垏鎹㈠畾鏃跺櫒
-    if (this.viewSwitchTimer) {
-        clearTimeout(this.viewSwitchTimer)
-        this.viewSwitchTimer = null
-    }
-    
-    switch(this.infoType) {
-        // 鏈変俊鎭� 浣� 娌℃湁閿欒淇℃伅
-        case 0: 
-            if (this.errorInfoViewShow) {
-                this.viewSwitchInProgress = true;
-                this.errorInfoViewShow = false
-                this.errorInfoMode = ['fade', 'slide-bottom']
-                this.viewSwitchTimer = setTimeout(()=>{
-                    this.homeViewShow = true
-                    this.homeMode = ['fade', 'slide-bottom']
-                    // 璁剧疆鍙︿竴涓畾鏃跺櫒鏉ラ噸缃繘琛屼腑鏍囧織
-                    setTimeout(() => {
-                        this.viewSwitchInProgress = false;
-                    }, 1000);
-                },1000)
-            } else if (this.infoViewShow) {
-                this.viewSwitchInProgress = true;
-                this.infoViewShow = false
-                this.infoMode = ['fade', 'slide-bottom']
-                this.viewSwitchTimer = setTimeout(()=>{
-                    this.homeViewShow = true
-                    this.homeMode = ['fade', 'slide-bottom']
-                    // 璁剧疆鍙︿竴涓畾鏃跺櫒鏉ラ噸缃繘琛屼腑鏍囧織
-                    setTimeout(() => {
-                        this.viewSwitchInProgress = false;
-                    }, 1000);
-                },1000)
-            } else if (this.errorInfoViewShow && this.infoViewShow) {
-                this.viewSwitchInProgress = true;
-                this.errorInfoViewShow = false
-                this.infoViewShow = false
-                this.infoMode = ['fade', 'slide-bottom']
-                this.viewSwitchTimer = setTimeout(()=>{
-                    this.homeViewShow = true
-                    this.homeMode = ['fade', 'slide-bottom']
-                    // 璁剧疆鍙︿竴涓畾鏃跺櫒鏉ラ噸缃繘琛屼腑鏍囧織
-                    setTimeout(() => {
-                        this.viewSwitchInProgress = false;
-                    }, 1000);
-                },1000)
-            }
-            return;
-        case 1: 
-            if (this.homeViewShow) {
-                this.viewSwitchInProgress = true;
-                this.homeViewShow = false
-                this.homeMode = ['fade', 'slide-bottom']
-                this.viewSwitchTimer = setTimeout(()=>{
-                    this.infoViewShow = true
-                    this.infoMode = ['fade', 'slide-bottom']
-                    // 璁剧疆鍙︿竴涓畾鏃跺櫒鏉ラ噸缃繘琛屼腑鏍囧織
-                    setTimeout(() => {
-                        this.viewSwitchInProgress = false;
-                    }, 1000);
-                },1000)
-            } else if (this.errorInfoViewShow) {
-                this.viewSwitchInProgress = true;
-                this.errorInfoViewShow = false
-                this.errorInfoMode = ['fade', 'slide-bottom']
-                this.viewSwitchTimer = setTimeout(()=>{
-                    this.infoViewShow = true
-                    this.infoMode = ['fade', 'slide-bottom']
-                    // 璁剧疆鍙︿竴涓畾鏃跺櫒鏉ラ噸缃繘琛屼腑鏍囧織
-                    setTimeout(() => {
-                        this.viewSwitchInProgress = false;
-                    }, 1000);
-                },1000)
-            }
-            
-            return;
-            // 鏈変俊鎭� 涓� 鏈夐敊璇俊鎭�
-        case 2:
-            if (this.homeViewShow) {
-                this.viewSwitchInProgress = true;
-                this.homeViewShow = false
-                this.homeMode = ['fade', 'slide-bottom']
-                this.viewSwitchTimer = setTimeout(()=>{
-                    this.errorInfoViewShow = true
-                    this.errorInfoMode = ['fade', 'slide-bottom']
-                    // 璁剧疆鍙︿竴涓畾鏃跺櫒鏉ラ噸缃繘琛屼腑鏍囧織
-                    setTimeout(() => {
-                        this.viewSwitchInProgress = false;
-                    }, 1000);
-                },1000)
-            } else if (this.infoViewShow) {
-                this.viewSwitchInProgress = true;
-                this.infoViewShow = false
-                this.infoMode = ['fade', 'slide-bottom']
-                this.viewSwitchTimer = setTimeout(()=>{
-                    this.errorInfoViewShow = true
-                    this.errorInfoMode = ['fade', 'slide-bottom']
-                    // 璁剧疆鍙︿竴涓畾鏃跺櫒鏉ラ噸缃繘琛屼腑鏍囧織
-                    setTimeout(() => {
-                        this.viewSwitchInProgress = false;
-                    }, 1000);
-                },1000)
-            }
-            return;
-        // 鏈変俊鎭� 涓� 鏈夐敊璇俊鎭�
-        case 3:
-            if (this.homeViewShow) {
-                this.viewSwitchInProgress = true;
-                this.homeViewShow = false
-                this.homeMode = ['fade', 'slide-bottom']
-                this.viewSwitchTimer = setTimeout(()=>{
-                    this.errorInfoViewShow = true
-                    this.errorInfoMode = ['fade', 'slide-bottom']
-                    // 璁剧疆鍙︿竴涓畾鏃跺櫒鏉ラ噸缃繘琛屼腑鏍囧織
-                    setTimeout(() => {
-                        this.viewSwitchInProgress = false;
-                    }, 1000);
-                },1000)
-            } else if (this.infoViewShow) {
-                this.viewSwitchInProgress = true;
-                this.infoViewShow = false
-                this.infoMode = ['fade', 'slide-bottom']
-                this.viewSwitchTimer = setTimeout(()=>{
-                    this.errorInfoViewShow = true
-                    this.errorInfoMode = ['fade', 'slide-bottom']
-                    // 璁剧疆鍙︿竴涓畾鏃跺櫒鏉ラ噸缃繘琛屼腑鏍囧織
-                    setTimeout(() => {
-                        this.viewSwitchInProgress = false;
-                    }, 1000);
-                },1000)
-            }
-            return;
-        
-    }
-    
-},
+				switch(this.infoType) {
+					// 鏈変俊鎭� 浣� 娌℃湁閿欒淇℃伅
+					case 0: 
+						if (this.errorInfoViewShow) {
+							this.errorInfoViewShow = false
+							this.errorInfoMode = ['fade', 'slide-bottom']
+							setTimeout(()=>{
+								this.homeViewShow = true
+								this.homeMode = ['fade', 'slide-bottom']
+							},1000)
+						} else if (this.infoViewShow) {
+							this.infoViewShow = false
+							this.infoMode = ['fade', 'slide-bottom']
+							setTimeout(()=>{
+								this.homeViewShow = true
+								this.homeMode = ['fade', 'slide-bottom']
+							},1000)
+						} else if (this.errorInfoViewShow && this.infoViewShow) {
+							this.errorInfoViewShow = false
+							this.infoViewShow = false
+							this.infoMode = ['fade', 'slide-bottom']
+							setTimeout(()=>{
+								this.homeViewShow = true
+								this.homeMode = ['fade', 'slide-bottom']
+							},1000)
+						}
+						return;
+					case 1: 
+						if (this.homeViewShow) {
+							this.homeViewShow = false
+							this.homeMode = ['fade', 'slide-bottom']
+							setTimeout(()=>{
+								this.infoViewShow = true
+								this.infoMode = ['fade', 'slide-bottom']
+							},1000)
+						} else if (this.errorInfoViewShow) {
+							this.errorInfoViewShow = false
+							this.errorInfoMode = ['fade', 'slide-bottom']
+							setTimeout(()=>{
+								this.infoViewShow = true
+								this.infoMode = ['fade', 'slide-bottom']
+							},1000)
+						}
+						
+						return;
+						// 鏈変俊鎭� 涓� 鏈夐敊璇俊鎭�
+					case 2:
+						if (this.homeViewShow) {
+							this.homeViewShow = false
+							this.homeMode = ['fade', 'slide-bottom']
+							setTimeout(()=>{
+								this.errorInfoViewShow = true
+								this.errorInfoMode = ['fade', 'slide-bottom']
+							},1000)
+						} else if (this.infoViewShow) {
+							this.infoViewShow = false
+							this.infoMode = ['fade', 'slide-bottom']
+							setTimeout(()=>{
+								this.errorInfoViewShow = true
+								this.errorInfoMode = ['fade', 'slide-bottom']
+							},1000)
+						}
+						return;
+					// 鏈変俊鎭� 涓� 鏈夐敊璇俊鎭�
+					case 3:
+						if (this.homeViewShow) {
+							this.homeViewShow = false
+							this.homeMode = ['fade', 'slide-bottom']
+							setTimeout(()=>{
+								this.errorInfoViewShow = true
+								this.errorInfoMode = ['fade', 'slide-bottom']
+							},1000)
+						} else if (this.infoViewShow) {
+							this.infoViewShow = false
+							this.infoMode = ['fade', 'slide-bottom']
+							setTimeout(()=>{
+								this.errorInfoViewShow = true
+								this.errorInfoMode = ['fade', 'slide-bottom']
+							},1000)
+						}
+						return;
+					
+				}
+				
+			},
 			// 涓诲睆骞�
 			handle(type) {
 				this.homeViewShow = !this.homeViewShow

--
Gitblit v1.9.1