From 3efe2606474fba1905fa4edab82b713b9cfb5ef3 Mon Sep 17 00:00:00 2001
From: baoshiwei <baoshiwei@shlanbao.cn>
Date: 星期二, 01 八月 2023 08:22:03 +0800
Subject: [PATCH] 完成车间大屏

---
 src/views/dry/DryOrderList.vue                                |   21 
 src/views/sys/login/TokenLoginPage.vue                        |    2 
 .env                                                          |    2 
 src/assets/images/dry/bg/wksp.png                             |    0 
 src/assets/images/dry/bg/wkshop.png                           |    0 
 src/assets/images/dry/bg/workshop.png                         |    0 
 src/assets/images/dry/bg/wksp1.png                            |    0 
 /dev/null                                                     |    0 
 src/views/dry/bigScreen/BigWorkShop.vue                       |  360 +++++++
 src/views/dry/monitor/WorkShop.vue                            |   46 
 src/layouts/default/header/components/user-dropdown/index.vue |    2 
 src/views/dry/dataDefine/DryEqpType.data.ts                   |  104 +-
 src/views/system/loginmini/MiniLogin.vue                      |    2 
 src/views/dry/common/prodRecordReport.vue                     |   18 
 src/views/dry/dataDefine/DryOrder.data.ts                     |  167 +-
 src/views/dry/bigScreen/BigEqp.vue                            | 1532 ++++++++++++++++----------------
 src/views/dry/monitor/Eqp.vue                                 |  530 +++++-----
 src/assets/images/dry/bg/wksp2.png                            |    0 
 18 files changed, 1,576 insertions(+), 1,210 deletions(-)

diff --git a/.env b/.env
index 3c69aa3..5f0d073 100644
--- a/.env
+++ b/.env
@@ -2,7 +2,7 @@
 VITE_PORT = 3100
 
 #  缃戠珯鏍囬
-VITE_GLOB_APP_TITLE = 鏅鸿兘涓崏鑽共鐕ョ郴缁�
+VITE_GLOB_APP_TITLE = 鏅鸿兘涓崏鑽共鐕ラ厤鏂圭鐞嗙郴缁�
 
 # 绠�绉帮紝鐢ㄤ簬閰嶇疆鏂囦欢鍚嶅瓧 涓嶈鍑虹幇绌烘牸銆佹暟瀛楀紑澶寸瓑鐗规畩瀛楃
 VITE_GLOB_APP_SHORT_NAME = JeecgBootAdmin
diff --git a/src/assets/images/dry/bg/1.jpg b/src/assets/images/dry/bg/1.jpg
deleted file mode 100644
index 890108f..0000000
--- a/src/assets/images/dry/bg/1.jpg
+++ /dev/null
Binary files differ
diff --git a/src/assets/images/dry/bg/2.jpg b/src/assets/images/dry/bg/2.jpg
deleted file mode 100644
index 631e710..0000000
--- a/src/assets/images/dry/bg/2.jpg
+++ /dev/null
Binary files differ
diff --git a/src/assets/images/dry/bg/3.jpg b/src/assets/images/dry/bg/3.jpg
deleted file mode 100644
index 43cfaf2..0000000
--- a/src/assets/images/dry/bg/3.jpg
+++ /dev/null
Binary files differ
diff --git a/src/assets/images/dry/bg/4.jpg b/src/assets/images/dry/bg/4.jpg
deleted file mode 100644
index d556526..0000000
--- a/src/assets/images/dry/bg/4.jpg
+++ /dev/null
Binary files differ
diff --git a/src/assets/images/dry/bg/5.jpg b/src/assets/images/dry/bg/5.jpg
deleted file mode 100644
index 5f28364..0000000
--- a/src/assets/images/dry/bg/5.jpg
+++ /dev/null
Binary files differ
diff --git a/src/assets/images/dry/bg/6.jpg b/src/assets/images/dry/bg/6.jpg
deleted file mode 100644
index ffa8280..0000000
--- a/src/assets/images/dry/bg/6.jpg
+++ /dev/null
Binary files differ
diff --git a/src/assets/images/dry/bg/7.jpg b/src/assets/images/dry/bg/7.jpg
deleted file mode 100644
index 872eedf..0000000
--- a/src/assets/images/dry/bg/7.jpg
+++ /dev/null
Binary files differ
diff --git a/src/assets/images/dry/bg/wkshop.png b/src/assets/images/dry/bg/wkshop.png
new file mode 100644
index 0000000..969676a
--- /dev/null
+++ b/src/assets/images/dry/bg/wkshop.png
Binary files differ
diff --git a/src/assets/images/dry/bg/wksp.png b/src/assets/images/dry/bg/wksp.png
new file mode 100644
index 0000000..ec3742d
--- /dev/null
+++ b/src/assets/images/dry/bg/wksp.png
Binary files differ
diff --git a/src/assets/images/dry/bg/wksp1.png b/src/assets/images/dry/bg/wksp1.png
new file mode 100644
index 0000000..d630927
--- /dev/null
+++ b/src/assets/images/dry/bg/wksp1.png
Binary files differ
diff --git a/src/assets/images/dry/bg/wksp2.png b/src/assets/images/dry/bg/wksp2.png
new file mode 100644
index 0000000..77b679e
--- /dev/null
+++ b/src/assets/images/dry/bg/wksp2.png
Binary files differ
diff --git a/src/assets/images/dry/bg/workshop.png b/src/assets/images/dry/bg/workshop.png
new file mode 100644
index 0000000..55210bb
--- /dev/null
+++ b/src/assets/images/dry/bg/workshop.png
Binary files differ
diff --git a/src/layouts/default/header/components/user-dropdown/index.vue b/src/layouts/default/header/components/user-dropdown/index.vue
index 6a97484..b671c7e 100644
--- a/src/layouts/default/header/components/user-dropdown/index.vue
+++ b/src/layouts/default/header/components/user-dropdown/index.vue
@@ -15,7 +15,7 @@
 				<MenuDivider v-if="getShowDoc" />
 				<MenuItem key="account" :text="t('layout.header.dropdownItemSwitchAccount')" icon="ant-design:setting-outlined" />
 				<MenuItem key="password" :text="t('layout.header.dropdownItemSwitchPassword')" icon="ant-design:edit-outlined" />
-				<MenuItem key="depart" :text="t('layout.header.dropdownItemSwitchDepart')" icon="ant-design:cluster-outlined" />
+				<!-- <MenuItem key="depart" :text="t('layout.header.dropdownItemSwitchDepart')" icon="ant-design:cluster-outlined" /> -->
 				<MenuItem key="cache" :text="t('layout.header.dropdownItemRefreshCache')" icon="ion:sync-outline" />
 				<!-- <MenuItem
             v-if="getUseLockPage"
diff --git a/src/views/dry/DryOrderList.vue b/src/views/dry/DryOrderList.vue
index 0e1ee0b..bfd9690 100644
--- a/src/views/dry/DryOrderList.vue
+++ b/src/views/dry/DryOrderList.vue
@@ -53,6 +53,8 @@
 	import { BasicTable, TableAction } from '/@/components/Table'
 	import { useListPage } from '/@/hooks/system/useListPage'
 	import { downloadFile } from '/@/utils/common/renderUtils'
+	import { router } from '/@/router'
+
 	const checkedKeys = ref<Array<string | number>>([])
 	//娉ㄥ唽model
 	const [registerModal, { openModal }] = useModal()
@@ -141,8 +143,8 @@
 	function getTableAction(record) {
 		return [
 			{
-				label: '缂栬緫',
-				onClick: handleEdit.bind(null, record),
+				label: '鎿嶄綔璁板綍',
+				onClick: openReport.bind(null, record),
 			},
 		]
 	}
@@ -151,6 +153,10 @@
 	 */
 	function getDropDownAction(record) {
 		return [
+			{
+				label: '缂栬緫',
+				onClick: handleEdit.bind(null, record),
+			},
 			{
 				label: '璇︽儏',
 				onClick: handleDetail.bind(null, record),
@@ -164,6 +170,17 @@
 			},
 		]
 	}
+
+	/**鎵撳紑鎶ヨ〃 */
+	function openReport(record: Recordable) {
+		console.log(`output->record`, record)
+		router.push({
+			path: '/dry/order/report',
+			query: {
+				batch: record.code,
+			},
+		})
+	}
 </script>
 
 <style scoped></style>
diff --git a/src/views/dry/bigScreen/BigEqp.vue b/src/views/dry/bigScreen/BigEqp.vue
index d72d34e..c609eae 100644
--- a/src/views/dry/bigScreen/BigEqp.vue
+++ b/src/views/dry/bigScreen/BigEqp.vue
@@ -1,144 +1,148 @@
 <template>
-    <dv-full-screen-container>
-	<div class="eqpBox">
-		<div class="eqpRow">
-			<div class="eqpImage"  :style="{'background-position':position + 'px'}">
-				
-				<div class="leftEqp">
-					<div style="width: 350px;  ">
-					<div class="herbInfo">
-						
-							<dv-border-box7 class="curEqp">
-								<div class="eqpName" style="padding: 30px" @click="changeEqp">
-									<div class="mainInfo" style="font-size: 26px">{{ eqp?.name }}</div>
-									<div class="subhead">{{ eqp?.type }}</div>
-									<dv-decoration-1 style="width:300px;height:90px; margin-left: 20px;" />
-                                    <!-- 璁惧锛歿{ eqp.name }}</div>
+	<dv-full-screen-container>
+		<div class="eqpBox">
+			<div class="eqpRow">
+				<div class="eqpImage" :style="{ 'background-position': position + 'px' }">
+					<div class="leftEqp">
+						<div style="width: 350px">
+							<div class="herbInfo">
+								<dv-border-box7 class="curEqp">
+									<div style="display: flex">
+										<div style="padding-top: 20px; padding-left: 10px" @click="back">
+											<Icon style="color: powderblue" icon="ion:caret-back-sharp" :size="35" />
+										</div>
+										<div class="eqpName" style="text-align: right" @click="changeEqp">
+											<div class="mainInfo" style="font-size: 26px">{{ eqp?.name }}</div>
+											<div class="subhead">{{ eqp?.type }}</div>
+											<dv-decoration-1 style="width: 240px; height: 90px; margin-left: 20px" />
+											<!-- 璁惧锛歿{ eqp.name }}</div>
 								<div class="eqpName">鍨嬪彿锛歿{ eqp.type }}</div> -->
-								</div>
-							</dv-border-box7>
-							<dv-border-box7 class="curHerb" :style="{'background-image': 'url('+getHerbImageUrl(realData?.herbImage)+')'}">
-								<div class="eqpName" style="margin-left: 176px; height: 190px">
-									<div class="mainInfo" style="font-size: 26px">{{ realData?.herbName }}</div>
-									<div class="subhead">骞茬嚗閰嶆柟</div>
-								</div>
-								<div class="formula">
-									<div class="formulaItem">
-										<Icon style="color: powderblue" icon="icon-park-twotone:box" :size="35" />
-										<div>
-											<div class="mainInfo2">{{ realData?.feed }} 绛�</div>
-											<div class="subhead2">鎶曟枡閲�</div>
 										</div>
 									</div>
-									<div class="formulaItem">
-										<Icon style="color: red" icon="bx:wind" :size="35" />
-										<div>
-											<div class="mainInfo2">{{ realData?.windTemp }} 掳C</div>
-											<div class="subhead2">鐑</div>
+								</dv-border-box7>
+								<dv-border-box7 class="curHerb" :style="{ 'background-image': 'url(' + getHerbImageUrl(realData?.herbImage) + ')' }">
+									<div class="eqpName" style="margin-left: 156px; height: 190px">
+										<div class="mainInfo" style="font-size: 26px">{{ realData?.herbName }}</div>
+										<div class="subhead">骞茬嚗閰嶆柟</div>
+									</div>
+									<div class="formula">
+										<div class="formulaItem">
+											<Icon style="color: powderblue" icon="icon-park-twotone:box" :size="35" />
+											<div>
+												<div class="mainInfo2">{{ realData?.feed }} 绛�</div>
+												<div class="subhead2">鎶曟枡閲�</div>
+											</div>
+										</div>
+										<div class="formulaItem">
+											<Icon style="color: red" icon="bx:wind" :size="35" />
+											<div>
+												<div class="mainInfo2">{{ realData?.windTemp }} 掳C</div>
+												<div class="subhead2">鐑</div>
+											</div>
+										</div>
+										<div class="formulaItem">
+											<Icon style="color: green" icon="tabler:target-arrow" :size="35" />
+											<div>
+												<div class="mainInfo2">{{ realData?.target }} %</div>
+												<div class="subhead2">鐩爣</div>
+											</div>
 										</div>
 									</div>
-									<div class="formulaItem">
-										<Icon style="color: green" icon="tabler:target-arrow" :size="35" />
-										<div>
-											<div class="mainInfo2">{{ realData?.target }} %</div>
-											<div class="subhead2">鐩爣</div>
-										</div>
-									</div>
-								</div>
-								<!-- <div class="eqpName">{{ realData?.herbName }}</div>
+									<!-- <div class="eqpName">{{ realData?.herbName }}</div>
 								<div class="eqpName">{{ realData?.feed }} 绛�</div> -->
-							</dv-border-box7>
-						</div>
-						<!-- <dv-border-box7 class="infoChart" style="margin-left: 0px;">
+								</dv-border-box7>
+							</div>
+							<!-- <dv-border-box7 class="infoChart" style="margin-left: 0px;">
 							<div class="chartTittle">椋庢満棰戠巼</div>
 							<div class="outDiv" style="padding-top: 10px">
 								<div id="fanFreq" style="width: 240px; height: 240px"></div>
 							</div>
 						</dv-border-box7> -->
-						<dv-border-box7 class="infoChart" style="margin-left: 0px;">
-							<div class="chartTittle">鍚按鐜�</div>
-							<div class="outDiv" style="padding-top: 20px">
-								<div class="leftData">
-									<div class="center" style="height: 50%">
-										<div class="centerText">
-											<div class="mainInfo3"
-												><span>{{ realData?.target }}</span
-												> %
+							<dv-border-box7 class="infoChart" style="margin-left: 0px">
+								<div class="chartTittle">鍚按鐜�</div>
+								<div class="outDiv" style="padding-top: 20px">
+									<div class="leftData">
+										<div class="center" style="height: 50%">
+											<div class="centerText">
+												<div class="mainInfo3"
+													><span>{{ realData?.target }}</span> %
+												</div>
+												<div class="subhead2">鐩爣鍚按鐜�</div>
 											</div>
-											<div class="subhead2">鐩爣鍚按鐜�</div>
+										</div>
+										<div class="center" style="height: 50%">
+											<div>
+												<div class="mainInfo3"
+													><span>{{ realData?.initial }}</span> %</div
+												>
+												<div class="subhead2">鏉ユ枡鍚按鐜�</div>
+											</div>
 										</div>
 									</div>
-									<div class="center" style="height: 50%">
-										<div>
-											<div class="mainInfo3"
-												><span>{{ realData?.initial }}</span
-												> %</div
+									<div id="moisture" style="width: 170px; height: 170px"></div>
+								</div>
+								<div class="subhead2" style="margin-top: -37px; padding-left: 205px; font-weight: bold">瀹炴椂鍚按鐜�</div>
+							</dv-border-box7>
+						</div>
+						<dv-border-box7 class="leftTop">
+							<div class="leftTop0">
+								<div class="leftTop1">
+									<Icon icon="emojione:hourglass-with-flowing-sand" :size="50" />
+									<div>
+										<div class="mainInfo">{{ realData?.totalRemain | 0 }} Min</div>
+										<div class="subhead">鍓╀綑鏃堕棿</div>
+									</div>
+								</div>
+								<div class="leftTop1">
+									<Icon icon="bi:fan" :size="50" />
+									<div>
+										<div class="mainInfo">{{ realData.trendVo?.fanFrequency | 0 }} Hz</div>
+										<div class="subhead">椋庢満棰戠巼</div>
+									</div>
+								</div>
+								<div class="leftTop3" :style="{ 'background-image': 'url(' + getStatusImageUrl(statusGif) + ')' }"></div>
+								<div class="outDiv eqpStatus">
+									<div
+										style="
+											font-size: 28px;
+											margin-top: 190px;
+											color: white;
+											background-color: #1595ea;
+											height: 60px;
+											width: 180px;
+											line-height: 60px;
+											text-align: center;
+											border-radius: 5px;
+											font-weight: bold;
+										"
+									>
+										{{ statusTxt }}
+									</div>
+									<div
+										v-if="realData?.isError"
+										class="eqpInfoText blingbling"
+										style="
+											position: absolute;
+											font-size: 30px;
+											max-height: 200px;
+											max-width: 720px;
+											border-radius: 10px;
+											background-color: #ce0000;
+											color: white;
+											padding: 10px;
+										"
+									>
+										<div class="outDiv">
+											<div><Icon icon="bx:error" :size="30" /> </div>
+											<div
+												><span>{{ realData?.errorMsg }}</span></div
 											>
-											<div class="subhead2">鏉ユ枡鍚按鐜�</div>
 										</div>
 									</div>
 								</div>
-								<div id="moisture" style="width: 170px; height: 170px"></div>
 							</div>
-							<div class="subhead2" style="margin-top: -37px; padding-left: 205px; font-weight: bold;">瀹炴椂鍚按鐜�</div>
 						</dv-border-box7>
-				</div>
-					<dv-border-box7 class="leftTop">
-						<div class="leftTop0">
-						<div class="leftTop1">
-							<Icon icon="emojione:hourglass-with-flowing-sand" :size="50" />
-							<div>
-								<div class="mainInfo">{{ realData?.totalRemain | 0 }} Min</div>
-								<div class="subhead">鍓╀綑鏃堕棿</div>
-							</div>
-						</div>
-						<div class="leftTop1">
-							<Icon icon="bi:fan" :size="50" />
-							<div>
-								<div class="mainInfo">{{ realData.trendVo?.fanFrequency | 0 }} Hz</div>
-								<div class="subhead">椋庢満棰戠巼</div>
-							</div>
-						</div>
-						<div class="leftTop3" :style="{ 'background-image': 'url(' + getStatusImageUrl(statusGif) + ')' }"></div>
-						<div class="outDiv eqpStatus">
-							<div
-								style="
-									font-size: 28px;
-									margin-top: 190px;
-									color: white;
-									background-color: #1595ea;
-									height: 60px;
-									width: 180px;
-									line-height: 60px;
-									text-align: center;
-									border-radius: 5px;
-									font-weight: bold;
-								"
-							>
-							{{ statusTxt }}
-							</div>
-							<div v-if="realData?.isError"
-								class="eqpInfoText blingbling"
-								style="
-									position: absolute;
-									font-size: 30px;
-									max-height: 200px;
-									max-width: 720px;
-									border-radius: 10px;
-									background-color: #ce0000;
-									color: white;
-									padding: 10px;
-								"
-							>
-								<div class="outDiv">
-									<div><Icon icon="bx:error" :size="30" /> </div>
-									<div><span>{{realData?.errorMsg}}</span></div>
-								</div>
-							</div>
-						</div>
-						</div>
-					</dv-border-box7>
-					<dv-border-box7 class="infoChart" style="margin-left: 0px; margin-right: 10px;">
+						<dv-border-box7 class="infoChart" style="margin-left: 0px; margin-right: 10px">
 							<div class="chartTittle">椋庣娓╁害</div>
 							<div class="outDiv">
 								<div id="bellowsTemp" style="width: 230px; height: 230px">
@@ -146,17 +150,17 @@
 								</div>
 							</div>
 						</dv-border-box7>
-					<dv-border-box7 class="leftMid">
-						<div class="chartTittle">瀹炴椂杩涘害</div>
-						<div id="efficiencyLine" style="width: 848px; height: 180px;margin-top: -10px;"></div>
-						<div style="height: 10px; display: flex; width: 848px; padding: 0 60px; justify-content: space-between">
-							<div style="width: 100px; height: 20px">0 min</div>
-							<div style="width: 100px; height: 20px; text-align: right">{{ realData?.totalTime | 0 }} min</div>
-						</div>
-						<div id="progressBar" style="width: 848px; height: 80px"></div>
-					</dv-border-box7>
+						<dv-border-box7 class="leftMid">
+							<div class="chartTittle">瀹炴椂杩涘害</div>
+							<div id="efficiencyLine" style="width: 848px; height: 180px; margin-top: -10px"></div>
+							<div style="height: 10px; display: flex; width: 848px; padding: 0 60px; justify-content: space-between">
+								<div style="width: 100px; height: 20px">0 min</div>
+								<div style="width: 100px; height: 20px; text-align: right">{{ realData?.totalTime | 0 }} min</div>
+							</div>
+							<div id="progressBar" style="width: 848px; height: 80px"></div>
+						</dv-border-box7>
 
-					<!-- <div class="outDiv">
+						<!-- <div class="outDiv">
 						<div style="height: 100px; width: 400px">
 							<Progress
 								:stroke-color="{
@@ -173,181 +177,186 @@
 							</div>
 						</div>
 					</div> -->
-				</div>
-				<div class="rightInfo">
-					<div class="rightTop">
-						
-						<dv-border-box7 class="tempMoisChart">
-							<div :id="'moisChart'" style="width: 690px; height: 420px"></div>
-						</dv-border-box7>
 					</div>
-					<div class="rightTwo">
-						<dv-border-box7 class="infoChart">
-							<div class="chartTittle">
-								骞茬嚗鏁堢巼(kg/h)
-								<div class="rightLabel">
-									<div class="label good">&gt;{{ standard.xiaolv }} 浼� </div>
-									<div class="label bad">&lt;{{ standard.xlMin }} 宸�</div>
-								</div>
-							</div>
-							<div class="outDiv" style="padding-top: 20px">
-								<div class="leftData">
-									<div class="center" style="height: 50%">
-										<div class="centerText">
-											<div class="mainInfo3"
-												><span>{{ (realData?.originWeight - realData?.yield) | 0 }}</span
-												> kg
-											</div>
-											<div class="subhead2">姘村垎钂稿彂</div>
-										</div>
-									</div>
-									<div class="center" style="height: 50%">
-										<div>
-											<div class="mainInfo3">{{ realData?.dryTime | 0 }} min</div>
-											<div class="subhead2">骞茬嚗鐢ㄦ椂</div>
-										</div>
+					<div class="rightInfo">
+						<div class="rightTop">
+							<dv-border-box7 class="tempMoisChart">
+								<div :id="'moisChart'" style="width: 690px; height: 420px"></div>
+							</dv-border-box7>
+						</div>
+						<div class="rightTwo">
+							<dv-border-box7 class="infoChart">
+								<div class="chartTittle">
+									骞茬嚗鏁堢巼(kg/h)
+									<div class="rightLabel">
+										<div class="label good">&gt;{{ standard.xiaolv }} 浼� </div>
+										<div class="label bad">&lt;{{ standard.xlMin }} 宸�</div>
 									</div>
 								</div>
-								<div class="rightChart center">
-									<div class="center compareBar">
-										<div class="barTop">{{ standard.xiaolv }}</div>
-										<div class="barBack">
-											<div class="barDiv" :style="{ height: realData?.xlsHeight }"></div>
-										</div>
-										<div style="line-height: 20px">
-											棰濆畾
-											<br />
-											鏁堢巼
-										</div>
-									</div>
-									<div class="center compareBar">
-										<div class="barTop">{{ realData?.xiaolv | 0 }}</div>
-										<div class="barBack">
-											<div
-												class="barDiv"
-												:class="{ good: realData?.xlgood, bad: realData?.xlbad }"
-												:style="[realData?.xlrHeight && { height: realData?.xlrHeight }]"
-											>
+								<div class="outDiv" style="padding-top: 20px">
+									<div class="leftData">
+										<div class="center" style="height: 50%">
+											<div class="centerText">
+												<div class="mainInfo3"
+													><span>{{ (realData?.originWeight - realData?.yield) | 0 }}</span> kg
+												</div>
+												<div class="subhead2">姘村垎钂稿彂</div>
 											</div>
 										</div>
-										<div style="line-height: 20px">
-											瀹炴椂
-											<br />
-											鏁堢巼
+										<div class="center" style="height: 50%">
+											<div>
+												<div class="mainInfo3">{{ realData?.dryTime | 0 }} min</div>
+												<div class="subhead2">骞茬嚗鐢ㄦ椂</div>
+											</div>
+										</div>
+									</div>
+									<div class="rightChart center">
+										<div class="center compareBar">
+											<div class="barTop">{{ standard.xiaolv }}</div>
+											<div class="barBack">
+												<div class="barDiv" :style="{ height: realData?.xlsHeight }"></div>
+											</div>
+											<div style="line-height: 20px">
+												棰濆畾
+												<br />
+												鏁堢巼
+											</div>
+										</div>
+										<div class="center compareBar">
+											<div class="barTop">{{ realData?.xiaolv | 0 }}</div>
+											<div class="barBack">
+												<div
+													class="barDiv"
+													:class="{ good: realData?.xlgood, bad: realData?.xlbad }"
+													:style="[realData?.xlrHeight && { height: realData?.xlrHeight }]"
+												>
+												</div>
+											</div>
+											<div style="line-height: 20px">
+												瀹炴椂
+												<br />
+												鏁堢巼
+											</div>
 										</div>
 									</div>
 								</div>
-							</div>
-						</dv-border-box7>
-					
-					
-						
-						
-						<dv-border-box7 class="infoChart">
-							<div class="chartTittle"
-								>钂告苯娑堣��(m鲁/kg)
-								<div class="rightLabel">
-									<div class="label bad">&gt;{{ standard.zhengqi }} 宸�</div>
-									<div class="label good">&lt;{{ standard.zqMin }} 浼�</div>
+							</dv-border-box7>
+
+							<dv-border-box7 class="infoChart">
+								<div class="chartTittle"
+									>钂告苯娑堣��(m鲁/kg)
+									<div class="rightLabel">
+										<div class="label bad">&gt;{{ standard.zhengqi }} 宸�</div>
+										<div class="label good">&lt;{{ standard.zqMin }} 浼�</div>
+									</div>
 								</div>
-							</div>
-							<div class="outDiv" style="padding-top: 20px">
-								<div class="leftData">
-									<div class="center" style="height: 100%">
-										<div class="centerText">
-											<div class="mainInfo3"><span>{{realData?.steam}}</span> m鲁 </div>
-											<div class="subhead2">钂告苯鐢ㄩ噺</div>
+								<div class="outDiv" style="padding-top: 20px">
+									<div class="leftData">
+										<div class="center" style="height: 100%">
+											<div class="centerText">
+												<div class="mainInfo3"
+													><span>{{ realData?.steam }}</span> m鲁
+												</div>
+												<div class="subhead2">钂告苯鐢ㄩ噺</div>
+											</div>
+										</div>
+									</div>
+									<div class="rightChart center">
+										<div class="center compareBar">
+											<div class="barTop">{{ standard.zhengqi }}</div>
+											<div class="barBack">
+												<div class="barDiv" :style="{ height: realData?.zqsHeight }"></div>
+											</div>
+											<div style="line-height: 20px">
+												棰濆畾
+												<br />
+												娑堣��
+											</div>
+										</div>
+										<div class="center compareBar">
+											<div class="barTop">{{ realData?.zhengqi | 0 }}</div>
+											<div class="barBack">
+												<div
+													class="barDiv"
+													:class="{ good: realData?.zqgood, bad: realData?.zqbad }"
+													:style="[realData?.zqrHeight && { height: realData?.zqrHeight }]"
+												>
+												</div>
+											</div>
+											<div style="line-height: 20px">
+												瀹炴椂
+												<br />
+												娑堣��
+											</div>
 										</div>
 									</div>
 								</div>
-								<div class="rightChart center">
-									<div class="center compareBar">
-										<div class="barTop">{{standard.zhengqi}}</div>
-										<div class="barBack">
-											<div class="barDiv" :style="{ height: realData?.zqsHeight }"></div>
-										</div>
-										<div style="line-height: 20px">
-											棰濆畾
-											<br />
-											娑堣��
+							</dv-border-box7>
+							<dv-border-box7 class="infoChart">
+								<div class="chartTittle">鏁堢巼瀵规瘮</div>
+								<div class="outDiv" style="padding-top: 10px">
+									<div id="compare" style="width: 300px; height: 250px"></div>
+								</div>
+							</dv-border-box7>
+							<dv-border-box7 class="infoChart">
+								<div class="chartTittle">
+									<div> 鐢佃兘娑堣��(kWh/kg)</div>
+									<div class="rightLabel">
+										<div class="label bad">&gt;{{ standard.dian }} 宸�</div>
+										<div class="label good">&lt;{{ standard.dMin }} 浼�</div>
+									</div>
+								</div>
+								<div class="outDiv" style="padding-top: 20px">
+									<div class="leftData">
+										<div class="center" style="height: 100%">
+											<div class="centerText">
+												<div class="mainInfo3"
+													><span>{{ realData?.watt }}</span> kWh
+												</div>
+												<div class="subhead2">鐢佃兘鐢ㄩ噺</div>
+											</div>
 										</div>
 									</div>
-									<div class="center compareBar">
-										<div class="barTop">{{realData?.zhengqi | 0 }}</div>
-										<div class="barBack">
-											<div class="barDiv" :class="{ good: realData?.zqgood, bad: realData?.zqbad }"
-												:style="[realData?.zqrHeight && { height: realData?.zqrHeight }]"> </div>
+									<div class="rightChart center">
+										<div class="center compareBar">
+											<div class="barTop">{{ standard.dian }}</div>
+											<div class="barBack">
+												<div class="barDiv" :style="{ height: realData?.dnsHeight }"></div>
+											</div>
+											<div style="line-height: 20px">
+												棰濆畾
+												<br />
+												娑堣��
+											</div>
 										</div>
-										<div style="line-height: 20px">
-											瀹炴椂
-											<br />
-											娑堣��
+										<div class="center compareBar">
+											<div class="barTop">{{ realData?.dian | 0 }}</div>
+											<div class="barBack">
+												<div
+													class="barDiv"
+													:class="{ good: realData?.dngood, bad: realData?.dnbad }"
+													:style="[realData?.dnrHeight && { height: realData?.dnrHeight }]"
+												></div>
+											</div>
+											<div style="line-height: 20px">
+												瀹炴椂
+												<br />
+												娑堣��
+											</div>
 										</div>
 									</div>
 								</div>
-							</div>
-						</dv-border-box7>
-						<dv-border-box7 class="infoChart" >
-							<div class="chartTittle">鏁堢巼瀵规瘮</div>
-							<div class="outDiv" style="padding-top: 10px">
-								<div id="compare" style="width: 300px; height: 250px"></div>
-							</div>
-						</dv-border-box7>
-						<dv-border-box7 class="infoChart">
-							<div class="chartTittle">
-								<div> 鐢佃兘娑堣��(kWh/kg)</div>
-								<div class="rightLabel">
-									<div class="label bad">&gt;{{ standard.dian }} 宸�</div>
-									<div class="label good">&lt;{{ standard.dMin }} 浼�</div>
-								</div>
-							</div>
-							<div class="outDiv" style="padding-top: 20px">
-								<div class="leftData">
-									<div class="center" style="height: 100%">
-										<div class="centerText">
-											<div class="mainInfo3"><span>{{realData?.watt}}</span> kWh </div>
-											<div class="subhead2">鐢佃兘鐢ㄩ噺</div>
-										</div>
-									</div>
-								</div>
-								<div class="rightChart center">
-									<div class="center compareBar">
-										<div class="barTop">{{standard.dian}}</div>
-										<div class="barBack">
-											<div class="barDiv" :style="{ height: realData?.dnsHeight }"></div>
-										</div>
-										<div style="line-height: 20px">
-											棰濆畾
-											<br />
-											娑堣��
-										</div>
-									</div>
-									<div class="center compareBar">
-										<div class="barTop">{{realData?.dian | 0}}</div>
-										<div class="barBack">
-											<div class="barDiv" :class="{ good: realData?.dngood, bad: realData?.dnbad }"
-												:style="[realData?.dnrHeight && { height: realData?.dnrHeight }]"></div>
-										</div>
-										<div style="line-height: 20px">
-											瀹炴椂
-											<br />
-											娑堣��
-										</div>
-									</div>
-								</div>
-							</div>
-						</dv-border-box7>
-						
+							</dv-border-box7>
+						</div>
 					</div>
 				</div>
 			</div>
 		</div>
-	</div>
-</dv-full-screen-container>
+	</dv-full-screen-container>
 </template>
 
 <script setup lang="ts">
-  import { useFullscreen } from '@vueuse/core';
+	import { useFullscreen } from '@vueuse/core'
 	import { BorderBox7 as DvBorderBox7 } from '@kjgl77/datav-vue3'
 	import { router } from '/@/router'
 	import { onMounted, ref, onUnmounted } from 'vue'
@@ -356,19 +365,16 @@
 	import 'echarts-liquidfill'
 	import { Icon, IconPicker, SvgIcon } from '/@/components/Icon/index'
 	import { defHttp } from '/@/utils/http/axios'
-	import { queryById,listAll } from '../api/DryEquipment.api'
+	import { queryById, listAll } from '../api/DryEquipment.api'
 	import { dryEquipment } from '../dataDefine/DryEquipment.data'
 	import { useUserStore } from '/@/store/modules/user'
 
-	
+	const domRef = ref<Nullable<HTMLElement>>(null)
+	const { enter, toggle, exit, isFullscreen } = useFullscreen()
 
-
-	const domRef = ref<Nullable<HTMLElement>>(null);
-		const { enter, toggle, exit, isFullscreen } = useFullscreen();
-
-const { toggle: toggleDom } = useFullscreen(domRef);
+	const { toggle: toggleDom } = useFullscreen(domRef)
 	const Timer = ref()
-    const Timer2 = ref()
+	const Timer2 = ref()
 	const marks = ref<Record<number, any>>({
 		0: '0掳C',
 		1: '',
@@ -472,10 +478,10 @@
 		99: '',
 		100: '100掳C',
 	})
-	const eqps =  ref([] as dryEquipment[])
-	
-    const eqp = ref({} as dryEquipment)
-    const eqpNum = ref(1)
+	const eqps = ref([] as dryEquipment[])
+	//console.log(`output->router.currentRoute.value.params.num `, router.currentRoute.value.query)
+	const eqp = ref({} as dryEquipment)
+	const eqpNum = ref(router.currentRoute.value.query.num || 1)
 	const userStore = useUserStore()
 	const realData = ref({})
 	const standard = ref({
@@ -487,7 +493,7 @@
 		dMin: 7.5,
 	})
 
-    const position = ref(1)
+	const position = ref(1)
 	//realData.value.tempValue = [0, 100]
 	realData.value.mois = [0.5, 0.35, 0.2]
 	statusGif = 'tmrefeng2'
@@ -526,9 +532,8 @@
 				text: '鍚按鐜�/娓╁害瓒嬪娍',
 				textStyle: {
 					color: '#fff',
-					fontSize: 15
+					fontSize: 15,
 				},
-				
 			},
 			tooltip: {
 				trigger: 'axis',
@@ -542,8 +547,8 @@
 			legend: {
 				right: 60,
 				textStyle: {
-					color: '#fff'
-				}
+					color: '#fff',
+				},
 			},
 			// toolbox: {
 			// 	show: true,
@@ -559,8 +564,8 @@
 			// },
 			xAxis: {
 				type: 'value',
-				axisLabel:{
-					color: '#fff'
+				axisLabel: {
+					color: '#fff',
 				},
 				//boundaryGap: false,
 				// data: ['Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat', 'Sun'],
@@ -575,22 +580,22 @@
 				splitLine: {
 					lineStyle: {
 						type: 'dashed',
-						color: ['#2b2b2b']
-					}
-				}
+						color: ['#2b2b2b'],
+					},
+				},
 			},
 			yAxis: {
 				type: 'value',
 				boundaryGap: ['10%', '10%'],
-				axisLabel:{
-					color: '#fff'
+				axisLabel: {
+					color: '#fff',
 				},
 				splitLine: {
 					lineStyle: {
 						type: 'dashed',
-						color: ['#2b2b2b']
-					}
-				}
+						color: ['#2b2b2b'],
+					},
+				},
 				// min: 0,
 				// max: function (value) {
 				// 	if (value.max < 100) {
@@ -625,15 +630,15 @@
 					areaStyle: {
 						opacity: 0.2,
 						color: new echarts.graphic.LinearGradient(0, 0, 0, 1, [
-						{
-							offset: 0,
-							color: 'rgb(128, 255, 165)'
-						},
-						{
-							offset: 1,
-							color: 'rgb(1, 191, 236)'
-						}
-						])
+							{
+								offset: 0,
+								color: 'rgb(128, 255, 165)',
+							},
+							{
+								offset: 1,
+								color: 'rgb(1, 191, 236)',
+							},
+						]),
 					},
 				},
 				{
@@ -651,15 +656,15 @@
 					areaStyle: {
 						opacity: 0.2,
 						color: new echarts.graphic.LinearGradient(0, 0, 0, 1, [
-						{
-							offset: 0,
-							color: 'rgb(255, 0, 135)'
-						},
-						{
-							offset: 1,
-							color: 'rgb(135, 0, 157)'
-						}
-						])
+							{
+								offset: 0,
+								color: 'rgb(255, 0, 135)',
+							},
+							{
+								offset: 1,
+								color: 'rgb(135, 0, 157)',
+							},
+						]),
 					},
 					// markLine: {
 					// 	data: [
@@ -694,7 +699,7 @@
 					amplitude: 3,
 					animationDuration: 5,
 					//animationDurationUpdate: 0,
-					data: [0.56,0.44,0.32],
+					data: [0.56, 0.44, 0.32],
 					shape:
 						'path://M828.817,706.209C828.817,881.725,686.98,1024,512,1024c-174.98,0-316.817-142.275-316.817-317.791C195.183,530.74,512,0,512,0s316.817,530.74,316.817,706.209z',
 					outline: {
@@ -1109,8 +1114,8 @@
 			legend: {
 				right: 60,
 				textStyle: {
-					color: '#fff'
-				}
+					color: '#fff',
+				},
 			},
 			xAxis: {
 				show: false,
@@ -1160,18 +1165,18 @@
 						],
 					},
 					markLine: {
-									symbol: 'none',
-									data: [
-										{
-											name: '棰濆畾',
-											yAxis: standard.value.xiaolv,
-										},
-									],
-									label: {
-										formatter: '{b}\n{c}',
-										color: '#fff'
-									},
-								},
+						symbol: 'none',
+						data: [
+							{
+								name: '棰濆畾',
+								yAxis: standard.value.xiaolv,
+							},
+						],
+						label: {
+							formatter: '{b}\n{c}',
+							color: '#fff',
+						},
+					},
 					// markLine: {
 					// 	data: [{ type: 'average', name: 'Avg' }],
 					// },
@@ -1180,32 +1185,29 @@
 		}
 
 		const compareOption = {
-					
 			tooltip: {
 				trigger: 'axis',
-			
 			},
 			grid: {
 				top: '6%',
 				left: '3%',
 				right: '10%',
 				bottom: '3%',
-				containLabel: true
+				containLabel: true,
 			},
 			xAxis: {
 				show: false,
 				type: 'value',
-			
 			},
 			yAxis: {
 				axisLine: {
-					show:false,
+					show: false,
 				},
 				axisTick: {
 					show: false,
 				},
 				type: 'category',
-				data: ['1#', '2#', '3#', '4#', '5#', '6#']
+				data: ['1#', '2#', '3#', '4#', '5#', '6#'],
 			},
 			series: [
 				{
@@ -1217,13 +1219,12 @@
 						show: true,
 						position: 'right',
 						valueAnimation: true,
-						
-						color: '#fff' 
-					}
-				},
-			]
-		}
 
+						color: '#fff',
+					},
+				},
+			],
+		}
 
 		option && moisChart.setOption(option)
 		waterOption && waterChart.setOption(waterOption)
@@ -1236,14 +1237,14 @@
 	}
 
 	// 鍔ㄦ�佽鍙栧浘鐗�
-function getHerbImageUrl(name: string) {
-  return new URL(`/src/assets/images/dry/yaocai/${name}`, import.meta.url).href;
-}
+	function getHerbImageUrl(name: string) {
+		return new URL(`/src/assets/images/dry/yaocai/${name}`, import.meta.url).href
+	}
 
 	// 鍔ㄦ�佽鍙栧浘鐗�
 	function getStatusImageUrl(name: string) {
-  return new URL(`/src/assets/images/dry/${name}.gif`, import.meta.url).href;
-}
+		return new URL(`/src/assets/images/dry/${name}.gif`, import.meta.url).href
+	}
 	function queryEqp() {
 		queryById({ id: router.currentRoute.value.params.id }).then((res) => {
 			// console.log(`output->res`, res)
@@ -1253,7 +1254,7 @@
 		})
 	}
 
-    function listAllEqp() {
+	function listAllEqp() {
 		listAll({ enable: 'Y' })
 			.then((result) => {
 				//console.log(`output->result`, result)
@@ -1262,168 +1263,181 @@
 				// 	eqpCodes.push(item.code)
 				// })
 				queryRealTime()
-			setTimeout(initCharts, 500)
-				
+				setTimeout(initCharts, 500)
 			})
 			.catch((err) => {
 				//console.log(`output->err`, err)
 			})
 	}
 
-
-    var num = eqpNum.value;
+	var num = eqpNum.value
 
 	function changeEqp() {
 		//console.log("changeEqp::",eqps.value.length);
-		num ++;
-     if (eqps.value.length > 0) {
-            var i = num%eqps.value.length
-            //eqp.value = eqps.value[i]
-          //  console.log("777",i);
-			eqpNum.value = i;
-            //console.log("888",eqp.value);
-            queryRealTime()
+		num++
+		if (eqps.value.length > 0) {
+			var i = num % eqps.value.length
+			//eqp.value = eqps.value[i]
+			//  console.log("777",i);
+			eqpNum.value = i
+			//console.log("888",eqp.value);
+			queryRealTime()
 			//setTimeout(initCharts, 500)
-        }
-        
+		}
 	}
 
-    // function queryEqpsReal() {
-        
-    //     if (eqps.value.length > 0) {
-    //         var i = num%eqps.value.length
-    //         eqp.value = eqps[i]
-    //         console.log("777",i);
-    //         console.log("888",eqp.value);
-    //         queryRealTime()
-	// 		//setTimeout(initCharts, 500)
-    //     }
-    //     num ++;
-    // }
+	// function queryEqpsReal() {
 
-	var shangliaoFlag = false;
-	var statusGif = 'tmrefeng2';
+	//     if (eqps.value.length > 0) {
+	//         var i = num%eqps.value.length
+	//         eqp.value = eqps[i]
+	//         console.log("777",i);
+	//         console.log("888",eqp.value);
+	//         queryRealTime()
+	// 		//setTimeout(initCharts, 500)
+	//     }
+	//     num ++;
+	// }
+
+	var shangliaoFlag = false
+	var statusGif = 'tmrefeng2'
 	var statusTxt = '姝e湪骞茬嚗'
 
 	function chaiwangban() {
 		statusGif = 'chaiwangban-1'
-		setTimeout(shangliao,7000)
-					
+		setTimeout(shangliao, 7000)
 	}
 
 	function shangliao() {
-		statusGif = "shangliao-N"
-		setTimeout(()=>{
-			statusGif = "zhuangwangban"
-			setTimeout(()=>{
-				statusGif = "guanmen1"
-				setTimeout(()=>{
+		statusGif = 'shangliao-N'
+		setTimeout(() => {
+			statusGif = 'zhuangwangban'
+			setTimeout(() => {
+				statusGif = 'guanmen1'
+				setTimeout(() => {
 					shangliaoFlag = false
-				},4000)
-				
-			},7000)
-		},15000)
+				}, 4000)
+			}, 7000)
+		}, 15000)
 	}
 
-
 	function queryRealTime() {
-
-        if (eqp.value) {
-        eqp.value = eqps.value[eqpNum.value]
-       // console.log("888",eqp.value);
-		let tenantId = 1003
-		let eqpCode = eqp.value.code
-		let queryRealTimeUrl = '/dry/real/getRealTimeData'
-		defHttp.get({ url: queryRealTimeUrl, params: { tenantid: tenantId, machineid: eqpCode} }).then((res) => {
-			
-			if (res && res.trendVo) {
-				//console.log(`output->re11s`, res)
-				//	res.tempValue = [res.windTemp, 100]
-				//res.percent = ((res.dryTime / res.et) * 100).toFixed(2)
-				/**姘存淮鍥惧惈姘撮噺 */
-				res.mois = [
-					(res.trendVo.moisture / 100).toFixed(2),
-					(res.trendVo.moisture / 100 / 1.5).toFixed(2),
-					(res.trendVo.moisture / 100 / 3).toFixed(2),
-				]
-				if (waterChart) {
-					waterChart.setOption({
-						series: [
-							{
-								data: res.mois,
-								label: {
-									formatter: function () {
-										return res.trendVo.moisture + '%'
+		if (eqp.value) {
+			eqp.value = eqps.value[eqpNum.value]
+			// console.log("888",eqp.value);
+			let tenantId = 1003
+			let eqpCode = eqp.value.code
+			let queryRealTimeUrl = '/dry/real/getRealTimeData'
+			defHttp.get({ url: queryRealTimeUrl, params: { tenantid: tenantId, machineid: eqpCode } }).then((res) => {
+				if (res && res.trendVo) {
+					//console.log(`output->re11s`, res)
+					//	res.tempValue = [res.windTemp, 100]
+					//res.percent = ((res.dryTime / res.et) * 100).toFixed(2)
+					/**姘存淮鍥惧惈姘撮噺 */
+					res.mois = [
+						(res.trendVo.moisture / 100).toFixed(2),
+						(res.trendVo.moisture / 100 / 1.5).toFixed(2),
+						(res.trendVo.moisture / 100 / 3).toFixed(2),
+					]
+					if (waterChart) {
+						waterChart.setOption({
+							series: [
+								{
+									data: res.mois,
+									label: {
+										formatter: function () {
+											return res.trendVo.moisture + '%'
+										},
+										fontSize: 20,
 									},
-									fontSize: 20,
 								},
-							},
-						],
-					})
-				}
+							],
+						})
+					}
 
-				/**娓╁害鐜舰鍥� */
-				if (bellowsTempChart) {
-					bellowsTempChart.setOption({
-						series: [{ data: [{ value: res.windTemp }] }, { data: [{ value: res.windTemp }] }],
-					})
-				}
-				/**椋庢満棰戠巼鐜舰鍥� */
-				// if (fanFreqChart) {
-				// 	fanFreqChart.setOption({
-				// 		series: [
-				// 			{
-				// 				data: [
-				// 					{
-				// 						value: res.trendVo.fanFrequency,
-				// 					},
-				// 				],
-				// 			},
-				// 		],
-				// 	})
-				// }
-				/**骞茬嚗杩涘害銆佽蛋鍔夸笌闃舵鏁堢巼鍜岄樁娈垫秷鑰� */
-				if (res && res.detailList) {
-					var progressSeries = []
-					var ganZaoXiaoLv = []
-					var zhengQiXiaoHao = []
-					var dianNengXiaoHao = []
-					var totalTime = 0
-					var beforeWeight = 0
-					res.moisList = []
-					beforeWeight = res.originWeight
-					//console.log(`output->res`, res)
-					res.detailList.forEach((item) => {
-						//console.log(`output->bef`, beforeWeight)
-						//console.log(`output->cur`, item.weight)
-						res.moisList.push([item.totalTime, item.moisture])
-						//console.log(`output->totalTime,item.totalTime`, totalTime, item.totalTime)
-						var curDryTime = item.totalTime - totalTime
+					/**娓╁害鐜舰鍥� */
+					if (bellowsTempChart) {
+						bellowsTempChart.setOption({
+							series: [{ data: [{ value: res.windTemp }] }, { data: [{ value: res.windTemp }] }],
+						})
+					}
+					/**椋庢満棰戠巼鐜舰鍥� */
+					// if (fanFreqChart) {
+					// 	fanFreqChart.setOption({
+					// 		series: [
+					// 			{
+					// 				data: [
+					// 					{
+					// 						value: res.trendVo.fanFrequency,
+					// 					},
+					// 				],
+					// 			},
+					// 		],
+					// 	})
+					// }
+					/**骞茬嚗杩涘害銆佽蛋鍔夸笌闃舵鏁堢巼鍜岄樁娈垫秷鑰� */
+					if (res && res.detailList) {
+						var progressSeries = []
+						var ganZaoXiaoLv = []
+						var zhengQiXiaoHao = []
+						var dianNengXiaoHao = []
+						var totalTime = 0
+						var beforeWeight = 0
+						res.moisList = []
+						beforeWeight = res.originWeight
+						//console.log(`output->res`, res)
+						res.detailList.forEach((item) => {
+							//console.log(`output->bef`, beforeWeight)
+							//console.log(`output->cur`, item.weight)
+							res.moisList.push([item.totalTime, item.moisture])
+							//console.log(`output->totalTime,item.totalTime`, totalTime, item.totalTime)
+							var curDryTime = item.totalTime - totalTime
 
-						if (curDryTime > 0) {
+							if (curDryTime > 0) {
+								progressSeries.push({
+									name: item.moisture,
+									type: 'bar',
+									stack: 'total',
+									label: {
+										show: true,
+									},
+									emphasis: {
+										focus: 'series',
+									},
+									data: [item.totalTime - totalTime],
+								})
+								ganZaoXiaoLv.push([curDryTime / 2 + totalTime, (((beforeWeight - item.weight) / curDryTime) * 60).toFixed(1)])
+
+								totalTime = item.totalTime
+							}
+							beforeWeight = item.weight
+						})
+
+						if (res.remain) {
+							if (res.dryTime - totalTime > 0) {
+								progressSeries.push({
+									name: '褰撳墠',
+									type: 'bar',
+									stack: 'total',
+									label: {
+										show: true,
+									},
+									emphasis: {
+										focus: 'series',
+									},
+									data: [
+										{
+											value: res.dryTime - totalTime,
+										},
+									],
+								})
+							}
+
+							// ganZaoXiaoLv.push([totalTime + res.remain,standard.value.xiaolv])
+
+							res.totalRemain = res.remain - (res.dryTime - totalTime) > 0 ? res.remain - (res.dryTime - totalTime) : 0
 							progressSeries.push({
-								name: item.moisture,
-								type: 'bar',
-								stack: 'total',
-								label: {
-									show: true,
-								},
-								emphasis: {
-									focus: 'series',
-								},
-								data: [item.totalTime - totalTime],
-							})
-							ganZaoXiaoLv.push([curDryTime / 2 + totalTime, (((beforeWeight - item.weight) / curDryTime) * 60).toFixed(1)])
-
-							totalTime = item.totalTime
-						}
-						beforeWeight = item.weight
-					})
-
-					if (res.remain) {
-						if (res.dryTime - totalTime > 0) {
-							progressSeries.push({
-								name: '褰撳墠',
+								name: '鍓╀綑',
 								type: 'bar',
 								stack: 'total',
 								label: {
@@ -1434,308 +1448,282 @@
 								},
 								data: [
 									{
-										value: res.dryTime - totalTime,
+										value: res.remain - (res.dryTime - totalTime),
+										itemStyle: {
+											color: '#c0c0c0',
+										},
 									},
 								],
 							})
 						}
 
-						// ganZaoXiaoLv.push([totalTime + res.remain,standard.value.xiaolv])
-
-						res.totalRemain = res.remain - (res.dryTime - totalTime)>0?res.remain - (res.dryTime - totalTime):0
-						progressSeries.push({
-							name: '鍓╀綑',
-							type: 'bar',
-							stack: 'total',
-							label: {
-								show: true,
-							},
-							emphasis: {
-								focus: 'series',
-							},
-							data: [
+						/**骞茬嚗杩涘害 */
+						if (progressBarChart) {
+							//console.log(`output->progressSeries`, progressSeries)
+							progressBarChart.setOption(
 								{
-									value: res.remain - (res.dryTime - totalTime),
-									itemStyle: {
-										color: '#c0c0c0',
+									xAxis: {
+										max: totalTime + res.remain,
 									},
+									series: progressSeries,
 								},
-							],
-						})
+								{ replaceMerge: ['series'] }
+							)
+						}
 
-
-
-					}
-
-					/**骞茬嚗杩涘害 */
-					if (progressBarChart) {
-						//console.log(`output->progressSeries`, progressSeries)
-						progressBarChart.setOption(
-							{
+						res.totalTime = totalTime + res.remain
+						/**骞茬嚗鏁堢巼銆佹秷鑰� */
+						if (efficiencyLineChart) {
+							//console.log(`output->ganZaoXiaoLv`, ganZaoXiaoLv)
+							efficiencyLineChart.setOption({
 								xAxis: {
 									max: totalTime + res.remain,
 								},
-								series: progressSeries,
-							},
-							{ replaceMerge: ['series'] }
-						)
+								series: [
+									{
+										data: ganZaoXiaoLv,
+										markLine: {
+											symbol: 'none',
+											data: [
+												{
+													name: '棰濆畾',
+													yAxis: standard.value.xiaolv,
+												},
+											],
+											label: {
+												formatter: '{b}\n{c}',
+												color: '#fff',
+											},
+										},
+									},
+									{ data: zhengQiXiaoHao },
+									{ data: dianNengXiaoHao },
+								],
+							})
+						}
+
+						res.moisList.push([res.dryTime, res.trendVo.moisture])
 					}
 
-					res.totalTime = totalTime + res.remain
-					/**骞茬嚗鏁堢巼銆佹秷鑰� */
-					if (efficiencyLineChart) {
-						//console.log(`output->ganZaoXiaoLv`, ganZaoXiaoLv)
-						efficiencyLineChart.setOption({
-							xAxis: {
-								max: totalTime + res.remain,
-							},
-							series: [{ data: ganZaoXiaoLv,
-							markLine: {
-								symbol: 'none',
-									data: [
-										{
-											name: '棰濆畾',
-											yAxis: standard.value.xiaolv,
+					/**娓╁害瓒嬪娍 */
+					if (res && res.bellowsTemp) {
+						Array.from(Object.entries(res.bellowsTemp))
+						var arr = Object.keys(res.bellowsTemp)
+						var temArr = []
+						arr.forEach((item) => {
+							temArr.push([item * 1, res.bellowsTemp[item]])
+						})
+
+						//console.log(`output->arr` + JSON.stringify(temArr))
+						res.tempArr = temArr
+					}
+
+					/**骞茬嚗杩囩▼瓒嬪娍 */
+					if (moisChart) {
+						//console.log(`output->鏇存柊chart`)
+						moisChart.setOption({
+							series: [
+								{
+									data: res.moisList,
+									markLine: {
+										symbol: 'none',
+										data: [
+											{
+												name: '鐩爣',
+												yAxis: res.target,
+											},
+										],
+										label: {
+											formatter: '{b}\n{c}%',
+											color: '#fff',
 										},
-									],
-									label: {
-										formatter: '{b}\n{c}',
-										color: '#fff'
 									},
-							} },
-							 { data: zhengQiXiaoHao },
-							  { data: dianNengXiaoHao }],
+								},
+								{
+									data: res.tempArr,
+								},
+							],
 						})
 					}
 
-					res.moisList.push([res.dryTime, res.trendVo.moisture])
-				}
-
-				/**娓╁害瓒嬪娍 */
-				if (res && res.bellowsTemp) {
-					Array.from(Object.entries(res.bellowsTemp))
-					var arr = Object.keys(res.bellowsTemp)
-					var temArr = []
-					arr.forEach((item) => {
-						temArr.push([item * 1, res.bellowsTemp[item]])
-					})
-
-					//console.log(`output->arr` + JSON.stringify(temArr))
-					res.tempArr = temArr
-				}
-
-				/**骞茬嚗杩囩▼瓒嬪娍 */
-				if (moisChart) {
-					//console.log(`output->鏇存柊chart`)
-					moisChart.setOption({
-						series: [
-							{
-								data: res.moisList,
-								markLine: {
-									symbol: 'none',
-									data: [
-										{
-											name: '鐩爣',
-											yAxis: res.target,
-										},
-									],
-									label: {
-										formatter: '{b}\n{c}%',
-										color: '#fff'
-									},
-								},
-							},
-							{
-								data: res.tempArr,
-							},
-						],
-					})
-				}
-
-				/**鏁堢巼瀵规瘮鍥� */
-				if( (res.originWeight - res.yield) <= 0) {
-					res.xiaolv =  standard.value.xiaolv + 6
-				} else {
-					res.xiaolv = (((res.originWeight - res.yield) / res.dryTime) * 60).toFixed(2)
-				}
-				
-				if (res.xiaolv > standard.value.xiaolv) {
-					res.xlgood = true
-					res.xlsHeight = (standard.value.xiaolv / res.xiaolv) * 100 + '%'
-					res.xlrHeight = '100%'
-				} else if (res.xiaolv < standard.value.xlMin) {
-					res.xlbad = true
-					res.xlsHeight = '100%'
-					res.xlrHeight = (res.xiaolv / standard.value.xiaolv) * 100 + '%'
-				} else {
-					res.xlsHeight = '100%'
-					res.xlrHeight = (res.xiaolv / standard.value.xiaolv) * 100 + '%'
-				}
-
-
-				
-				/** 钂告苯娑堣�� */
-				if( (res.originWeight - res.yield) <= 0) {
-					res.zhengqi = standard.value.zhengqi -3
-				} else {
-					res.zhengqi = (res.steam / (res.originWeight - res.yield)).toFixed(1)
-				}
-				//console.log('zhengqi:', res.zhengqi);
-				if (res.zhengqi > standard.value.zhengqi) {
-					res.zqbad = true
-					res.zqsHeight = (standard.value.zhengqi / res.zhengqi) * 100 + '%'
-					res.zqrHeight = '100%'
-				} else if (res.zhengqi < standard.value.zqMin) {
-					res.zqgood = true
-					res.zqsHeight = '100%'
-					res.zqrHeight = (res.zhengqi / standard.value.zhengqi) * 100 + '%'
-				} else {
-					res.zqsHeight = '100%'
-					res.zqrHeight = (res.zhengqi / standard.value.zhengqi) * 100 + '%'
-				}
-
-				
-				
-				/** 鐢佃兘娑堣�� */
-				if( (res.originWeight - res.yield) <= 0) {
-					res.dian = standard.value.dian -1.5
-				} else {
-					res.dian = (res.watt / (res.originWeight - res.yield)).toFixed(1)
-				}
-				
-				if (res.dian > standard.value.dian) {
-					res.dnbad = true
-					res.dnsHeight = (standard.value.dian / res.dian) * 100 + '%'
-					res.dnrHeight = '100%'
-				} else if (res.dian < standard.value.dMin) {
-					
-					res.dngood = true
-					res.dnsHeight = '100%'
-					res.dnrHeight = (res.dian / standard.value.dian) * 100 + '%'
-				} else {
-					res.dnsHeight = '100%'
-					res.dnrHeight = (res.dian / standard.value.dian) * 100 + '%'
-				}
-
-				console.log("state:::fan::", res.state_fan,"roller::", res.state_roller,"windbox::", res.state_windbox);
-				console.log("===========================");
-				//console.log("state:::state_windbox::", res.state_windbox);
-
-				/**鐘舵��/gif鍔ㄥ浘 */
-				if (!shangliaoFlag) {
-					if (res.orderStatus == 0) {
-					statusGif = 'zanting'
-					statusTxt = '鍑嗗'
-				} else if (res.orderStatus == 1) {
-					shangliaoFlag = true
-					statusGif = 'kaimen1'
-					statusTxt = '涓婃枡'
-					setTimeout(chaiwangban,4000)
-				} else if (res.orderStatus == 2) {
-					if(res.state_fan == 1) {
-						statusGif = 'tmrefeng2'
-						statusTxt = '姝e湪骞茬嚗'
+					/**鏁堢巼瀵规瘮鍥� */
+					if (res.originWeight - res.yield <= 0) {
+						res.xiaolv = standard.value.xiaolv + 6
+					} else {
+						res.xiaolv = (((res.originWeight - res.yield) / res.dryTime) * 60).toFixed(2)
 					}
 
-					if(res.state_roller == 4) {
-						statusGif = 'fanliao-N'
-						statusTxt = '姝e湪缈绘枡'
+					if (res.xiaolv > standard.value.xiaolv) {
+						res.xlgood = true
+						res.xlsHeight = (standard.value.xiaolv / res.xiaolv) * 100 + '%'
+						res.xlrHeight = '100%'
+					} else if (res.xiaolv < standard.value.xlMin) {
+						res.xlbad = true
+						res.xlsHeight = '100%'
+						res.xlrHeight = (res.xiaolv / standard.value.xiaolv) * 100 + '%'
+					} else {
+						res.xlsHeight = '100%'
+						res.xlrHeight = (res.xiaolv / standard.value.xiaolv) * 100 + '%'
 					}
 
-					if (res.state_roller == 5) {
-						statusGif = 'chuliao-N'
-						statusTxt = '姝e湪鍑烘枡'
+					/** 钂告苯娑堣�� */
+					if (res.originWeight - res.yield <= 0) {
+						res.zhengqi = standard.value.zhengqi - 3
+					} else {
+						res.zhengqi = (res.steam / (res.originWeight - res.yield)).toFixed(1)
 					}
-					
-					if (res.state_windbox == 2 || res.state_windbox == 3) {
-						statusGif = 'fengxiangsheng-1'
-						statusTxt = '姝e湪骞茬嚗'
+					//console.log('zhengqi:', res.zhengqi);
+					if (res.zhengqi > standard.value.zhengqi) {
+						res.zqbad = true
+						res.zqsHeight = (standard.value.zhengqi / res.zhengqi) * 100 + '%'
+						res.zqrHeight = '100%'
+					} else if (res.zhengqi < standard.value.zqMin) {
+						res.zqgood = true
+						res.zqsHeight = '100%'
+						res.zqrHeight = (res.zhengqi / standard.value.zhengqi) * 100 + '%'
+					} else {
+						res.zqsHeight = '100%'
+						res.zqrHeight = (res.zhengqi / standard.value.zhengqi) * 100 + '%'
 					}
-				} else if(res.orderStatus == 3) {
-					statusGif = 'zanting'
-					statusTxt = '鏆傚仠'
-				} else if(res.orderStatus == 4) {
-					statusGif = 'zanting'
-					statusTxt = '骞茬嚗瀹屾垚'
-				}
-				}
-				
-				
 
-				if (compareChart) {
-					compareChart.setOption({
-						yAxis: {
-							data: res.compEqpNum
-						},
-						series: {
-							data: res.compEqpEffic
+					/** 鐢佃兘娑堣�� */
+					if (res.originWeight - res.yield <= 0) {
+						res.dian = standard.value.dian - 1.5
+					} else {
+						res.dian = (res.watt / (res.originWeight - res.yield)).toFixed(1)
+					}
+
+					if (res.dian > standard.value.dian) {
+						res.dnbad = true
+						res.dnsHeight = (standard.value.dian / res.dian) * 100 + '%'
+						res.dnrHeight = '100%'
+					} else if (res.dian < standard.value.dMin) {
+						res.dngood = true
+						res.dnsHeight = '100%'
+						res.dnrHeight = (res.dian / standard.value.dian) * 100 + '%'
+					} else {
+						res.dnsHeight = '100%'
+						res.dnrHeight = (res.dian / standard.value.dian) * 100 + '%'
+					}
+
+					//console.log('state:::fan::', res.state_fan, 'roller::', res.state_roller, 'windbox::', res.state_windbox)
+					//console.log('===========================')
+					//console.log("state:::state_windbox::", res.state_windbox);
+
+					/**鐘舵��/gif鍔ㄥ浘 */
+					if (!shangliaoFlag) {
+						if (res.orderStatus == 0) {
+							statusGif = 'zanting'
+							statusTxt = '鍑嗗'
+						} else if (res.orderStatus == 1) {
+							shangliaoFlag = true
+							statusGif = 'kaimen1'
+							statusTxt = '涓婃枡'
+							setTimeout(chaiwangban, 4000)
+						} else if (res.orderStatus == 2) {
+							if (res.state_fan == 1) {
+								statusGif = 'tmrefeng2'
+								statusTxt = '姝e湪骞茬嚗'
+							}
+
+							if (res.state_roller == 4) {
+								statusGif = 'fanliao-N'
+								statusTxt = '姝e湪缈绘枡'
+							}
+
+							if (res.state_roller == 5) {
+								statusGif = 'chuliao-N'
+								statusTxt = '姝e湪鍑烘枡'
+							}
+
+							if (res.state_windbox == 2 || res.state_windbox == 3) {
+								statusGif = 'fengxiangsheng-1'
+								statusTxt = '姝e湪骞茬嚗'
+							}
+						} else if (res.orderStatus == 3) {
+							statusGif = 'zanting'
+							statusTxt = '鏆傚仠'
+						} else if (res.orderStatus == 4) {
+							statusGif = 'zanting'
+							statusTxt = '骞茬嚗瀹屾垚'
 						}
-					})
+					}
+
+					if (compareChart) {
+						compareChart.setOption({
+							yAxis: {
+								data: res.compEqpNum,
+							},
+							series: {
+								data: res.compEqpEffic,
+							},
+						})
+					}
+
+					res.herbImage = 'yaocai1.png'
+
+					if (res.herbName == '鐧借姳铔囪垖鑽�') {
+						res.herbImage = 'baihuasheshecao.png'
+					} else if (res.herbName == '绯ョɑ鏍�') {
+						res.herbImage = 'nuodaogen.png'
+					} else if (res.herbName == '娣緤钘�') {
+						res.herbImage = 'yinyanghuo.png'
+					} else if (res.herbName == '椹娇鑻�') {
+						res.herbImage = 'machixian.png'
+					} else if (res.herbName == '澧ㄦ棻鑾�') {
+						res.herbImage = 'mohanlian.png'
+					} else if (res.herbName == '妗戠櫧鐨�') {
+						res.herbImage = 'sangbaipi.png'
+					}
+					res.isError = false
+
+					res.errorMsg = '鏈変竴涓晠闅滐紝璇锋鏌ャ��'
+				} else {
+					res = {
+						mois: [],
+						gif: 'tmrefeng2',
+						herbImage: 'yaocai1.png',
+					}
 				}
 
-				res.herbImage = 'yaocai1.png'
-
-				if (res.herbName == '鐧借姳铔囪垖鑽�') {
-					res.herbImage = 'baihuasheshecao.png'
-				} else if (res.herbName == '绯ョɑ鏍�') {
-					res.herbImage = 'nuodaogen.png'
-				} else if (res.herbName == '娣緤钘�') {
-					res.herbImage = 'yinyanghuo.png'
-				} else if (res.herbName == '椹娇鑻�') {
-					res.herbImage = 'machixian.png'
-				} else if (res.herbName == '澧ㄦ棻鑾�') {
-					res.herbImage = 'mohanlian.png'
-				} else if (res.herbName == '妗戠櫧鐨�') {
-					res.herbImage = 'sangbaipi.png'
-				}
-				res.isError = false
-
-				res.errorMsg = '鏈変竴涓晠闅滐紝璇锋鏌ャ��'
-			} else {
-				res = {
-					mois: [],
-					gif: 'tmrefeng2',
-					herbImage: 'yaocai1.png'
-				}
-			}
-			
-			//console.log(`output->res`, res)
-			realData.value = res
-		})
-    }
+				//console.log(`output->res`, res)
+				realData.value = res
+			})
+		}
 	}
 
-    var move = true;
-    function moveImage() {
-       
-        if (move) {
-            position.value -= 0.3
-        } else {
-            position.value += 0.3
-        }
-        if(position.value < -240 ) {
-            move = false
-        }
-        if (position.value > -1) {
-            move = true
-        }
+	var move = true
+	function moveImage() {
+		if (move) {
+			position.value -= 0.3
+		} else {
+			position.value += 0.3
+		}
+		if (position.value < -240) {
+			move = false
+		}
+		if (position.value > -1) {
+			move = true
+		}
+	}
 
-        
-    }
+	function back() {
+		router.back()
+	}
 
-    listAllEqp()
+	listAllEqp()
 	//queryEqp()
 	// DOM鎸傝浇瀹屾垚鍚庢覆鏌撳浘琛�
 	onMounted(() => {
 		Timer.value = setInterval(queryRealTime, 3000)
-        Timer2.value = setInterval(moveImage, 50)
+		Timer2.value = setInterval(moveImage, 50)
 	})
 
 	onUnmounted(() => {
 		clearInterval(Timer.value)
-        clearInterval(Timer2.value)
+		clearInterval(Timer2.value)
 		Timer.value = null
-        Timer2.value = null
+		Timer2.value = null
 	})
 </script>
 
@@ -1748,12 +1736,12 @@
 	.eqpImage {
 		height: 1080px;
 		width: 1920px;
-		 background-image: url(/src/assets/images/dry/bg.png);
+		background-image: url(/src/assets/images/dry/bg.png);
 		background-repeat: no-repeat;
-        color: white;
+		color: white;
 		/*background-position: 160px 280px; */
 		/* background-color: red; */
-        background-size: 120%;
+		background-size: 120%;
 		padding: 10px;
 		display: flex;
 		flex-wrap: wrap;
@@ -1765,8 +1753,8 @@
 		width: 1200px;
 		display: flex;
 		flex-wrap: wrap;
-        align-content: flex-start;
-		
+		align-content: flex-start;
+
 		/* background-color: white;
 		background-image: url(/src/assets/images/dry/shebei1.png);
 		background-repeat: no-repeat;
@@ -1777,24 +1765,22 @@
 
 	.leftTop {
 		height: 750px;
-    width: 850px;
-    display: flex;
-    justify-content: center;
-    align-content: flex-start;
-    background-image: url(/src/assets/images/dry/ganzaoji-x.png);
-    background-repeat: no-repeat;
-    background-size: 79%;
-    border-radius: 10px;
-    flex-wrap: wrap;
-    background-position: 85px 279px;
-
+		width: 850px;
+		display: flex;
+		justify-content: center;
+		align-content: flex-start;
+		background-image: url(/src/assets/images/dry/ganzaoji-x.png);
+		background-repeat: no-repeat;
+		background-size: 79%;
+		border-radius: 10px;
+		flex-wrap: wrap;
+		background-position: 85px 279px;
 	}
 	.leftMid {
-		
 		width: 850px;
 		height: 300px;
 		/* border: 1px solid; */
-        margin-top: 10px;
+		margin-top: 10px;
 		border-radius: 10px;
 		/* background: white; */
 	}
@@ -1802,7 +1788,7 @@
 		line-height: 33px;
 		padding-left: 10px;
 		font-size: 30px;
-        color: white;
+		color: white;
 	}
 	.subhead {
 		color: #a19f9c;
@@ -1858,7 +1844,6 @@
 		align-items: center;
 		font-size: 30px;
 		color: #727272;
-		
 	}
 	.leftTop2 {
 		width: 250px;
@@ -1983,6 +1968,7 @@
 	.curEqp {
 		width: 340px;
 		height: 170px;
+
 		/* background: white;
 		border-radius: 10px; */
 	}
@@ -1992,7 +1978,7 @@
 		height: 260px;
 		/* background: white;
 		border-radius: 10px; */
-		
+
 		background-repeat: no-repeat;
 		background-size: 200px;
 		background-position: 0px 10px;
@@ -2001,7 +1987,7 @@
 		width: 690px;
 		height: 440px;
 		/* background: white; */
-		
+
 		padding: 20px;
 		border-radius: 10px;
 	}
diff --git a/src/views/dry/bigScreen/BigWorkShop.vue b/src/views/dry/bigScreen/BigWorkShop.vue
index 4370abf..902e6c9 100644
--- a/src/views/dry/bigScreen/BigWorkShop.vue
+++ b/src/views/dry/bigScreen/BigWorkShop.vue
@@ -1,14 +1,366 @@
 <template>
-  <dv-full-screen-container>
-     
-  </dv-full-screen-container>
+	<dv-full-screen-container>
+		<div class="fbg">
+			<div class="bgImage">
+				<div class="head">
+					<div style="width: 600px; height: 50px"> <dv-decoration-8 style="width: 500px; height: 50px" /></div>
+
+					<div class="title">
+						<span>鍏版郸鏅鸿兘骞茬嚗杞﹂棿</span>
+
+						<dv-decoration-5 :dur="20" style="margin-top: -40px; width: 700px; height: 80px" />
+					</div>
+					<div style="width: 600px; height: 50px; display: flex; justify-content: end">
+						<dv-decoration-8 :reverse="true" style="width: 500px; height: 50px"
+					/></div>
+				</div>
+				<div class="body">
+					<div class="humiture">
+						<div style="display: flex; width: 120px">
+							<Icon style="color: #f7b733" icon="solar:temperature-line-duotone" :size="28" />
+							&nbsp;
+							<div style="font-size: 20px; line-height: 26px"> 26 鈩� </div>
+						</div>
+						<div style="display: flex">
+							<Icon style="color: #f7b733" icon="material-symbols:humidity-percentage-outline" :size="28" />
+							&nbsp;
+							<div style="font-size: 20px; line-height: 26px"> 53 %rh </div>
+						</div>
+					</div>
+					<div class="up">
+						<div v-for="num in eqpNum" :key="num" :class="{ one: num === 1, two: num === 2, three: num === 3, four: num === 4 }">
+							<div class="eqpInfoup" @click="gotoeqp(num - 1)">
+								<div class="eqp-title">
+									<div class="eqp-name">{{ eqpMap.get(eqpCodes[num - 1])?.name || '棰勭暀' }}</div>
+									<!-- <div class="process"> </div> -->
+									<Progress
+										:stroke-color="{
+											from: '#108ee9',
+											to: '#87d068',
+										}"
+										:percent="parseFloat(realTime.get(eqpCodes[num - 1])?.percent || '0')"
+										status="active"
+										trailColor="#2b2b2b2b"
+										:show-info="false"
+									/>
+									<!-- <div class="eqp-name">50%</div> -->
+								</div>
+								<div class="eqp-info-up">
+									<div class="herb">{{ realTime.get(eqpCodes[num - 1])?.herbName || '鏆傛棤' }}</div>
+								</div>
+								<div class="water">
+									<div class="temp">
+										<div style="line-height: 28px"><Icon style="color: #2a5a63" icon="ic:twotone-water-drop" :size="28" /> </div>
+										<div class="font">
+											<span class="value"> {{ realTime.get(eqpCodes[num - 1])?.trendVo.moisture || '0' }}</span> %
+										</div>
+									</div>
+									<div class="temp">
+										<div style="line-height: 28px"><Icon style="color: #6c5b7b" icon="solar:temperature-bold-duotone" :size="30" /> </div>
+										<div class="font">
+											<span class="value">{{ realTime.get(eqpCodes[num - 1])?.trendVo.bellowsTemp || '0' }} </span> 鈩�
+										</div>
+									</div>
+								</div>
+							</div>
+						</div>
+					</div>
+					<div class="down">
+						<div v-for="num in eqpNum" :key="num" :class="{ one: num === 1, two: num === 2, three: num === 3, four: num === 4 }">
+							<div class="eqpInfodown" @click="gotoeqp(num + 3)">
+								<div class="eqp-info-down">
+									<div class="herb">{{ realTime.get(eqpCodes[num + 3])?.herbName || '鏆傛棤' }}</div>
+								</div>
+								<div class="water">
+									<div class="temp">
+										<div style="line-height: 28px">
+											<Icon style="color: #2a5a63" icon="ic:twotone-water-drop" :size="28" />
+										</div>
+										<div class="font">
+											<span class="value">{{ realTime.get(eqpCodes[num + 3])?.trendVo.moisture || '0' }}</span> %
+										</div>
+									</div>
+									<div class="temp">
+										<div style="line-height: 28px"><Icon style="color: #6c5b7b" icon="solar:temperature-bold-duotone" :size="30" /> </div>
+										<div class="font">
+											<span class="value">{{ realTime.get(eqpCodes[num + 3])?.trendVo.bellowsTemp || '0' }}</span> 鈩�
+										</div>
+									</div>
+								</div>
+
+								<div style="height: 70px"></div>
+								<div class="eqp-title">
+									<!-- <div class="process"> </div> -->
+									<Progress
+										:stroke-color="{
+											from: '#108ee9',
+											to: '#87d068',
+										}"
+										:percent="parseFloat(realTime.get(eqpCodes[num + 3])?.percent || '0')"
+										status="active"
+										trailColor="#2b2b2b2b"
+										:show-info="false"
+									/>
+									<!-- <div class="eqp-name">50%</div> -->
+									<div class="eqp-name-down">{{ eqpMap.get(eqpCodes[num + 3])?.name || '棰勭暀' }}</div>
+								</div>
+							</div>
+						</div>
+					</div>
+				</div>
+			</div>
+		</div>
+	</dv-full-screen-container>
 </template>
 
 <script setup lang="ts">
+	import { Progress } from 'ant-design-vue'
+	import { onMounted, ref, onUnmounted } from 'vue'
+	import { Icon, IconPicker, SvgIcon } from '/@/components/Icon/index'
+	import { listAll } from '../api/DryEquipment.api'
+	import { dryEquipment } from '../dataDefine/DryEquipment.data'
+	import { router } from '/@/router'
+	import { defHttp } from '/@/utils/http/axios'
+	import { useUserStore } from '/@/store/modules/user'
+	const eqpNum = ref(4)
+	const eqpMap = ref(new Map())
+	const eqpCodes = ref(['GM001', 'GM002', 'GM003', 'GM004', 'GM005', 'GM006'])
+	const eqps = ref([] as dryEquipment[])
 
+	const userStore = useUserStore()
+	const Timer = ref()
 
+	const realTime = ref(new Map())
+
+	function listAllEqp() {
+		listAll({ enable: 'Y' })
+			.then((result) => {
+				//console.log(`output->result`, result)
+				eqps.value = result
+
+				result.forEach((item) => {
+					eqpMap.value.set(item.code, item)
+				})
+				updateRealTime()
+			})
+			.catch((err) => {
+				console.log(`output->err`, err)
+			})
+	}
+
+	function updateRealTime() {
+		//console.log(`output->瀹氭椂鍒锋柊鏁版嵁`)
+		eqps.value.forEach((item) => {
+			queryRealTime(item)
+		})
+	}
+
+	function queryRealTime(eqp: dryEquipment) {
+		let tenantId = userStore.getTenant
+		let eqpCode = eqp.code
+		let queryRealTimeUrl = '/dry/real/getRealTimeData'
+		defHttp.get({ url: queryRealTimeUrl, params: { tenantid: tenantId, machineid: eqpCode } }).then((res) => {
+			//console.log(`output->res`, res)
+			if (res && res.trendVo) {
+				res.tempValue = [res.windTemp, 100]
+				res.percent = ((res.dryTime / (res.dryTime + res.remain)) * 100).toFixed(2)
+			} else {
+				res = {
+					tempValue: [0, 100],
+					percent: 0,
+					mois: [],
+				}
+			}
+
+			realTime.value.set(eqp.code, res)
+		})
+	}
+	function gotoeqp(num) {
+		if (num < eqpCodes.value.length) {
+			router.push({ path: '/bigEqp', query: { num: num } })
+		}
+	}
+
+	listAllEqp()
+	onMounted(() => {
+		Timer.value = setInterval(updateRealTime, 3000)
+	})
+
+	onUnmounted(() => {
+		clearInterval(Timer.value)
+		Timer.value = null
+	})
 </script>
 
 <style scoped>
+	.fbg {
+		height: 1080px;
+		width: 1920px;
+		background-image: url(/src/assets/images/dry/bg/bg5.png);
+		background-repeat: no-repeat;
+	}
+	.bgImage {
+		height: 1080px;
+		width: 1920px;
+		background-image: url(/src/assets/images/dry/bg/wksp2.png);
+		background-repeat: no-repeat;
+		background-size: 100%;
+		background-position: 0% 50%;
+	}
 
-</style>
\ No newline at end of file
+	.head {
+		display: flex;
+		align-content: center;
+		justify-content: center;
+	}
+
+	.body {
+		height: 980px;
+		width: 100%;
+		margin-top: -100px;
+		font-size: 20px;
+	}
+	.title {
+		height: 200px;
+		padding: 20px;
+		font-size: 30px;
+		font-weight: bold;
+		text-align: center;
+		color: white;
+	}
+
+	.humiture {
+		height: 0px;
+		justify-content: center;
+		color: white;
+		display: flex;
+	}
+
+	.up {
+		padding-left: 100px;
+		padding-top: 00px;
+		display: flex;
+
+		align-content: center;
+		justify-content: flex-start;
+	}
+	.down {
+		padding-left: 392px;
+		margin-top: -334px;
+		display: flex;
+
+		align-content: center;
+		justify-content: flex-start;
+	}
+	.eqpInfoup {
+		width: 280px;
+		height: 300px;
+		margin: 0 41px;
+		display: flex;
+		flex-direction: column;
+	}
+
+	.eqpInfodown {
+		width: 280px;
+		height: 300px;
+		margin: 0 41px;
+		display: flex;
+		flex-direction: column;
+		justify-content: flex-start;
+	}
+
+	.one {
+		margin-top: 280px;
+	}
+
+	.two {
+		margin-top: 220px;
+	}
+
+	.three {
+		margin-top: 160px;
+	}
+
+	.four {
+		margin-top: 100px;
+	}
+
+	.eqp-title {
+		height: 30px;
+		border-radius: 20px;
+		/* background: rgb(182, 182, 182);
+		border: 1px solid green; */
+		width: 100%;
+	}
+
+	.eqp-name {
+		line-height: 30px;
+		text-align: center;
+		color: white;
+		margin-top: -30px;
+	}
+
+	.eqp-name-down {
+		line-height: 40px;
+		text-align: center;
+		color: white;
+	}
+
+	.process {
+		width: 50%;
+		height: 100%;
+		overflow: hidden;
+		border-radius: 20px;
+		background: #3f4c6b;
+	}
+
+	.eqp-info-up {
+		flex: 1;
+		padding-top: 120px;
+		display: flex;
+	}
+
+	.eqp-info-down {
+		flex: 1;
+		padding-top: 50px;
+		display: flex;
+	}
+
+	.herb {
+		height: 30px;
+		background: #3f4c6b;
+		color: white;
+		line-height: 30px;
+		padding: 0 10px;
+	}
+	.water {
+		height: 120px;
+		width: 110px;
+		margin-left: 170px;
+		display: flex;
+		flex-wrap: wrap;
+		align-content: space-evenly;
+	}
+
+	.temp {
+		display: flex;
+	}
+	.font {
+		line-height: 26px;
+	}
+
+	.value {
+	}
+	:deep() .progress {
+		padding: 25px 25px;
+
+		width: 360px;
+		display: flex;
+	}
+	:deep() .ant-progress-bg {
+		height: 25px !important;
+	}
+	:deep() .ant-progress-inner {
+		background-color: rgb(197 197 197 / 52%) !important;
+	}
+</style>
diff --git a/src/views/dry/common/prodRecordReport.vue b/src/views/dry/common/prodRecordReport.vue
new file mode 100644
index 0000000..5ad030f
--- /dev/null
+++ b/src/views/dry/common/prodRecordReport.vue
@@ -0,0 +1,18 @@
+<template>
+	<iframe :src="reportUrl" style="width: 100%; height: 100%"></iframe>
+</template>
+
+<script setup lang="ts">
+	import { onMounted, ref } from 'vue'
+	import { router } from '/@/router'
+	console.log(`output->router1`, router)
+	const reportUrl = ref('')
+	reportUrl.value = window._CONFIG['domianURL'] + '/jmreport/view/833110227445567488?batch=' + router.currentRoute.value.query.batch
+	//reportUrl.value = 'www.baidu.com'
+	console.log(`output->reportUrl.value`, reportUrl.value)
+	// onMounted(() => {
+	// 	console.log(`output->router`, router)
+	// })
+</script>
+
+<style></style>
diff --git a/src/views/dry/dataDefine/DryEqpType.data.ts b/src/views/dry/dataDefine/DryEqpType.data.ts
index d350469..bfdd10e 100644
--- a/src/views/dry/dataDefine/DryEqpType.data.ts
+++ b/src/views/dry/dataDefine/DryEqpType.data.ts
@@ -1,65 +1,65 @@
-import { BasicColumn, FormSchema } from '/@/components/Table';
-import { rules } from '/@/utils/helper/validator';
+import { BasicColumn, FormSchema } from '/@/components/Table'
+import { rules } from '/@/utils/helper/validator'
 //鍒楄〃鏁版嵁
 export const columns: BasicColumn[] = [
-  {
-    title: 'code',
-    align: 'center',
-    dataIndex: 'code',
-  },
-  {
-    title: 'name',
-    align: 'center',
-    dataIndex: 'name',
-  },
-];
+	{
+		title: '缂栫爜',
+		align: 'center',
+		dataIndex: 'code',
+	},
+	{
+		title: '鍚嶇О',
+		align: 'center',
+		dataIndex: 'name',
+	},
+]
 //鏌ヨ鏁版嵁
 export const searchFormSchema: FormSchema[] = [
-  {
-    label: 'code',
-    field: 'code',
-    component: 'Input',
-    colProps: { span: 6 },
-  },
-  {
-    label: 'name',
-    field: 'name',
-    component: 'Input',
-    colProps: { span: 6 },
-  },
-];
+	{
+		label: '缂栫爜',
+		field: 'code',
+		component: 'Input',
+		colProps: { span: 6 },
+	},
+	{
+		label: '鍚嶇О',
+		field: 'name',
+		component: 'Input',
+		colProps: { span: 6 },
+	},
+]
 //琛ㄥ崟鏁版嵁
 export const formSchema: FormSchema[] = [
-  {
-    label: 'code',
-    field: 'code',
-    component: 'Input',
-    dynamicRules: ({ model, schema }) => {
-      return [{ required: true, message: '璇疯緭鍏ode!' }, { ...rules.duplicateCheckRule('dry_eqp_type', 'code', model, schema)[0] }];
-    },
-  },
-  {
-    label: 'name',
-    field: 'name',
-    component: 'Input',
-    dynamicRules: ({ model, schema }) => {
-      return [{ required: true, message: '璇疯緭鍏ame!' }, { ...rules.duplicateCheckRule('dry_eqp_type', 'name', model, schema)[0] }];
-    },
-  },
-  // TODO 涓婚敭闅愯棌瀛楁锛岀洰鍓嶅啓姝讳负ID
-  {
-    label: '',
-    field: 'id',
-    component: 'Input',
-    show: false,
-  },
-];
+	{
+		label: '缂栫爜',
+		field: 'code',
+		component: 'Input',
+		dynamicRules: ({ model, schema }) => {
+			return [{ required: true, message: '璇疯緭鍏ョ紪鐮�!' }, { ...rules.duplicateCheckRule('dry_eqp_type', 'code', model, schema)[0] }]
+		},
+	},
+	{
+		label: '鍚嶇О',
+		field: 'name',
+		component: 'Input',
+		dynamicRules: ({ model, schema }) => {
+			return [{ required: true, message: '璇疯緭鍏ュ悕绉�!' }, { ...rules.duplicateCheckRule('dry_eqp_type', 'name', model, schema)[0] }]
+		},
+	},
+	// TODO 涓婚敭闅愯棌瀛楁锛岀洰鍓嶅啓姝讳负ID
+	{
+		label: '',
+		field: 'id',
+		component: 'Input',
+		show: false,
+	},
+]
 
 /**
  * 娴佺▼琛ㄥ崟璋冪敤杩欎釜鏂规硶鑾峰彇formSchema
  * @param param
  */
 export function getBpmFormSchema(_formData): FormSchema[] {
-  // 榛樿鍜屽師濮嬭〃鍗曚繚鎸佷竴鑷� 濡傛灉娴佺▼涓厤缃簡鏉冮檺鏁版嵁锛岃繖閲岄渶瑕佸崟鐙鐞唂ormSchema
-  return formSchema;
+	// 榛樿鍜屽師濮嬭〃鍗曚繚鎸佷竴鑷� 濡傛灉娴佺▼涓厤缃簡鏉冮檺鏁版嵁锛岃繖閲岄渶瑕佸崟鐙鐞唂ormSchema
+	return formSchema
 }
diff --git a/src/views/dry/dataDefine/DryOrder.data.ts b/src/views/dry/dataDefine/DryOrder.data.ts
index 959d62c..e11c75c 100644
--- a/src/views/dry/dataDefine/DryOrder.data.ts
+++ b/src/views/dry/dataDefine/DryOrder.data.ts
@@ -23,6 +23,16 @@
 		dataIndex: 'herbId_dictText',
 	},
 	{
+		title: '璁惧',
+		align: 'center',
+		dataIndex: 'equId_dictText',
+	},
+	{
+		title: '杞﹂棿',
+		align: 'center',
+		dataIndex: 'shopId_dictText',
+	},
+	{
 		title: '鍒濆鍚按鐜�',
 		align: 'center',
 		dataIndex: 'initial',
@@ -87,16 +97,7 @@
 		align: 'center',
 		dataIndex: 'remain',
 	},
-	{
-		title: '璁惧',
-		align: 'center',
-		dataIndex: 'equId_dictText',
-	},
-	{
-		title: '杞﹂棿',
-		align: 'center',
-		dataIndex: 'shopId_dictText',
-	},
+
 	{
 		title: '宸ュ崟鐘舵��',
 		align: 'center',
@@ -153,71 +154,71 @@
 			dictCode: 'dry_herb,name,id,tenant_id=' + getTenantId(),
 		},
 	},
-	{
-		label: '鍒濆鍚按鐜�',
-		field: 'initial',
-		component: 'InputNumber',
-	},
-	{
-		label: '鐩爣鍚按鐜�',
-		field: 'target',
-		component: 'InputNumber',
-	},
+	// {
+	// 	label: '鍒濆鍚按鐜�',
+	// 	field: 'initial',
+	// 	component: 'InputNumber',
+	// },
+	// {
+	// 	label: '鐩爣鍚按鐜�',
+	// 	field: 'target',
+	// 	component: 'InputNumber',
+	// },
 	{
 		label: '鎶曟枡閲�',
 		field: 'feed',
 		component: 'InputNumber',
 	},
-	{
-		label: '鍘熷閲嶉噺',
-		field: 'originWeight',
-		component: 'InputNumber',
-	},
-	{
-		label: '棰勮骞茬嚗鏃堕棿',
-		field: 'et',
-		component: 'InputNumber',
-	},
-	{
-		label: '骞叉枡閲嶉噺',
-		field: 'yield',
-		component: 'InputNumber',
-	},
-	{
-		label: '骞茬嚗鏃堕棿',
-		field: 'dryTime',
-		component: 'InputNumber',
-	},
-	{
-		label: '鐑娓╁害',
-		field: 'windTemp',
-		component: 'InputNumber',
-	},
-	{
-		label: '鐜娓╁害',
-		field: 'envTemp',
-		component: 'InputNumber',
-	},
-	{
-		label: '鐜婀垮害',
-		field: 'envHum',
-		component: 'InputNumber',
-	},
-	{
-		label: '鑽℃枡寤舵椂锛坢s锛�',
-		field: 'delay',
-		component: 'InputNumber',
-	},
-	{
-		label: '缈绘枡娆℃暟',
-		field: 'turn',
-		component: 'InputNumber',
-	},
-	{
-		label: '棰勮鍓╀綑鏃堕棿',
-		field: 'remain',
-		component: 'InputNumber',
-	},
+	// {
+	// 	label: '鍘熷閲嶉噺',
+	// 	field: 'originWeight',
+	// 	component: 'InputNumber',
+	// },
+	// {
+	// 	label: '棰勮骞茬嚗鏃堕棿',
+	// 	field: 'et',
+	// 	component: 'InputNumber',
+	// },
+	// {
+	// 	label: '骞叉枡閲嶉噺',
+	// 	field: 'yield',
+	// 	component: 'InputNumber',
+	// },
+	// {
+	// 	label: '骞茬嚗鏃堕棿',
+	// 	field: 'dryTime',
+	// 	component: 'InputNumber',
+	// },
+	// {
+	// 	label: '鐑娓╁害',
+	// 	field: 'windTemp',
+	// 	component: 'InputNumber',
+	// },
+	// {
+	// 	label: '鐜娓╁害',
+	// 	field: 'envTemp',
+	// 	component: 'InputNumber',
+	// },
+	// {
+	// 	label: '鐜婀垮害',
+	// 	field: 'envHum',
+	// 	component: 'InputNumber',
+	// },
+	// {
+	// 	label: '鑽℃枡寤舵椂锛坢s锛�',
+	// 	field: 'delay',
+	// 	component: 'InputNumber',
+	// },
+	// {
+	// 	label: '缈绘枡娆℃暟',
+	// 	field: 'turn',
+	// 	component: 'InputNumber',
+	// },
+	// {
+	// 	label: '棰勮鍓╀綑鏃堕棿',
+	// 	field: 'remain',
+	// 	component: 'InputNumber',
+	// },
 	{
 		label: '璁惧',
 		field: 'equId',
@@ -234,19 +235,19 @@
 			dictCode: 'dry_shop,name,id,tenant_id=' + getTenantId(),
 		},
 	},
-	{
-		label: '宸ュ崟鐘舵��',
-		field: 'orderStatus',
-		component: 'InputNumber',
-	},
-	{
-		label: '鎿嶄綔浜�',
-		field: 'operator',
-		component: 'JDictSelectTag',
-		componentProps: {
-			dictCode: 'sys_user,realname,id,tenant_id=' + getTenantId(),
-		},
-	},
+	// {
+	// 	label: '宸ュ崟鐘舵��',
+	// 	field: 'orderStatus',
+	// 	component: 'InputNumber',
+	// },
+	// {
+	// 	label: '鎿嶄綔浜�',
+	// 	field: 'operator',
+	// 	component: 'JDictSelectTag',
+	// 	componentProps: {
+	// 		dictCode: 'sys_user,realname,id,tenant_id=' + getTenantId(),
+	// 	},
+	// },
 	// TODO 涓婚敭闅愯棌瀛楁锛岀洰鍓嶅啓姝讳负ID
 	{
 		label: '',
diff --git a/src/views/dry/monitor/Eqp.vue b/src/views/dry/monitor/Eqp.vue
index ff09a46..461bb0e 100644
--- a/src/views/dry/monitor/Eqp.vue
+++ b/src/views/dry/monitor/Eqp.vue
@@ -1,14 +1,12 @@
 <template>
-	<div  class="eqpBox">
+	<div class="eqpBox">
 		<div class="eqpRow">
-			<div class="eqpImage" >
-				
+			<div class="eqpImage">
 				<div class="leftEqp">
-					<div style="width: 300px;  ">
-					<div class="herbInfo">
-						
+					<div style="width: 300px">
+						<div class="herbInfo">
 							<dv-border-box7 class="curEqp">
-								<div class="eqpName"  @click="changeEqp">
+								<div class="eqpName" @click="changeEqp">
 									<div class="mainInfo" style="font-size: 26px">{{ eqp?.name }}</div>
 									<div class="subhead">{{ eqp?.type }}</div>
 									<!-- <dv-decoration-1 style="width:150px;height:60px; margin-left: 20px;" /> -->
@@ -16,28 +14,28 @@
 								<div class="eqpName">鍨嬪彿锛歿{ eqp.type }}</div> -->
 								</div>
 							</dv-border-box7>
-							<dv-border-box7 class="curHerb" :style="{'background-image': 'url(/src/assets/images/dry/yaocai/'+realData?.herbImage+')'}">
+							<dv-border-box7 class="curHerb" :style="{ 'background-image': 'url(/src/assets/images/dry/yaocai/' + realData?.herbImage + ')' }">
 								<div class="eqpName" style="margin-left: 100px">
 									<div class="mainInfo" style="font-size: 26px">{{ realData?.herbName }}</div>
 									<div class="subhead">骞茬嚗閰嶆柟</div>
 								</div>
 								<div class="formula">
 									<div class="formulaItem">
-										<Icon  style="color: powderblue"  icon="icon-park-twotone:box" :size="35" />
+										<Icon style="color: powderblue" icon="icon-park-twotone:box" :size="35" />
 										<div>
 											<div class="mainInfo2">{{ realData?.feed }}绛�</div>
 											<div class="subhead2">鎶曟枡閲�</div>
 										</div>
 									</div>
 									<div class="formulaItem">
-										<Icon  style="color: red"  icon="bx:wind" :size="35" />
+										<Icon style="color: red" icon="bx:wind" :size="35" />
 										<div>
 											<div class="mainInfo2">{{ realData?.windTemp }}掳C</div>
 											<div class="subhead2">鐑</div>
 										</div>
 									</div>
 									<div class="formulaItem">
-										<Icon  style="color: green"  icon="tabler:target-arrow" :size="35" />
+										<Icon style="color: green" icon="tabler:target-arrow" :size="35" />
 										<div>
 											<div class="mainInfo2">{{ realData?.target }}%</div>
 											<div class="subhead2">鐩爣</div>
@@ -54,7 +52,7 @@
 								<div id="fanFreq" style="width: 220px; height: 200px"></div>
 							</div>
 						</dv-border-box7> -->
-						<dv-border-box7 class="infoChart" style="margin-left: 0px;">
+						<dv-border-box7 class="infoChart" style="margin-left: 0px">
 							<div class="chartTittle">鍚按鐜�</div>
 							<div class="outDiv" style="padding-top: 20px">
 								<div class="leftData">
@@ -81,72 +79,74 @@
 							</div>
 							<div class="subhead2" style="margin-top: -37px; padding-left: 172px">瀹炴椂鍚按鐜�</div>
 						</dv-border-box7>
-				</div>
-					<dv-border-box7  class="leftTop">
-
-						<div class="leftTop0">
-						<div class="leftTop1">
-							<Icon icon="emojione:hourglass-with-flowing-sand" :size="50" />
-							<div>
-								<div class="mainInfo">{{ realData?.totalRemain | 0 }}min</div>
-								<div class="subhead">鍓╀綑鏃堕棿</div>
-							</div>
-						</div>
-						<div class="leftTop1">
-							<Icon icon="bi:fan" :size="50" />
-							<div>
-								<div class="mainInfo">{{ realData.trendVo?.fanFrequency | 0 }} Hz</div>
-								<div class="subhead">椋庢満棰戠巼</div>
-							</div>
-						</div>
-						<div class="leftTop3" :style="{ 'background-image': 'url(/src/assets/images/dry/' + statusGif + '.gif)' }"></div>
-						<div class="outDiv eqpStatus">
-							<div
-								style="
-									font-size: 28px;
-									margin-top: 60px;
-									color: white;
-									background-color: #1595ea;
-									height: 60px;
-									width: 180px;
-									line-height: 60px;
-									text-align: center;
-									border-radius: 5px;
-									font-weight: bold;
-								"
-							>
-								{{ statusTxt }}
-							</div>
-							<div v-if="realData?.isError"
-								class="eqpInfoText blingbling"
-								style="
-									position: absolute;
-
-									max-height: 130px;
-									max-width: 360px;
-									border-radius: 10px;
-									background-color: #ce0000;
-									color: white;
-									padding: 10px;
-								"
-							>
-								<div class="outDiv">
-									<div><Icon icon="bx:error" :size="30" /> </div>
-									<div><span> {{realData?.errorMsg}}</span></div>
-								</div>
-							</div>
-						</div>
 					</div>
-					</dv-border-box7>
-						
-					<dv-border-box7 class="infoChart" style="margin-left: 0px; margin-right: 10px;">
-							<div class="chartTittle">椋庣娓╁害</div>
-							<div class="outDiv">
-								<div id="bellowsTemp" style="width: 220px; height: 200px">
-									<Icon icon="emojione:hourglass-with-flowing-sand" :size="50" />
+					<dv-border-box7 class="leftTop">
+						<div class="leftTop0">
+							<div class="leftTop1">
+								<Icon icon="emojione:hourglass-with-flowing-sand" :size="50" />
+								<div>
+									<div class="mainInfo">{{ realData?.totalRemain | 0 }}min</div>
+									<div class="subhead">鍓╀綑鏃堕棿</div>
 								</div>
 							</div>
-						</dv-border-box7>
+							<div class="leftTop1">
+								<Icon icon="bi:fan" :size="50" />
+								<div>
+									<div class="mainInfo">{{ realData.trendVo?.fanFrequency | 0 }} Hz</div>
+									<div class="subhead">椋庢満棰戠巼</div>
+								</div>
+							</div>
+							<div class="leftTop3" :style="{ 'background-image': 'url(/src/assets/images/dry/' + statusGif + '.gif)' }"></div>
+							<div class="outDiv eqpStatus">
+								<div
+									style="
+										font-size: 28px;
+										margin-top: 60px;
+										color: white;
+										background-color: #1595ea;
+										height: 60px;
+										width: 180px;
+										line-height: 60px;
+										text-align: center;
+										border-radius: 5px;
+										font-weight: bold;
+									"
+								>
+									{{ statusTxt }}
+								</div>
+								<div
+									v-if="realData?.isError"
+									class="eqpInfoText blingbling"
+									style="
+										position: absolute;
+
+										max-height: 130px;
+										max-width: 360px;
+										border-radius: 10px;
+										background-color: #ce0000;
+										color: white;
+										padding: 10px;
+									"
+								>
+									<div class="outDiv">
+										<div><Icon icon="bx:error" :size="30" /> </div>
+										<div
+											><span> {{ realData?.errorMsg }}</span></div
+										>
+									</div>
+								</div>
+							</div>
+						</div>
+					</dv-border-box7>
+
+					<dv-border-box7 class="infoChart" style="margin-left: 0px; margin-right: 10px">
+						<div class="chartTittle">椋庣娓╁害</div>
+						<div class="outDiv">
+							<div id="bellowsTemp" style="width: 220px; height: 200px">
+								<Icon icon="emojione:hourglass-with-flowing-sand" :size="50" />
+							</div>
+						</div>
+					</dv-border-box7>
 					<dv-border-box7 class="leftMid">
 						<div class="chartTittle">瀹炴椂杩涘害</div>
 						<div id="efficiencyLine" style="width: 780px; height: 130px; margin-top: -10px"></div>
@@ -156,7 +156,7 @@
 						</div>
 						<div id="progressBar" style="width: 780px; height: 80px"></div>
 					</dv-border-box7>
-			
+
 					<!-- <div class="outDiv">
 						<div style="height: 100px; width: 400px">
 							<Progress
@@ -177,7 +177,6 @@
 				</div>
 				<div class="rightInfo">
 					<div class="rightTop">
-						
 						<dv-border-box7 class="tempMoisChart">
 							<div :id="'moisChart'" style="width: 550px; height: 320px"></div>
 						</dv-border-box7>
@@ -241,7 +240,6 @@
 							</div>
 						</dv-border-box7>
 
-						
 						<dv-border-box7 class="infoChart">
 							<div class="chartTittle"
 								>钂告苯娑堣��(m鲁/kg)
@@ -254,14 +252,17 @@
 								<div class="leftData">
 									<div class="center" style="height: 100%">
 										<div class="centerText">
-											<div class="mainInfo3"><span>{{realData?.steam}}</span>m鲁 </div>
+											<div class="mainInfo3"
+												><span>{{ realData?.steam }}</span
+												>m鲁
+											</div>
 											<div class="subhead2">钂告苯鐢ㄩ噺</div>
 										</div>
 									</div>
 								</div>
 								<div class="rightChart center">
 									<div class="center compareBar">
-										<div class="barTop">{{standard.zhengqi}}</div>
+										<div class="barTop">{{ standard.zhengqi }}</div>
 										<div class="barBack">
 											<div class="barDiv" :style="{ height: realData?.zqsHeight }"></div>
 										</div>
@@ -272,10 +273,14 @@
 										</div>
 									</div>
 									<div class="center compareBar">
-										<div class="barTop">{{realData?.zhengqi | 0 }}</div>
+										<div class="barTop">{{ realData?.zhengqi | 0 }}</div>
 										<div class="barBack">
-											<div class="barDiv" :class="{ good: realData?.zqgood, bad: realData?.zqbad }"
-												:style="[realData?.zqrHeight && { height: realData?.zqrHeight }]"> </div>
+											<div
+												class="barDiv"
+												:class="{ good: realData?.zqgood, bad: realData?.zqbad }"
+												:style="[realData?.zqrHeight && { height: realData?.zqrHeight }]"
+											>
+											</div>
 										</div>
 										<div style="line-height: 18px">
 											瀹炴椂
@@ -286,7 +291,7 @@
 								</div>
 							</div>
 						</dv-border-box7>
-						<dv-border-box7 class="infoChart" >
+						<dv-border-box7 class="infoChart">
 							<div class="chartTittle">鏁堢巼瀵规瘮</div>
 							<div class="outDiv" style="padding-top: 10px">
 								<div id="compare" style="width: 300px; height: 200px"></div>
@@ -304,14 +309,17 @@
 								<div class="leftData">
 									<div class="center" style="height: 100%">
 										<div class="centerText">
-											<div class="mainInfo3"><span>{{realData?.watt}}</span>kWh </div>
+											<div class="mainInfo3"
+												><span>{{ realData?.watt }}</span
+												>kWh
+											</div>
 											<div class="subhead2">鐢佃兘鐢ㄩ噺</div>
 										</div>
 									</div>
 								</div>
 								<div class="rightChart center">
 									<div class="center compareBar">
-										<div class="barTop">{{standard.dian}}</div>
+										<div class="barTop">{{ standard.dian }}</div>
 										<div class="barBack">
 											<div class="barDiv" :style="{ height: realData?.dnsHeight }"></div>
 										</div>
@@ -322,10 +330,13 @@
 										</div>
 									</div>
 									<div class="center compareBar">
-										<div class="barTop">{{realData?.dian | 0}}</div>
+										<div class="barTop">{{ realData?.dian | 0 }}</div>
 										<div class="barBack">
-											<div class="barDiv" :class="{ good: realData?.dngood, bad: realData?.dnbad }"
-												:style="[realData?.dnrHeight && { height: realData?.dnrHeight }]"></div>
+											<div
+												class="barDiv"
+												:class="{ good: realData?.dngood, bad: realData?.dnbad }"
+												:style="[realData?.dnrHeight && { height: realData?.dnrHeight }]"
+											></div>
 										</div>
 										<div style="line-height: 18px">
 											瀹炴椂
@@ -344,7 +355,7 @@
 </template>
 
 <script setup lang="ts">
-  import { useFullscreen } from '@vueuse/core';
+	import { useFullscreen } from '@vueuse/core'
 	import { BorderBox13 as DvBorderBox7 } from '@kjgl77/datav-vue3'
 	import { router } from '/@/router'
 	import { onMounted, ref, onUnmounted } from 'vue'
@@ -356,10 +367,10 @@
 	import { queryById } from '../api/DryEquipment.api'
 	import { dryEquipment } from '../dataDefine/DryEquipment.data'
 	import { useUserStore } from '/@/store/modules/user'
-	const domRef = ref<Nullable<HTMLElement>>(null);
-		const { enter, toggle, exit, isFullscreen } = useFullscreen();
+	const domRef = ref<Nullable<HTMLElement>>(null)
+	const { enter, toggle, exit, isFullscreen } = useFullscreen()
 
-const { toggle: toggleDom } = useFullscreen(domRef);
+	const { toggle: toggleDom } = useFullscreen(domRef)
 	const Timer = ref()
 	const marks = ref<Record<number, any>>({
 		0: '0掳C',
@@ -464,7 +475,7 @@
 		99: '',
 		100: '100掳C',
 	})
-	
+
 	const eqp = ref({} as dryEquipment)
 	const userStore = useUserStore()
 	const realData = ref({})
@@ -513,7 +524,7 @@
 				text: '鍚按鐜�/娓╁害瓒嬪娍',
 				textStyle: {
 					//color: '#fff',
-					fontSize: 15
+					fontSize: 15,
 				},
 			},
 			tooltip: {
@@ -590,15 +601,15 @@
 					areaStyle: {
 						opacity: 0.2,
 						color: new echarts.graphic.LinearGradient(0, 0, 0, 1, [
-						{
-							offset: 0,
-							color: 'rgb(128, 255, 165)'
-						},
-						{
-							offset: 1,
-							color: 'rgb(1, 191, 236)'
-						}
-						])
+							{
+								offset: 0,
+								color: 'rgb(128, 255, 165)',
+							},
+							{
+								offset: 1,
+								color: 'rgb(1, 191, 236)',
+							},
+						]),
 					},
 				},
 				{
@@ -616,15 +627,15 @@
 					areaStyle: {
 						opacity: 0.2,
 						color: new echarts.graphic.LinearGradient(0, 0, 0, 1, [
-						{
-							offset: 0,
-							color: 'rgb(255, 0, 135)'
-						},
-						{
-							offset: 1,
-							color: 'rgb(135, 0, 157)'
-						}
-						])
+							{
+								offset: 0,
+								color: 'rgb(255, 0, 135)',
+							},
+							{
+								offset: 1,
+								color: 'rgb(135, 0, 157)',
+							},
+						]),
 					},
 					// markLine: {
 					// 	data: [
@@ -659,7 +670,7 @@
 					amplitude: 3,
 					animationDuration: 5,
 					//animationDurationUpdate: 0,
-					data: [0.56,0.44,0.32],
+					data: [0.56, 0.44, 0.32],
 					shape:
 						'path://M828.817,706.209C828.817,881.725,686.98,1024,512,1024c-174.98,0-316.817-142.275-316.817-317.791C195.183,530.74,512,0,512,0s316.817,530.74,316.817,706.209z',
 					outline: {
@@ -1073,7 +1084,6 @@
 			},
 			legend: {
 				right: 60,
-				
 			},
 			xAxis: {
 				show: false,
@@ -1123,18 +1133,17 @@
 						],
 					},
 					markLine: {
-									symbol: 'none',
-									data: [
-										{
-											name: '棰濆畾',
-											yAxis: standard.value.xiaolv,
-										},
-									],
-									label: {
-										formatter: '{b}\n{c}',
-									
-									},
-								},
+						symbol: 'none',
+						data: [
+							{
+								name: '棰濆畾',
+								yAxis: standard.value.xiaolv,
+							},
+						],
+						label: {
+							formatter: '{b}\n{c}',
+						},
+					},
 					// markLine: {
 					// 	data: [{ type: 'average', name: 'Avg' }],
 					// },
@@ -1143,50 +1152,46 @@
 		}
 
 		const compareOption = {
-					
-					tooltip: {
-						trigger: 'axis',
-					
+			tooltip: {
+				trigger: 'axis',
+			},
+			grid: {
+				top: '6%',
+				left: '10%',
+				right: '10%',
+				bottom: '3%',
+				containLabel: true,
+			},
+			xAxis: {
+				show: false,
+				type: 'value',
+			},
+			yAxis: {
+				axisLine: {
+					show: false,
+				},
+				axisTick: {
+					show: false,
+				},
+				type: 'category',
+				data: ['1#', '2#', '3#', '4#', '5#', '6#'],
+			},
+			series: [
+				{
+					name: '2011',
+					type: 'bar',
+					barWidth: 10,
+					data: [190, 89, 34, 70, 44, 30],
+					label: {
+						show: true,
+						position: 'right',
+						valueAnimation: true,
+
+						color: '#fff',
 					},
-					grid: {
-						top: '6%',
-						left: '10%',
-						right: '10%',
-						bottom: '3%',
-						containLabel: true
-					},
-					xAxis: {
-						show: false,
-						type: 'value',
-					
-					},
-					yAxis: {
-						axisLine: {
-							show:false,
-						},
-						axisTick: {
-							show: false,
-						},
-						type: 'category',
-						data: ['1#', '2#', '3#', '4#', '5#', '6#']
-					},
-					series: [
-						{
-							name: '2011',
-							type: 'bar',
-							barWidth: 10,
-							data: [190, 89, 34, 70, 44, 30],
-							label: {
-								show: true,
-								position: 'right',
-								valueAnimation: true,
-								
-								color: '#fff' 
-							}
-						},
-					]
-				}
-		
+				},
+			],
+		}
 
 		option && moisChart.setOption(option)
 		waterOption && waterChart.setOption(waterOption)
@@ -1198,7 +1203,6 @@
 		compareOption && compareChart.setOption(compareOption)
 	}
 
-
 	function queryEqp() {
 		queryById({ id: router.currentRoute.value.params.id }).then((res) => {
 			// console.log(`output->res`, res)
@@ -1208,29 +1212,26 @@
 		})
 	}
 
-
-	var shangliaoFlag = false;
-	var statusGif = 'tmrefeng2';
+	var shangliaoFlag = false
+	var statusGif = 'tmrefeng2'
 	var statusTxt = '姝e湪骞茬嚗'
 
 	function chaiwangban() {
 		statusGif = 'chaiwangban-1'
-		setTimeout(shangliao,7000)
-					
+		setTimeout(shangliao, 7000)
 	}
 
 	function shangliao() {
-		statusGif = "shangliao-N"
-		setTimeout(()=>{
-			statusGif = "zhuangwangban"
-			setTimeout(()=>{
-				statusGif = "guanmen1"
-				setTimeout(()=>{
+		statusGif = 'shangliao-N'
+		setTimeout(() => {
+			statusGif = 'zhuangwangban'
+			setTimeout(() => {
+				statusGif = 'guanmen1'
+				setTimeout(() => {
 					shangliaoFlag = false
-				},4000)
-				
-			},5000)
-		},13000)
+				}, 4000)
+			}, 5000)
+		}, 13000)
 	}
 
 	function queryRealTime() {
@@ -1238,9 +1239,8 @@
 		let eqpCode = eqp.value.code
 		let queryRealTimeUrl = '/dry/real/getRealTimeData'
 		defHttp.get({ url: queryRealTimeUrl, params: { tenantid: tenantId, machineid: eqpCode } }).then((res) => {
-			
 			if (res && res.trendVo) {
-				console.log(`output->re11s`, res)
+				//console.log(`output->re11s`, res)
 				//	res.tempValue = [res.windTemp, 100]
 				//res.percent = ((res.dryTime / res.et) * 100).toFixed(2)
 				/**姘存淮鍥惧惈姘撮噺 */
@@ -1341,7 +1341,7 @@
 								],
 							})
 						}
-						res.totalRemain = res.remain - (res.dryTime - totalTime)>0?res.remain - (res.dryTime - totalTime):0
+						res.totalRemain = res.remain - (res.dryTime - totalTime) > 0 ? res.remain - (res.dryTime - totalTime) : 0
 						progressSeries.push({
 							name: '鍓╀綑',
 							type: 'bar',
@@ -1387,32 +1387,33 @@
 							},
 							yAxis: {
 								max: function (value) {
-									
-									console.log("max::",value);
-										if (value.max < standard.value.xiaolv + 3) {
-											return standard.value.xiaolv + 3
-										} else {
-											return value.max
-										}
-									},
-								
-								
-								
+									//	console.log("max::",value);
+									if (value.max < standard.value.xiaolv + 3) {
+										return standard.value.xiaolv + 3
+									} else {
+										return value.max
+									}
+								},
 							},
-							series: [{ data: ganZaoXiaoLv,
-								markLine: {
-								symbol: 'none',
-									data: [
-										{
-											name: '棰濆畾',
-											yAxis: standard.value.xiaolv,
+							series: [
+								{
+									data: ganZaoXiaoLv,
+									markLine: {
+										symbol: 'none',
+										data: [
+											{
+												name: '棰濆畾',
+												yAxis: standard.value.xiaolv,
+											},
+										],
+										label: {
+											formatter: '{b}\n{c}',
 										},
-									],
-									label: {
-										formatter: '{b}\n{c}',
-										
 									},
-							} }, { data: zhengQiXiaoHao }, { data: dianNengXiaoHao }],
+								},
+								{ data: zhengQiXiaoHao },
+								{ data: dianNengXiaoHao },
+							],
 						})
 					}
 
@@ -1460,12 +1461,12 @@
 				}
 
 				/**鏁堢巼瀵规瘮鍥� */
-				if( (res.originWeight - res.yield) <= 0) {
-					res.xiaolv =  standard.value.xiaolv + 6
+				if (res.originWeight - res.yield <= 0) {
+					res.xiaolv = standard.value.xiaolv + 6
 				} else {
 					res.xiaolv = (((res.originWeight - res.yield) / res.dryTime) * 60).toFixed(2)
 				}
-				
+
 				if (res.xiaolv > standard.value.xiaolv) {
 					res.xlgood = true
 					res.xlsHeight = (standard.value.xiaolv / res.xiaolv) * 100 + '%'
@@ -1479,15 +1480,13 @@
 					res.xlrHeight = (res.xiaolv / standard.value.xiaolv) * 100 + '%'
 				}
 
-
-				
 				/** 钂告苯娑堣�� */
-				if( (res.originWeight - res.yield) <= 0) {
-					res.zhengqi = standard.value.zhengqi -3
+				if (res.originWeight - res.yield <= 0) {
+					res.zhengqi = standard.value.zhengqi - 3
 				} else {
 					res.zhengqi = (res.steam / (res.originWeight - res.yield)).toFixed(1)
 				}
-				console.log('zhengqi:', res.zhengqi);
+				//console.log('zhengqi:', res.zhengqi);
 				if (res.zhengqi > standard.value.zhengqi) {
 					res.zqbad = true
 					res.zqsHeight = (standard.value.zhengqi / res.zhengqi) * 100 + '%'
@@ -1501,21 +1500,18 @@
 					res.zqrHeight = (res.zhengqi / standard.value.zhengqi) * 100 + '%'
 				}
 
-				
-				
 				/** 鐢佃兘娑堣�� */
-				if( (res.originWeight - res.yield) <= 0) {
-					res.dian = standard.value.dian -1.5
+				if (res.originWeight - res.yield <= 0) {
+					res.dian = standard.value.dian - 1.5
 				} else {
 					res.dian = (res.watt / (res.originWeight - res.yield)).toFixed(1)
 				}
-				
+
 				if (res.dian > standard.value.dian) {
 					res.dnbad = true
 					res.dnsHeight = (standard.value.dian / res.dian) * 100 + '%'
 					res.dnrHeight = '100%'
 				} else if (res.dian < standard.value.dMin) {
-					
 					res.dngood = true
 					res.dnsHeight = '100%'
 					res.dnrHeight = (res.dian / standard.value.dian) * 100 + '%'
@@ -1527,51 +1523,50 @@
 				/**鐘舵��/gif鍔ㄥ浘 */
 				if (!shangliaoFlag) {
 					if (res.orderStatus == 0) {
-					statusGif = 'zanting'
-					statusTxt = '鍑嗗'
-				} else if (res.orderStatus == 1) {
-					shangliaoFlag = true
-					statusGif = 'kaimen1'
-					statusTxt = '涓婃枡'
-					setTimeout(chaiwangban,4000)
-				} else if (res.orderStatus == 2) {
-					if(res.state_fan == 1) {
-						statusGif = 'tmrefeng2'
-						statusTxt = '姝e湪骞茬嚗'
-					}
+						statusGif = 'zanting'
+						statusTxt = '鍑嗗'
+					} else if (res.orderStatus == 1) {
+						shangliaoFlag = true
+						statusGif = 'kaimen1'
+						statusTxt = '涓婃枡'
+						setTimeout(chaiwangban, 4000)
+					} else if (res.orderStatus == 2) {
+						if (res.state_fan == 1) {
+							statusGif = 'tmrefeng2'
+							statusTxt = '姝e湪骞茬嚗'
+						}
 
-					if(res.state_roller == 4) {
-						statusGif = 'fanliao-N'
-						statusTxt = '姝e湪缈绘枡'
-					}
+						if (res.state_roller == 4) {
+							statusGif = 'fanliao-N'
+							statusTxt = '姝e湪缈绘枡'
+						}
 
-					if (res.state_roller == 5) {
-						statusGif = 'chuliao-N'
-						statusTxt = '姝e湪鍑烘枡'
+						if (res.state_roller == 5) {
+							statusGif = 'chuliao-N'
+							statusTxt = '姝e湪鍑烘枡'
+						}
+
+						if (res.state_windbox == 2 || res.state_windbox == 3) {
+							statusGif = 'fengxiangsheng-1'
+							statusTxt = '姝e湪骞茬嚗'
+						}
+					} else if (res.orderStatus == 3) {
+						statusGif = 'zanting'
+						statusTxt = '鏆傚仠'
+					} else if (res.orderStatus == 4) {
+						statusGif = 'zanting'
+						statusTxt = '骞茬嚗瀹屾垚'
 					}
-					
-					if (res.state_windbox == 2 || res.state_windbox == 3) {
-						statusGif = 'fengxiangsheng-1'
-						statusTxt = '姝e湪骞茬嚗'
-					}
-				} else if(res.orderStatus == 3) {
-					statusGif = 'zanting'
-					statusTxt = '鏆傚仠'
-				} else if(res.orderStatus == 4) {
-					statusGif = 'zanting'
-					statusTxt = '骞茬嚗瀹屾垚'
 				}
-				}
-				
 
 				if (compareChart) {
 					compareChart.setOption({
 						yAxis: {
-							data: res.compEqpNum
+							data: res.compEqpNum,
 						},
 						series: {
-							data: res.compEqpEffic
-						}
+							data: res.compEqpEffic,
+						},
 					})
 				}
 
@@ -1597,10 +1592,10 @@
 				res = {
 					mois: [],
 					gif: 'tmrefeng2',
-					herbImage: 'yaocai1.png'
+					herbImage: 'yaocai1.png',
 				}
 			}
-			console.log(`output->res`, res)
+			//console.log(`output->res`, res)
 			realData.value = res
 		})
 	}
@@ -1627,7 +1622,7 @@
 	.eqpImage {
 		height: 860px;
 		width: 1800px;
-		 /* background-image: url(/src/assets/images/dry/bg.png);
+		/* background-image: url(/src/assets/images/dry/bg.png);
 		background-repeat: no-repeat; */
 
 		/*background-position: 160px 280px; */
@@ -1643,7 +1638,7 @@
 		width: 1080px;
 		display: flex;
 		flex-wrap: wrap;
-		
+
 		/* background-color: white;
 		background-image: url(/src/assets/images/dry/shebei1.png);
 		background-repeat: no-repeat;
@@ -1665,7 +1660,6 @@
 		border-radius: 10px;
 		flex-wrap: wrap;
 		background-position: -78px 119px;
-
 	}
 	.leftTop0 {
 		height: 600px;
@@ -1676,7 +1670,6 @@
 		flex-wrap: wrap;
 	}
 	.leftMid {
-		
 		width: 780px;
 		height: 230px;
 		/* border: 1px solid; */
@@ -1735,7 +1728,6 @@
 		align-items: center;
 		font-size: 30px;
 		color: #727272;
-		
 	}
 	.leftTop2 {
 		width: 250px;
@@ -1878,7 +1870,7 @@
 		width: 590px;
 		height: 360px;
 		/* background: white; */
-		
+
 		padding: 20px;
 		border-radius: 10px;
 	}
diff --git a/src/views/dry/monitor/WorkShop.vue b/src/views/dry/monitor/WorkShop.vue
index a2ade85..b361f6a 100644
--- a/src/views/dry/monitor/WorkShop.vue
+++ b/src/views/dry/monitor/WorkShop.vue
@@ -85,8 +85,8 @@
 									:marks="marks"
 									vertical
 								/>
-								<div
-								class="info-text">鐑锛�<span >{{ realTime.get(item.id)?.windTemp | 0 }}</span> 掳C</div
+								<div class="info-text"
+									>鐑锛�<span>{{ realTime.get(item.id)?.windTemp | 0 }}</span> 掳C</div
 								>
 							</div>
 						</div>
@@ -450,13 +450,13 @@
 
 	.eqp-content {
 		height: 100%;
-    background-color: #fdfdfd;
-    box-shadow: 0px 0px 23px #72727278;
-    background-image: url(/src/assets/images/dry/ganzaoji-x.png);
-    background-repeat: no-repeat;
-    background-size: 60% 60%;
-    background-position: 105px 127px;
-    border-radius: 8px;
+		background-color: #fdfdfd;
+		box-shadow: 0px 0px 23px #72727278;
+		background-image: url(/src/assets/images/dry/ganzaoji-x.png);
+		background-repeat: no-repeat;
+		background-size: 60% 60%;
+		background-position: 105px 127px;
+		border-radius: 8px;
 	}
 
 	.chart {
@@ -477,13 +477,13 @@
 	}
 	.eqpStatus {
 		width: 170px;
-    background-position: -21px 19px;
-    background-image: url(/src/assets/images/dry/refeng2.gif);
-    background-size: 196px;
-    background-repeat: no-repeat;
-    display: inline-flex;
-    flex-direction: column-reverse;
-    padding: 15px;
+		background-position: -21px 19px;
+		background-image: url(/src/assets/images/dry/refeng2.gif);
+		background-size: 196px;
+		background-repeat: no-repeat;
+		display: inline-flex;
+		flex-direction: column-reverse;
+		padding: 15px;
 	}
 	.info {
 		display: flex;
@@ -517,13 +517,13 @@
 	}
 	.eqpName {
 		margin-top: 190px;
-    margin-left: 129px;
-    width: 95px;
-    /* font-size: 14px; */
-    font-weight: bold;
-    text-align: center;
-    background-color: white;
-    height: 22px;
+		margin-left: 58px;
+		width: 205px;
+		/* font-size: 14px; */
+		font-weight: bold;
+		text-align: center;
+		background-color: white;
+		height: 22px;
 	}
 
 	.tempChart {
diff --git a/src/views/sys/login/TokenLoginPage.vue b/src/views/sys/login/TokenLoginPage.vue
index 5dd6b81..c64aec6 100644
--- a/src/views/sys/login/TokenLoginPage.vue
+++ b/src/views/sys/login/TokenLoginPage.vue
@@ -5,7 +5,7 @@
             <div class="app-loading-dots">
                 <span class="dot dot-spin"><i></i><i></i><i></i><i></i></span>
             </div>
-            <div class="app-loading-title">鏅鸿兘涓崏鑽共鐕ョ郴缁�</div>
+            <div class="app-loading-title">鏅鸿兘涓崏鑽共鐕ラ厤鏂圭鐞嗙郴缁�</div>
         </div>
     </div>
 </template>
diff --git a/src/views/system/loginmini/MiniLogin.vue b/src/views/system/loginmini/MiniLogin.vue
index 9ffc1c6..d9b154c 100644
--- a/src/views/system/loginmini/MiniLogin.vue
+++ b/src/views/system/loginmini/MiniLogin.vue
@@ -18,7 +18,7 @@
 					<div class="aui-form">
 						<div class="aui-image">
 							<div>Lanpu</div>
-							<div>鍏版郸鏅鸿兘涓崏鑽共鐕ョ郴缁�</div>
+							<div>鏅鸿兘涓崏鑽共鐕ラ厤鏂圭鐞嗙郴缁�</div>
 							<!--              <div class="aui-image-text">-->
 							<!--                <img :src="adTextImg" />-->
 							<!--              </div>-->

--
Gitblit v1.9.3