From 40711118c33369ccad7ceda0fdd729bd9f117f65 Mon Sep 17 00:00:00 2001
From: loulijun2021 <1694218219@qq.com>
Date: 星期六, 22 十月 2022 14:03:11 +0800
Subject: [PATCH] 1.安灯响应静态实现

---
 pages/sbgl/wxsq.html |  347 +++++++++++++++++++++++++++++----------------------------
 1 files changed, 176 insertions(+), 171 deletions(-)

diff --git a/pages/sbgl/wxsq.html b/pages/sbgl/wxsq.html
index c13e245..cd92f36 100644
--- a/pages/sbgl/wxsq.html
+++ b/pages/sbgl/wxsq.html
@@ -21,8 +21,11 @@
 
 		<script type="text/javascript" src="../../js/global.js"></script>
 
-		<!-- <link rel="stylesheet" href="../../css/global.css" type="text/css" charset="utf-8" /> -->
-
+		<script src="../../js/jquery-3.4.1.min.js"></script>
+		<script src="../../js/jquery.signalR-2.2.2.min.js"></script>
+		<script src="../../js/Hubs.js"></script>
+		<script type="text/javascript" src="../../js/msg.js"></script>		
+		
 		<script type="text/javascript">
 			var topContent = [
 				// 	{
@@ -34,12 +37,13 @@
 				// 	eapmai_name: "鏍囧噯4",
 				// 	main_cycle: "M",
 				// }, 
-			];
-
-			let number = []; // 鍋氭壂鐮佸洖鏉ヨ鍥炬洿鏂扮敤
+			]
 
 
-			let dropdownValue = 'V1'; //涓嬫媺榛樿閫変腑鐨勫��
+			let falseArray = []; // 鍋氭壂鐮佸洖鏉ヨ鍥炬洿鏂扮敤
+
+
+			let dropdownValue = 'A'; //涓嬫媺榛樿閫変腑鐨勫��
 
 			// 鎵弿缁翠慨宸ヤ綅杩斿洖鏃舵墽琛屾柟娉�
 			function scaned(r) {
@@ -47,7 +51,7 @@
 					eqpcode: r
 				}).then(res => {
 					topContent = res.data
-					number.push({
+					falseArray.push({
 						id: '1'
 					})
 				})
@@ -60,109 +64,120 @@
 
 			<div class="body">
 
-				<van-nav-bar title="璁惧缁翠慨鐢宠" @click-right="onClickRight" left-arrow @click-left="onClickleft">
-					<template #right>
-						<van-popover style="" placement="bottom-end" :offset="[13,8]" v-model="showPopover"
-							trigger="click" :actions="actions" @select="onSelect">
-							<template #reference>
-								<van-icon name="bars" size='20' color='#fff' />
-							</template>
-						</van-popover>
-					</template>
-				</van-nav-bar>
+				<van-sticky>
+					<van-nav-bar title="璁惧缁翠慨鐢宠" @click-right="onClickRight" left-arrow @click-left="onClickleft">
+						<template #right>
+							<van-popover style="" placement="bottom-end" :offset="[13,8]" v-model="showPopover"
+								trigger="click" :actions="actions" @select="onSelect">
+								<template #reference>
+									<van-icon name="bars" size='20' color='#fff' />
+								</template>
+							</van-popover>
+						</template>
+					</van-nav-bar>
+				</van-sticky>
 
-
-				<div class="head">
-					<div class="head_block">
-						<div class="head_left">
-							<div class="head_bar"></div>
-							<div class="head_title">
-								鎵弿缁翠慨宸ヤ綅
-							</div>
-						</div>
-
-						<div style="margin-right: 10px;">
-							<van-icon name="scan" color='red' size='24' @click='topScanClick()' />
-						</div>
-
+				<div v-if="topContent.length===0">
+					<div class="sacnBody">
+						<div class="scanImg" @click="topScanClick()"></div>
+						<div class="scanText">鎵弿缁翠慨宸ヤ綅</div>
 					</div>
+				</div>
 
-					<div class="flex_between" style="">
-						<div id="contentLeft" style="width: 100%;margin-top: 10px;">
-							<div id="topContentID" v-for="item in topContent" :key="item.code"
-								style="margin-bottom: 10px;margin-left: 20px;">
-								<div style="display: flex;align-items: center;">
-									<div>
-										<div>宸ヤ綅缂栫爜锛�</div>
-										<div>宸ヤ綅鍚嶇О锛�</div>
-										<div>鐢熶骇杞﹂棿锛�</div>
-									</div>
-									<div>
-										<div>{{item.code}}</div>
-										<div>{{item.name}}</div>
-										<div>{{item.wksp_name}}</div>
-									</div>
+				<div v-else>
+					<div class="head">
+						<div class="head_block">
+							<div class="head_left">
+								<div class="head_bar"></div>
+								<div class="head_title">
+									鎵弿缁翠慨宸ヤ綅
 								</div>
+							</div>
 
+							<div style="margin-right: 10px;">
+								<van-icon name="scan" color='red' size='24' @click='topScanClick()' />
+							</div>
+
+						</div>
+
+						<div class="flex_between" style="">
+							<div id="contentLeft" style="width: 100%;margin-top: 10px;">
+								<div id="topContentID" v-for="item in topContent" :key="item.code"
+									style="margin-bottom: 10px;margin-left: 20px;">
+									<div style="display: flex;align-items: center;">
+										<div>
+											<div>宸ヤ綅缂栫爜锛�</div>
+											<div>宸ヤ綅鍚嶇О锛�</div>
+											<div>鐢熶骇杞﹂棿锛�</div>
+										</div>
+										<div>
+											<div>{{item.code}}</div>
+											<div>{{item.name}}</div>
+											<div>{{item.wksp_name}}</div>
+										</div>
+									</div>
+
+								</div>
+							</div>
+
+
+						</div>
+					</div>
+
+					<div class="head" :style="{marginTop:topContent.length===0?'100px':'0'}"
+						style="margin-bottom: 10px;padding-bottom: 10px;">
+						<div class="head_block">
+							<div class="head_left">
+								<div class="head_bar"></div>
+								<div class="head_title">
+									鏁呴殰鏉ユ簮
+								</div>
+							</div>
+							<div style="margin-right: 10px;">
+								<van-button @click="sheetFlag=true" type="info" style="width:100px;height: 30px;">
+									{{actionsSheet.find(item=>item.code===dropdownValue).name}}
+								</van-button>
+								<van-action-sheet v-model="sheetFlag" :actions="actionsSheet" @select="onSelectSheet" />
+							</div>
+						</div>
+
+					</div>
+
+					<div class="head" style="margin-bottom: 10px;padding-bottom: 10px;">
+						<div class="head_block" style="margin-bottom:10px;">
+							<div class="head_left">
+								<div class="head_bar"></div>
+								<div class="head_title">
+									鏁呴殰鎻忚堪
+								</div>
 							</div>
 						</div>
 
 
-					</div>
-				</div>
 
-				<div class="head" :style="{marginTop:topContent.length===0?'100px':'0'}"
-					style="margin-bottom: 10px;padding-bottom: 10px;">
-					<div class="head_block">
-						<div class="head_left">
-							<div class="head_bar"></div>
-							<div class="head_title">
-								鏁呴殰鏉ユ簮
-							</div>
+						<div style="display:flex;flex-direction: column;width: 96%;margin: auto;">
+							<van-field class="vanFieldInputArea" v-model="messageDescr" autosize rows="3"
+								type="textarea" placeholder="璇疯緭鍏�" />
 						</div>
-						<div style="margin-right: 10px;">
-							<van-button @click="sheetFlag=true" type="info" style="width:100px;height: 30px;">
-								{{dropdownValue==='V1'?'璁惧鐐规':'璁惧鐐规2'}}
-							</van-button>
-							<van-action-sheet v-model="sheetFlag" :actions="actionsSheet" @select="onSelectSheet" />
+						<div style="width: 96%;margin: auto;margin-top: 10px;">
+							<van-uploader :before-read="beforeRead" v-model="fileList" :after-read="afterRead"
+								:before-delete="beforeDelete" multiple :max-count="3" />
+						</div>
+
+					</div>
+
+					<div class="footer" style="min-height:50px;">
+						<div
+							style="position:fixed;bottom: 0;width: 96%;display: flex;justify-content: center;flex-direction: column;align-items: center">
+							<van-button class="vanButtonInfo" :disabled="messageDescr.trim().toString().length===0"
+								@click="submit" type="info" :loading="submitIsDisabled" loading-text='姝e湪鎻愪氦,璇风◢绛�...'>
+								纭鎻愪氦</van-button>
 						</div>
 					</div>
 
 				</div>
 
 
-				<div class="head" style="margin-bottom: 10px;padding-bottom: 10px;">
-					<div class="head_block" style="margin-bottom:10px;">
-						<div class="head_left">
-							<div class="head_bar"></div>
-							<div class="head_title">
-								鏁呴殰鎻忚堪
-							</div>
-						</div>
-					</div>
-
-
-
-					<div style="display:flex;flex-direction: column;width: 96%;margin: auto;">
-						<van-field v-model="messageDescr" rows="2" autosize type="textarea" placeholder="璇疯緭鍏�" />
-					</div>
-					<div style="width: 96%;margin: auto;margin-top: 10px;">
-						<van-uploader @oversize="onOversize" :before-read="beforeRead" v-model="fileList"
-							:after-read="afterRead" multiple :max-count="3" />
-					</div>
-
-				</div>
-
-
-
-				<div class="footer" style="min-height:50px;">
-					<div
-						style="position:fixed;bottom: 0;width: 96%;display: flex;justify-content: center;flex-direction: column;align-items: center">
-						<van-button class="vanButtonInfo" :disabled="messageDescr.trim().toString().length===0"
-							@click="submit" type="info">
-							纭鎻愪氦</van-button>
-					</div>
-				</div>
 
 			</div>
 
@@ -176,6 +191,7 @@
 			el: '#app',
 			data: function() {
 				return {
+					submitIsDisabled: false, //鎻愪氦鎸夐挳鏄惁鍙彁浜�
 					overlayShow: false,
 					showPopover: false,
 					actions: [{
@@ -189,26 +205,28 @@
 						text: '閫�鍑虹櫥褰�'
 					}],
 					actionsSheet: [{
-						code: 'V1',
+						code: 'A',
 						name: '璁惧鐐规'
 					}, {
-						code: 'V2',
-						name: '璁惧鐐规2'
-					}],
-					number2: number,
+						code: 'B',
+						name: '璁惧淇濆吇'
+					}, {
+						code: 'C',
+						name: '瀹夌伅鍛煎彨'
+					}, {
+						code: 'D',
+						name: '鎵嬪伐'
+					}, ],
+					falseArray2: falseArray,
 					messageDescr: '',
 					fileList: [],
 					sheetFlag: false,
-
 				}
 			},
 			watch: {
-				'number2.length': {
+				'falseArray2.length': {
 					handler(newValue, oldValue) {
-
-						console.log(111)
 						this.$forceUpdate()
-
 					},
 					deep: true,
 					immediate: true,
@@ -217,13 +235,50 @@
 			created() {},
 			mounted() {},
 			methods: {
-				onOversize(file) {
-					this.$toast("鏂囦欢澶у皬涓嶈兘瓒呰繃5MB");
+				//鎻愪氦
+				submit() {
+					const formData = new FormData()
+					formData.append("username", localStorage.getItem('username'))
+					formData.append("eqpcode", topContent[0].code)
+					formData.append("wkshpcode", topContent[0].wksp_code)
+					formData.append("faultsourcecode", dropdownValue)
+					formData.append("faultdescr", this.messageDescr)
+
+					this.fileList.forEach((item, index) => {
+						formData.append('files1', item.file)
+					})
+
+					// for (let [a, b] of formData.entries()) {
+					// 	console.log(a, b, 1)
+					// }
+					this.submitIsDisabled = true
+					post('AppDeviceManage/MaintainScanDeviceApplySave', formData).then(res => {
+						if (res.code === '200') {
+							topContent = []
+							this.messageDescr = ''
+							this.fileList = []
+							this.submitIsDisabled = false
+							this.$forceUpdate()
+						} else {
+							this.submitIsDisabled = false
+						}
+
+
+					})
+
+				},
+				// 鍥剧墖鍒犻櫎鍓�
+				beforeDelete(file) {
+					this.fileList.forEach((item, index) => {
+						if (file.file.lastModified === item.file.lastModified) {
+							this.fileList.splice(index, 1)
+						}
+					})
 				},
 				afterRead(file) {
 
 				},
-				//鏍¢獙鍥剧墖鐨勬牸寮�
+				//鍥剧墖涓婁紶鍓嶆牎楠�
 				beforeRead(file) {
 					if (!/(jpg|jpeg|png|JPG|PNG)/i.test(file.type)) {
 						this.$toast("璇蜂笂浼犳纭牸寮忕殑鍥剧墖");
@@ -233,17 +288,27 @@
 						this.$toast('鍥剧墖澶у皬涓嶈兘瓒呰繃 100MB');
 						return false;
 					}
+
+					let flag = true
+					this.fileList.forEach(item => {
+						if (file.lastModified === item.file.lastModified) {
+							vant.Notify({
+								type: 'danger',
+								message: '涓婁紶澶辫触锛屾鍥剧墖宸蹭笂浼狅紒'
+							});
+							flag = false
+						}
+					})
+					if (!flag) {
+						return false
+					}
+
 					return true;
 				},
 				onSelectSheet(val) {
 					dropdownValue = val.code
 					this.sheetFlag = false
 					this.$forceUpdate()
-
-				},
-				//鎻愪氦
-				submit() {
-
 				},
 				// 杈撳叆妗嗗け鐒﹁Е鍙戜簨浠�
 				vanFieldBlur() {
@@ -288,65 +353,5 @@
 	</script>
 	<style type="text/css">
 		@import url('../../css/global.css');
-
-		body {
-			background-color: #fff;
-		}
-
-		.body {
-			min-height: 600px;
-			background-color: grey;
-			margin-top: 0px;
-			background-color: #fff;
-			position: relative;
-		}
-
-		.van-nav-bar__content {
-			background-color: #2651d8;
-			height: 44px;
-		}
-
-		.van-nav-bar__title {
-			color: #fff;
-			letter-spacing: 2px;
-		}
-
-		.van-nav-bar__arrow {
-			color: #fff !important;
-		}
-
-		.createElementDiv {
-			display: flex;
-			justify-content: space-between;
-			align-items: center;
-			margin-bottom: 10px;
-			margin-left: 20px;
-		}
-
-		.vanFieldInput {
-			height: 36px;
-			line-height: 36px;
-			align-items: center;
-			/* width: 200px; */
-
-			padding: 0;
-			padding-left: 10px;
-			/* border-radius: 5px; */
-			margin: 5px 0;
-			/* background-color: #fff; */
-		}
-
-		.buttonSmall {
-			/* border-radius: 5px; */
-		}
-
-		.vanButtonInfo {
-			width: 100%;
-			letter-spacing: 2px;
-			height: 50px;
-			font-size: 18px;
-			/* margin-left: 0; */
-
-		}
 	</style>
 </html>

--
Gitblit v1.9.3