From 1872d4c65681b74938828823cdc41d9483cf0e6c Mon Sep 17 00:00:00 2001
From: zjj <3272660260@qq.com>
Date: 星期五, 27 十二月 2024 14:18:51 +0800
Subject: [PATCH] #

---
 Monitor-APP/pages/home/home.vue |  275 +++++++++++++++++++++++++++++++++++++++---------------
 1 files changed, 197 insertions(+), 78 deletions(-)

diff --git a/Monitor-APP/pages/home/home.vue b/Monitor-APP/pages/home/home.vue
index faaeef1..319e94b 100644
--- a/Monitor-APP/pages/home/home.vue
+++ b/Monitor-APP/pages/home/home.vue
@@ -3,7 +3,7 @@
 		<uni-transition :duration="duration" :mode-class="homeMode" :show="homeViewShow">
 			<view class="home-view">
 				<view class="head">
-					<text>涓壃鏅鸿兘澶у睆鏄剧ず绯荤粺</text>
+					<text>鏅鸿兘澶у睆鏄剧ず绯荤粺</text>
 				</view>
 				<!-- 鏃ュ巻 -->
 				<view class="time-tools">{{calendar}}</view>
@@ -15,58 +15,31 @@
 						<view class="mian-item-box">
 							<y-box>
 								<view class="box-item">
-									<text class="item-title">涓壃鏅鸿兘澶у睆鏄剧ず绯荤粺</text>
-									<text class="item-subTitle">Automatic Storageand Retrieval System</text>
-									<text class="item-text" style="text-align: left;">鍒╃敤绔嬩綋浠撳簱璁惧鍙疄鐜颁粨搴撻珮灞傚悎鐞嗗寲銆佸瓨鍙栬嚜鍔ㄥ寲銆佹搷浣滅畝渚垮寲锛涜嚜鍔ㄥ寲绔嬩綋浠撳簱鏄綋鍓嶆妧鏈按骞宠緝楂樼殑褰㈠紡銆傝嚜鍔ㄥ寲绔嬩綋浠撳簱鐨勪富浣撶敱璐ф灦銆佸贩閬撳紡鍫嗗灈璧烽噸鏈恒�佸叆锛堝嚭锛夊簱宸ヤ綔鍙板拰鑷姩杩愯繘锛堝嚭锛夊強鎿嶄綔鎺у埗绯荤粺缁勬垚銆傝揣鏋舵槸閽㈢粨鏋勬垨閽㈢瓔娣峰嚌鍦熺粨鏋勭殑寤虹瓚鐗╂垨缁撴瀯浣擄紝璐ф灦鍐呮槸鏍囧噯灏哄鐨勮揣浣嶇┖闂达紝宸烽亾鍫嗗灈璧烽噸鏈虹┛琛屼簬璐ф灦涔嬮棿鐨勫贩閬撲腑锛屽畬鎴愬瓨銆佸彇璐х殑宸ヤ綔銆傜鐞嗕笂閲囩敤璁$畻鏈哄強鏉″舰鐮佹妧鏈��</text>
-								</view>
+									<text class="item-title">鏅鸿兘澶у睆鏄剧ず绯荤粺</text>
+									<text class="item-subTitle">Intelligent LargeScreen Display System</text>
+									</view>
 								<view class="box-item">
 									<text class="item-title">浠撳簱鏁版嵁</text>
 									<text class="item-subTitle">warehouse data</text>
-									<view class="img-box">
+									<view class="img-box">										
+										<!-- swiper 涓�浜涜鏄�
+										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>
+												
+												
+												
+											</swiper-item>
+										</swiper>
 										
-										<view class="item-img">
-											<image src="../../static/a1.png" mode="aspectFit"></image>
-											<view class="flex-col" style="width: calc(100% - 5vw);">
-												<view class="flex-row" style="position: relative;" >
-													<view style="width: 2vw;padding-left: 2vw;;font-size: 2vw;">{{baseInfo.xDistance}}</view>
-													<view style="position: absolute;bottom: 0;left: 10vw;">KM</view>
-												</view>
-												<view style="height: 100%;text-align: left;text-indent: 2em;">绱璧拌璺濈(鍗冪背)</view>
-											</view>
-										</view>
-										
-										<view class="item-img">
-											<image src="../../static/b1.png" mode="aspectFit"></image>
-											<view class="flex-col" style="width: calc(100% - 5vw);">
-												<view class="flex-row" style="position: relative;" >
-													<view style="width: 2vw;padding-left: 2vw;;font-size: 2vw;">{{baseInfo.yDistance}}</view>
-													<view style="position: absolute;bottom: 0;left: 10vw;">KM</view>
-												</view>
-												<view style="height: 100%;text-align: left;text-indent: 2em;">绱鍗囬檷璺濈(鍗冪背)</view>
-											</view>
-										</view>
-										
-										<view class="item-img">
-											<image src="../../static/c1.png" mode="aspectFit"></image>
-											<view class="flex-col" style="width: calc(100% - 5vw);">
-												<view class="flex-row" style="position: relative;" >
-													<view style="-width: 2vw;padding-left: 2vw;;font-size: 2vw;">{{baseInfo.xDuration}}</view>
-													<view style="position: absolute;bottom: 0;left: 10vw;">H</view>
-												</view>
-												<view style="height: 100%;text-align: left;text-indent: 2em;">绱璧拌鏃堕暱(灏忔椂)</view>
-											</view>
-										</view>
-										
-										<view class="item-img">
-											<image src="../../static/d1.png" mode="aspectFit"></image>
-											<view class="flex-col" style="width: calc(100% - 5vw);">
-												<view class="flex-row" style="position: relative;" >
-													<view style="width: 2vw;padding-left: 2vw;;font-size: 2vw;">{{baseInfo.yDuration}}</view>
-													<view style="position: absolute;bottom: 0;left: 10vw;">H</view>
-												</view>
-												<view style="height: 100%;text-align: left;text-indent: 2em;">绱鍗囬檷鏃堕暱(灏忔椂)</view>
-											</view>
-										</view>
 										
 									</view>
 								</view>
@@ -83,7 +56,7 @@
 											<view class="flex-col" style="align-items: flex-end;justify-content: flex-end;" >
 												<!-- style="justify-content: flex-end;position: absolute;top: 0;right: 1vw;text-align: right;" -->
 												<text class="item-title">{{baseInfo.usedPr}}%</text>
-												<text class="item-subTitle">鍚屾瘮涓婃湀 + 5%</text>
+												<!-- <text class="item-subTitle">鍚屾瘮涓婃湀 + 5%</text> -->
 											</view>
 										</view>
 									</view>
@@ -119,8 +92,8 @@
 													<!-- 鐧惧垎姣� -->
 													<view class="flex-col" style="align-items: flex-end;justify-content: flex-end;" >
 														<!-- style="justify-content: flex-end;position: absolute;top: 0;right: 1vw;text-align: right;" -->
-														<text class="item-title">31</text>
-														<text class="item-subTitle">浠婃棩璁㈠崟鏁�</text>
+														<!-- <text class="item-title">31</text>
+														<text class="item-subTitle">浠婃棩璁㈠崟鏁�</text> -->
 													</view>
 												</view>
 											</view>
@@ -186,7 +159,7 @@
 								<view style="height: 18%;">
 									<y-box>
 										<view class="flex-col" style="width: 100%;height: 100%;font-size: 4vh;justify-content: center;letter-spacing: 1vh;">
-											涓壃鏅鸿兘澶у睆鏄剧ず绯荤粺
+											鏅鸿兘澶у睆鏄剧ず绯荤粺
 										</view>
 									</y-box>
 								</view>
@@ -228,18 +201,21 @@
 									vertical 婊戝姩鏂瑰悜鏄惁涓虹旱鍚� 
 									display-multiple-items 鍚屾椂鏄剧ず鐨勬粦鍧楁暟閲� -->
 									<swiper class="swiper-body-main" vertical="true" 
-									display-multiple-items="3"
+									display-multiple-items="1"
 									circular="true" :autoplay="true" :interval="3000" :duration="2000">
 										<swiper-item class="swiper-item" v-for="(item,i) in swiperList" :key="i">
 											<!-- <view style="width: 30%;">{{i+1}} / {{swiperList.length}}</view> -->
 											<!-- <view style="width: 30%;">鏂欏彿: {{item.matnr}}</view> -->
-											<view style="width: 50%;">DI鍗曞彿: {{item.orderNo}}</view>
-											<view style="width: 50%;">鎹嗗寘鍙风爜: {{item.matnr}}</view>
-											<view style="width: 100%;">AS400: {{item.brand}}</view>
+											<view style="width: 50%; font-size: 3vw;">鐗╂枡缂栫爜: {{item.matnr}}</view>
+											<view style="width: 50%; font-size: 3vw;">鍚嶇О: {{item.maknx}}</view>
+											<!-- <view style="width: 33%; font-size: 3vw;">鐢熶骇鏃ユ湡: {{item.manuDate}}</view> -->
 											
-											<view style="width: 100%;">鏈虹鍙�: {{item.maknx}}</view>
-											<view style="width: 50%;">鍙版暟: {{item.number}}</view>
-											<view style="width: 50%;">鍑�閲�: {{item.weight}}KG</view>
+											
+											<view style="width: 50%; font-size: 3vw;">瑙勬牸: {{item.specs}}</view>
+											<view style="width: 50%; font-size: 3vw;">鎵规: {{item.batch}}</view>
+											<view style="width: 50%; font-size: 3vw;">閿�鍞崟鍙�: {{item.orderNo}}</view>
+											<view style="width: 50%; font-size: 3vw;">瀹㈡埛鍚嶇О: {{item.customer}}</view>
+											<view style="width: 33%; font-size: 3vw;">鏁伴噺: {{item.count}}</view>
 											
 											
 										</swiper-item>
@@ -328,6 +304,8 @@
 <script>
 	import demodata from '@/mockdata/demodata.json';
 	import ycqdata from '@/pages/index/data.json';
+	import {WebSocketClient} from "@/static/js/WebSocketClient"	
+	let socket;
 	export default {
 		data() {
 			return {
@@ -392,6 +370,10 @@
 				timeOut: false,
 				times: 0,
 				currDate: '',
+				locList:[],	
+				oldHours:'',
+				oldMin:''
+        
 				
 			}
 		},
@@ -415,25 +397,166 @@
 			that.baseCrnId = BaseCrnId
 			// this.getUrl()
 		},
-		onLoad() {
+		created() {
+			let that = this
+			const BaseIP = uni.getStorageSync('BaseIp');
+			const BaseLedId = uni.getStorageSync('BaseLedId');
+			const BasePort = uni.getStorageSync('BasePort');
+			const BaseCrnId = uni.getStorageSync('BaseCrnId');
+			const PROJ = uni.getStorageSync('UPROJ');
+			that.baseUrl = PROJ
+			that.baseIP = BaseIP
+			that.baseLedId = BaseLedId
+			that.basePort = BasePort
+			that.baseCrnId = BaseCrnId
+			that.webSockerInit();
+		},
+		onLoad() {			
 			setInterval(()=>{
 				this.getServerData()
-				this.initlineChart()
-				this.initPieChart()
-				this.getOther()
-				// this.getDate()
-				this.getDate2()
+				// this.initlineChart()
+				// this.initPieChart()
+				// this.getOther()
+				// // this.getDate()
+				// this.getDate2()
 				// this.getInfo()
 				// this.getError()
-				this.getInfo2()
-				this.getError2()
-				this.getUrl()
+				// this.getInfo2()
+				// this.getError2()
+				// this.getUrl()
 				this.controller()
+				// this.statisticalModel()
 				// 娴嬭瘯鐢�
 				
 			},1000)
+			
+			setInterval(()=> {	
+				setTimeout(()=>{
+					plus.runtime.restart();
+				},100)
+				
+			},1000*60*60*4)
+			
+			// 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)
+				
+			// },1000*30)
 		},
 		methods: {
+			webSockerInit(){
+				let that = this;
+				that.commonUrl = that.baseIP + ':' +that.basePort + "/" +that.baseUrl
+				let socketUrl = "ws://"+that.commonUrl+"/led/"+that.baseLedId
+						// socketUrl = "ws://10.0.100.150:8080/gtctu/led/113"
+				const ws = new WebSocketClient(socketUrl);
+				ws.connect()
+				ws.onmessage((msg)=>{					
+				 let data = JSON.parse(msg.data)
+				 if(data.type === "default"){
+				 	that.chartsData.Pie.series[0].data = data.pie
+				 	that.baseInfo.stockCount = data.stockCunt
+				 	that.baseInfo.emptyCount = data.emptyCount
+				 	that.baseInfo.noneCount =data.noneCount
+				 	that.baseInfo.used = data.used
+				 	that.baseInfo.usedPr = data.usedPr
+				 	
+				 	that.chartsData.Line.categories = [
+				 		that.getDateFormat(-11),that.getDateFormat(-10),that.getDateFormat(-9),that.getDateFormat(-8),
+				 		that.getDateFormat(-7),that.getDateFormat(-6),that.getDateFormat(-5),that.getDateFormat(-4),
+				 		that.getDateFormat(-3),that.getDateFormat(-2),that.getDateFormat(-1),that.getDateFormat(0),]
+				 	that.chartsData.Line.series = data.rows
+				 	that.calendar = data.year + "骞�" + data.month + "鏈�" + data.day + "鏃� " + data.hour + ":" + data.minute + ":" + data.second + " " + data.week
+				 	that.currDate = data.year + "/" + data.month + "/" + data.day
+				 	that.locList = data.inventoryData
+					that.oldHours = data.hour
+					that.oldMin = data.minute
+				 }else if(data.type === "error"){
+				 	if (data.errMsg && data.errMsg !== "") {
+				 		var errorInfo = data.errMsg
+				 		if (that.infoType == 1) {
+				 			that.infoType = 3
+				 			that.infoText.title = "鍏朵粬淇℃伅" 
+				 			// that.infoText.title = "寮傚父"
+				 			that.infoText.error = errorInfo
+				 			return
+				 		}
+				 		that.infoType = 2
+				 		that.infoText.title = "鍏朵粬淇℃伅"
+				 		// that.infoText.title = "寮傚父"
+				 		that.infoText.error = errorInfo
+				 	} else {
+				 		if (that.infoType == 1) {
+				 			return
+				 		}
+				 		that.infoType = 0
+				 	}
+				 }else if(data.type === "task"){
+					 if (data.taskList && data.taskList !== "" && data.taskList.length !=0) {
+					 	if (that.infoType == 2 || that.infoType == 3) {
+					 		return;
+					 	}
+					 	// infoType1:鍙湁鎷f枡绛変俊鎭�
+					 	that.infoType = 1
+					 	if (data.taskList[0].ioType === 101) {
+					 		that.infoText.title = '鍏ㄦ澘鍑哄簱'
+					 	} else if(data.taskList[0].ioType === 103) {
+					 		that.infoText.title = '鎷f枡鍑哄簱'
+					 	} else if(data.taskList[0].ioType === 107) {
+					 		that.infoText.title = '鐩樼偣鍑哄簱'
+					 	} else if(data.taskList[0].ioType === 1) {
+					 		that.infoText.title = '鍏ュ簱'
+					 	} else if(data.taskList[0].ioType === 10) {
+					 		that.infoText.title = '绌烘墭鍏ュ簱'
+					 	} else if(data.taskList[0].ioType === 110) {
+					 		that.infoText.title = '绌烘墭鍑哄簱'
+					 	} else if(data.taskList[0].ioType === 104) {
+					 		that.infoText.title = '骞舵澘鍑哄簱'
+					 	}else if(data.taskList[0].ioType === 54) {
+					 		that.infoText.title = '骞舵澘鍏ュ簱'
+					 	}
+					 	that.infoText.barcode = data.taskList[0].barcode
+					 	that.infoText.workNo = data.taskList[0].workNo
+					 	that.infoText.sourceLocNo = data.taskList[0].sourceLocNo
+					 	that.infoText.staNo = data.taskList[0].staNo
+					 	that.swiperList = data.taskList[0].matDtos
+					 	// that.infoText.matnr = res.data[0].matDtos[0].matnr
+					 	// that.infoText.specs = res.data[0].matDtos[0].specs
+					 	// that.infoText.maknx = res.data[0].matDtos[0].maknx
+					 	// that.infoText.count = res.data[0].matDtos[0].count
+					 } else {
+					 	if (that.infoType == 2 || that.infoType == 3) {
+					 		return;
+					 	}
+					 	that.infoType = 0
+					 }
+				 }
+				 
+				})
+			},
+			statisticalModel() {
+				let that = this
+				uni.request({
+					url: that.commonUrl + "/monitor/locDetl/pda/statisticalModel",
+					method:'GET',
+					success(result) {
+						var res = result.data
+						if (res.code === 200) {
+							console.log(res.data)
+							that.locList = res.data
+						}
+					}
+				})
+			},
 			timeOut() {
 				console.log(this.times);
 			},
@@ -726,8 +849,7 @@
 					method:"GET",
 					success(result) {
 						var res = result.data.data
-						that.calendar = res.year + "骞�" + res.month + "鏈�" + res.day + "鏃� " + res.hour + ":" + res.minute + ":" + res.second + " " + res.week
-						that.currDate = res.year + "/" + res.month + "/" + res.day
+						
 					}
 				})
 			},
@@ -771,11 +893,7 @@
 					success(result) {
 						var res = result.data
 						if (res.code === 200) {
-							that.chartsData.Line.categories = [
-								that.getDateFormat(-11),that.getDateFormat(-10),that.getDateFormat(-9),that.getDateFormat(-8),
-								that.getDateFormat(-7),that.getDateFormat(-6),that.getDateFormat(-5),that.getDateFormat(-4),
-								that.getDateFormat(-3),that.getDateFormat(-2),that.getDateFormat(-1),that.getDateFormat(0),]
-							that.chartsData.Line.series = res.data.rows
+							
 						}
 					}
 				})
@@ -808,7 +926,7 @@
 						ledId: that.baseLedId,
 					},
 					success(result) {
-						console.log(result);
+						// console.log(result);
 						var res = result.data
 						if (res.code === 200) {
 							that.baseInfo.xDistance = res.data.xDistance
@@ -903,6 +1021,7 @@
 		height: 8.5%;
 	}
 	.img-box {
+		height: 23vw;
 		width: 100%;
 		/* background-color: #666666; */
 		display: flex;
@@ -946,7 +1065,7 @@
 	  margin-left: 10%;
 	} 
 	.charts-box-ring {
-		width: 50%;
+		width: 60%;
 		height: 24vh;
 		/* background-color: #00ffff; */
 	}

--
Gitblit v1.9.1