From f85eb7732d334d60e8acef66a53b9548bac125c5 Mon Sep 17 00:00:00 2001
From: whycq <you@example.com>
Date: 星期六, 19 十一月 2022 10:34:40 +0800
Subject: [PATCH] #

---
 Monitor-APP/pages/home/home.vue |  388 ++++++++++++++++++++++++++++++++++++++++++++++--------
 1 files changed, 326 insertions(+), 62 deletions(-)

diff --git a/Monitor-APP/pages/home/home.vue b/Monitor-APP/pages/home/home.vue
index f623243..a81bb72 100644
--- a/Monitor-APP/pages/home/home.vue
+++ b/Monitor-APP/pages/home/home.vue
@@ -1,15 +1,15 @@
 <template>
 	<view class="container">
 		<!-- 涓昏鍥� -->
-		<uni-transition :duration="duration" :mode-class="modeClass" :styles="homeView" :show="homeViewShow">
+		<uni-transition :duration="duration" :mode-class="homeMode" :show="homeViewShow">
 			<view class="home-view">
 				<view class="head">
 					<text>鑷姩浠撳簱WCS鐩戞帶骞冲彴</text>
 				</view>
 				<!-- 鏃ュ巻 -->
 				<view class="time-tools">{{calendar}}</view>
-				<view class="button-left"></view>
-				<view class="button-right"></view>
+				<view class="button-left" @click="ejected()"></view>
+				<view class="button-right" @click="ejected()"></view>
 				<!-- 涓讳綋 -->
 				<view class="main">
 					<view class="mian-item">
@@ -105,7 +105,7 @@
 					<view class="mian-item">
 						<view class="mian-item-box">
 							<view style="width: 100%;height: 100%;">
-								<view style="height: 40%;">
+								<view style="height: 35%;">
 									<!-- 鎶樼嚎鍥� -->
 									<y-box>
 										<view class="box-item">
@@ -125,7 +125,7 @@
 													</view>
 												</view>
 											</view>
-											<view class="charts-box" v-if="!showCharts">
+											<view class="charts-box">
 												<qiun-data-charts type="line" :chartData="chartsDataLine1" :echartsH5="true" :echartsApp="true"/>
 											</view>
 										</view>
@@ -137,7 +137,7 @@
 								<view style="height: 2%;"></view>
 								
 								
-								<view style="height: 38%;">
+								<view style="height: 43%;">
 									<y-box>
 										<view class="box-item">
 											<view class="flex-row" style="width: 100%;">
@@ -155,12 +155,41 @@
 													</view>
 												</view>
 											</view>
+											<view class="flex-row" style="width: 100%;">
+												<!-- 宸� -->
+												<view class="charts-box-ring">
+													<qiun-data-charts type="ring" :opts="{legend:{position:'bottom'}}" :eopts="ringOpts" :chartData="chartsDataPie2" :echartsH5="true" :echartsApp="true"/>
+												</view>
+												<!-- 鍙� -->
+												<view>
+													<view class="flex-row sub-info">
+														<image src="../../static/g1.png" mode="aspectFit"></image>
+														<view style="width: 8vw;height: 4vw;line-height: 4vw;">鍦ㄥ簱</view>
+														<view style="width: 8vw;height: 4vw;line-height: 4vw;font-size: 2vw;">10000</view>
+													</view>
+													<view class="flex-row sub-info" style="margin-top: 2vh;">
+														<image src="../../static/g1.png" mode="aspectFit"></image>
+														<view style="width: 8vw;height: 4vw;line-height: 4vw;">鍦ㄥ簱</view>
+														<view style="width: 8vw;height: 4vw;line-height: 4vw;font-size: 2vw;">10000</view>
+													</view>
+													<view class="flex-row sub-info" style="margin-top: 2vh;">
+														<image src="../../static/g1.png" mode="aspectFit"></image>
+														<view style="width: 8vw;height: 4vw;line-height: 4vw;">鍦ㄥ簱</view>
+														<view style="width: 8vw;height: 4vw;line-height: 4vw;font-size: 2vw;">10000</view>
+													</view>
+												</view>
+											</view>
 										</view>
+										
 									</y-box>
 								</view>
 								<view style="height: 2%;"></view>
 								<view style="height: 18%;">
-									<y-box></y-box>
+									<y-box>
+										<view class="flex-col" style="width: 100%;height: 100%;font-size: 4vh;justify-content: center;letter-spacing: 1vh;">
+											鍢夊杽杈归攱鏈烘鑲′唤鏈夐檺鍏徃
+										</view>
+									</y-box>
 								</view>
 							</view>
 						</view>
@@ -169,11 +198,81 @@
 			</view>
 		</uni-transition>
 		<!-- 鍏ㄦ澘/鎷f枡淇℃伅 -->
-		<!-- <view class="info">
-			
-		</view> -->
+		<uni-transition :duration="duration" :mode-class="infoMode" :show="infoViewShow">
+			<view class="info-view">
+				<view class="head">
+					<text>鎷� 鏂�</text>
+				</view>
+				<!-- 鏃ュ巻 -->
+				<view class="time-tools">{{calendar}}</view>
+				<view class="button-left"></view>
+				<view class="button-right"></view>
+				<!-- 涓讳綋 -->
+				<view class="info-main" >
+					<view class="info-box">
+						<y-box></y-box>
+					</view>
+				</view>
+			</view>
+		</uni-transition>
 		<!-- 寮傚父淇℃伅 -->
-		<!-- <view class="error-info"></view> -->
+		<uni-transition :duration="duration" :mode-class="errorInfoMode" :show="errorInfoViewShow">
+			<view class="error-info-view">
+				<view class="head">
+					<text>寮傚父</text>
+				</view>
+				<!-- 鏃ュ巻 -->
+				<view class="time-tools">{{calendar}}</view>
+				<view class="button-left"></view>
+				<view class="button-right"></view>
+				<!-- 涓讳綋 -->
+				<view class="info-main" >
+					<view class="info-box">
+						<y-box></y-box>
+					</view>
+				</view>
+			</view>
+		</uni-transition>
+		
+		<!-- 鑷畾涔夊脊鍑哄眰 -->
+		<view class="eject-mask" v-show="ejectShow">
+			<view class="eject">
+				<!-- 寮瑰嚭title -->
+				<view class="eject-title">淇敼 / 閰嶇疆</view>
+				<!-- input -->
+				<view class="eject-input">
+					<view class="item">
+						<view class="desc">ip锛�</view>
+						<view class="input">
+							<input type="text" v-model="baseIP">
+						</view>
+					</view>
+					<view class="item">
+						<view class="desc">port锛�</view>
+						<view class="input">
+							<input type="text" v-model="basePort">
+						</view>
+					</view>
+					<view class="item">
+						<view class="desc">ledId锛�</view>
+						<view class="input">
+							<input type="text" v-model="baseLedId">
+						</view>
+					</view>
+					<view class="item">
+						<view class="desc">CrnId锛�</view>
+						<view class="input">
+							<input type="text" v-model="baseCrnId">
+						</view>
+					</view>
+				</view>
+				<!-- button -->
+				<view class="eject-button">
+					<view class="button-item" @click="ejectClose">鍙� 娑�</view>
+					<view class="button-item" @click="ejectConfirm">纭� 璁�</view>
+				</view>
+			</view>
+		</view>
 	</view>
 </template>
 
@@ -184,17 +283,11 @@
 			return {
 				series: [],
 				homeViewShow: true,
-				modeClass: ['fade', 'slide-top'],
-				homeView: {
-					justifyContent: 'center',
-					alignItems: 'center',
-					width: '100vw',
-					height: '100vh',
-					borderRadius: '5px',
-					textAlign: 'center',
-					backgroundColor: '#4cd964',
-					boxShadow: '0 0 5px 1px rgba(0,0,0,0.2)'
-				},
+				infoViewShow: false,
+				errorInfoViewShow: false,
+				homeMode: [],
+				infoMode: [],
+				errorInfoMode: [],
 				baseInfo: {
 					xDistance: 1,
 					yDistance: 2,
@@ -221,7 +314,13 @@
 				chartsDataPie2: {},
 				fontSize: '',
 				height: '',
-				showCharts: false
+				showCharts: false,
+				ejectShow: false,
+				baseIP: '',
+				basePort: '',
+				baseLedId: '',
+				baseCrnId: '',
+				
 			}
 		},
 		onShow() {
@@ -238,20 +337,73 @@
 				
 			},1000)
 			setInterval(()=>{
-				this.handle(['fade', 'slide-top'])
-			},4000)
+				// this.controller()
+			},5000)
 		},
 		methods: {
+			getUrl() {
+				this.commonUrl = this.baseHttp + this.baseIP + ':' +this.basePort + this.baseUrl
+			},
 			getServerData() {
 				this.chartsDataLine1=JSON.parse(JSON.stringify(demodata.Line))
+				this.chartsDataPie2=JSON.parse(JSON.stringify(demodata.PieA))
 			},
+			// 鎺у埗鍣�
+			controller() {
+				if (this.homeViewShow) {
+					this.homeViewShow = !this.homeViewShow
+					this.homeMode = ['fade', 'slide-bottom']
+					setTimeout(()=>{
+						this.infoViewShow = !this.infoViewShow
+						this.infoMode = ['fade', 'slide-bottom']
+					},1100)
+				} else if(this.infoViewShow) {
+					this.infoViewShow = !this.infoViewShow
+					this.infoMode = ['fade', 'slide-bottom']
+					setTimeout(()=>{
+						this.errorInfoViewShow = !this.errorInfoViewShow
+						this.errorInfoMode = ['fade', 'slide-bottom']
+					},1100)
+				} else {
+					this.errorInfoViewShow = !this.errorInfoViewShow
+					this.errorInfoMode = ['fade', 'slide-bottom']
+					setTimeout(()=>{
+						this.homeViewShow = !this.homeViewShow
+						this.homeMode = ['fade', 'slide-bottom']
+					},1100)
+				}
+			},
+			// 涓诲睆骞�
 			handle(type) {
 				this.homeViewShow = !this.homeViewShow
-				setTimeout(()=>{
-					this.showCharts = !this.showCharts
-				},1000)
-				
 				this.modeClass = type
+			},
+			// 鎷f枡
+			handle1(type) {
+				this.infoViewShow = !this.infoViewShow
+				this.modeClass = type
+			},
+			// 寮傚父
+			handle2(type) {
+				this.errorInfoViewShow = !this.errorInfoViewShow
+				this.modeClass = type
+			},
+			// 閰嶇疆
+			ejected () {
+				this.ejectShow = true
+			},
+			// 鍙栨秷閰嶇疆
+			ejectClose() {
+				this.ejectShow = false
+			},
+			// 纭閰嶇疆
+			ejectConfirm() {
+				uni.setStorageSync('BaseIp', this.baseIP);
+				uni.setStorageSync('BaseLedId', this.baseLedId);
+				uni.setStorageSync('BasePort',this.basePort);
+				uni.setStorageSync('BaseCrnId',this.baseCrnId);
+				this.getUrl()
+				this.ejectShow = false
 			},
 			// 鏃ュ巻
 			getDate() {
@@ -296,11 +448,9 @@
 	.container{
 		width: 100vw;
 		min-height: 100vh;
-		background-color: blue;
-		display: flex;
-		flex-direction: column;
-		align-items: center;
+		background-color: #00163E;
 		color: #fff;
+		text-align: center;
 		
 	}
 	/* 涓昏鍥� */
@@ -355,6 +505,31 @@
 		width: 13.5%;
 		height: 8.5%;
 	}
+	.img-box {
+		width: 100%;
+		/* background-color: #666666; */
+		display: flex;
+		flex-direction: row;
+		justify-content: flex-start;
+		flex-wrap: wrap;
+		font-size: 1vw;
+	}
+	.item-img {
+		width: 50%;
+		margin-top: 5%;
+		display: flex;
+		flex-direction: row;
+		/* background-color: #00ffff; */
+		justify-content: flex-start;
+		align-items: flex-start;
+	}
+	.distance {
+		
+	}
+	.item-img image {
+		height: 5vw;
+		width: 5vw;
+	}
 	.progressBar {
 		margin-top: 9%;
 		/* width: 100%; */
@@ -373,6 +548,18 @@
 	  height: 24vh;
 	  margin-left: 10%;
 	} 
+	.charts-box-ring {
+		width: 50%;
+		height: 24vh;
+		/* background-color: #00ffff; */
+	}
+	.sub-info {
+		font-size: 1.5vw;
+	}
+	.sub-info image {
+		width: 3.5vw;
+		height: 3.5vw;
+	}
 	
 	
 	
@@ -419,41 +606,118 @@
 		letter-spacing: 1px;
 		line-height: 3vh;
 	}
-	.img-box {
-		width: 100%;
-		/* background-color: #666666; */
-		display: flex;
-		flex-direction: row;
-		justify-content: flex-start;
-		flex-wrap: wrap;
-		font-size: 1vw;
-	}
-	.item-img {
-		width: 50%;
-		margin-top: 5%;
-		display: flex;
-		flex-direction: row;
-		/* background-color: #00ffff; */
-		justify-content: flex-start;
-		align-items: flex-start;
-	}
-	.distance {
-		
-	}
-	.item-img image {
-		height: 5vw;
-		width: 5vw;
-	}
+	
 	/* 鍏ㄦ澘/鎷f枡淇℃伅 */
-	.info {
+	.info-view {
 		width: 100vw;
 		min-height: 100vh;
-		background-color: #666666;
+		background-image: url(../../static/background.png);
+		background-size: 100vw 100vh;
+	}
+	.info-main {
+		width: 100vw;
+		height: 88vh;
+		display: flex;
+		justify-content: center;
+		align-items: center;
+	}
+	.info-box {
+		width: 98%;
+		height: 98%;
 	}
 	/* 寮傚父淇℃伅 */
-	.error-info {
+	.error-info-view {
 		width: 100vw;
 		min-height: 100vh;
-		background-color: #00ffff;
+		background-image: url(../../static/background.png);
+		background-size: 100vw 100vh;
+	}
+	
+	/* 寮瑰嚭:閰嶇疆鍖哄煙 */
+	.eject-mask {
+		width: 100%;
+		height: 100%;
+		background-color: rgba(0, 0, 0, 0.5);
+		position: fixed;
+		top: 0;
+		left: 0;
+		z-index: 999;
+		display: flex;
+		align-items: center;
+		justify-content: center;	
+	}
+	.eject{
+		position: relative;
+		width: 40vw;
+		height: 40vh;
+		background-color: #fff;
+		border-radius: 2rem;
+	}
+	.eject-title {
+		width: 100%;
+		height: 10vh;
+		line-height: 10vh;
+		font-size: 2vw;
+		font-weight: 700;
+		color: 	#606266;
+		text-align: center;
+	}
+	.eject-input {
+		
+	}
+	.item {
+		display: flex;
+		align-items: center;
+		margin: 2vh 0 0 0;
+		font-size: 1.5vw;
+		color: #363636;
+	}
+	.desc {
+		display: inline-block;
+		width: 40%;
+		text-align: right;
+		color: #606266;
+		
+	}
+	.input {
+		display: flex;
+		align-items: center;
+		padding-left: 5px;
+		padding-right: 5px;
+		width: 100%;
+		height: 3vh;
+		border: 0.1vh solid #cfd4dc;
+		margin-right: 20%;
+		text-align: start;
+	}
+	.eject-input input {
+		width: 100%;
+		height: 3vh;
+		font-size: 1vw;
+		
+		
+	}
+	.eject-button {
+		display: flex;
+		align-items: center;
+		position: absolute;
+		bottom: 0;
+		height: 6vh;
+		line-height: 6vh;
+		width: 100%;
+		border-top: 1px solid #ccc;
+	}
+	.button-item {
+		width: 50%;
+		height: 100%;
+		font-size: 1.5vw;
+		font-weight: bold;
+		text-align: center;
+		color: #909399;
+	}
+	.button-item:last-child {
+		color: #67C23A;
+		
+		border-left: 1px solid #ccc;
 	}
 </style>
\ No newline at end of file

--
Gitblit v1.9.1