From 48e31778cba99836acaaccbb24c843cd3049b1da Mon Sep 17 00:00:00 2001
From: loulijun2021 <1694218219@qq.com>
Date: 星期五, 23 九月 2022 15:37:12 +0800
Subject: [PATCH] 1.设备保养开发完成

---
 unpackage/cache/wgt/H5EDA0853/pages/sbgl/dqby.html |  557 ++++++++++++++++++++++++++++++++++++++++++++++++++++++-
 1 files changed, 544 insertions(+), 13 deletions(-)

diff --git a/unpackage/cache/wgt/H5EDA0853/pages/sbgl/dqby.html b/unpackage/cache/wgt/H5EDA0853/pages/sbgl/dqby.html
index 220d658..e81d757 100644
--- a/unpackage/cache/wgt/H5EDA0853/pages/sbgl/dqby.html
+++ b/unpackage/cache/wgt/H5EDA0853/pages/sbgl/dqby.html
@@ -17,10 +17,164 @@
 		<script type="text/javascript" src="../../js/axios.min.js"></script>
 		<script type="text/javascript" src="../../js/http.js"></script>
 
+		<script type="text/javascript" src="../../js/common.js"></script>
 
-		<link rel="stylesheet" href="../css/global.css" type="text/css" charset="utf-8" />
+		<script type="text/javascript" src="../../js/global.js"></script>
 
+		<!-- <link rel="stylesheet" href="../../css/global.css" type="text/css" charset="utf-8" /> -->
+
+		<script type="text/javascript">
+			var topContent = [
+				// {
+				// 	code: 'SB001',
+				// 	name: '鐢垫睜缁勪竴绾�',
+				// 	wksp_code: "CJ002",
+				// 	wksp_name: '鐢垫睜杞﹂棿',
+				// 	eapmai_code: "bybz004",
+				// 	eapmai_name: "鏍囧噯4",
+				// 	main_cycle: "M",
+				// },
+				// {
+				// 	code: 'SB003',
+				// 	name: '榻胯疆绠辩粍涓�绾�',
+				// 	wksp_code: "CJ001",
+				// 	"wksp_name": "瑁呴厤杞﹂棿",
+				// 	"eapmai_code": "bybz003",
+				// 	"eapmai_name": "鏍囧噯鍚嶇О3",
+				// 	"main_cycle": "M"
+				// },
+			];
+
+			var centerContent = [
+				// {
+				// 	"seq": 1,
+				// 	"code": "bwbm004",
+				// 	"name": "閮ㄤ綅鍚嶇О4",
+				// 	"chk_desc": "",
+				// 	"isscan": "N",
+				// 	"main_cycle": "M"
+				// },
+				// {
+				// 	"seq": 2,
+				// 	"code": "bwbm002",
+				// 	"name": "閮ㄤ綅鍚嶇О2",
+				// 	"chk_desc": "",
+				// 	"isscan": "N",
+				// 	"main_cycle": "M"
+				// }
+			]
+
+
+			let radioValue = '' //鍗曢�夋閫変腑鐨勯」
+
+			let resultValue = '' //鐐规缁撴灉
+
+			let dropdownValue = 'M' //涓嬫媺榛樿閫変腑鐨勫��
+
+			let bwcode = '' //鐐瑰嚮閮ㄤ綅鐨勬壂鎻忔 鐐规椤圭洰code
+
+			let number = [] //淇濆吇椤圭洰鍐呭 鍋囨暟缁�   鍋氭壂鐮佸洖鏉ヨ鍥炬洿鏂扮敤
+
+			// 鎵弿淇濆吇宸ヤ綅杩斿洖鏃舵墽琛屾柟娉�
+			function scaned(r) {
+				let flag = false
+				topContent.forEach((item, index) => {
+					if (item.code === r) {
+						flag = true
+					}
+				})
+				if (flag) {
+					vant.Notify({
+						type: 'danger',
+						message: '姝ゆ潯鐮佸凡鎵弿锛屽凡鍦ㄥ垪琛ㄤ腑锛�'
+					});
+				} else {
+					get('AppDeviceManage/RepairScanDeviceQrCodeData', {
+						eqpcode: r
+					}).then(res => {
+						if (res.code === '200' && res.data[0].eqpchkmain_code !== null) {
+							topContent.unshift(res.data[0])
+							topContentClcik(topContent[0].code)
+						}
+
+						if (res.code === '200' && res.data[0].eqpchkmain_code === null) {
+							vant.Notify({
+								type: 'danger',
+								message: '褰撳墠璁惧鏈缃繚鍏绘爣鍑嗙粦瀹氱偣妫�椤圭洰锛�'
+							});
+						}
+					})
+				}
+
+
+
+			}
+
+			// 鎵弿淇濆吇椤圭洰鍐呭杩斿洖鏃舵墽琛屾柟娉�
+			function scaned2(r) {
+				if (bwcode === r) {
+					centerContent.forEach(item => {
+						if (item.code === bwcode) {
+							item.isDisabled = false
+							item.isOK = 'OK'
+
+
+							if (centerContent.every(r => r.isOK === 'OK')) {
+								resultValue = 'OK'
+							}
+							if (centerContent.some(r => r.isOK === 'NG')) {
+								resultValue = 'NG'
+							}
+							if (centerContent.some(r => r.isOK === '')) {
+								resultValue = ''
+							}
+
+
+							number.push({
+								id: '1'
+							})
+						}
+					})
+				} else {
+					vant.Notify({
+						type: 'danger',
+						message: '鎵弿鐨勪簩缁寸爜鏈笌姝ょ偣妫�椤圭洰鐩稿尮閰嶏紒'
+					});
+				}
+
+			}
+
+			function topContentClcik(code) {
+				radioValue = code
+				get('AppDeviceManage/RepairSelectScanDeviceQrCodeItem', {
+					eqpcode: code
+				}).then(res => {
+					if (res.code === '200') {
+
+						dropdownValue = topContent.find(r => r.code === topContent[0].code).main_cycle
+
+						centerContent = res.data
+						centerContent = JSON.parse(JSON.stringify(centerContent))
+						centerContent.forEach(item => {
+							item.isDisabled = item.isscan === 'Y'
+							item.inputValue = ''
+							item.isOK = item.isscan !== 'Y' ? 'OK' : ''
+						})
+						if (centerContent.every(r => r.isOK === 'OK')) {
+							resultValue = 'OK'
+						}
+						if (centerContent.some(r => r.isOK === 'NG')) {
+							resultValue = 'NG'
+						}
+						if (centerContent.some(r => r.isOK === '')) {
+							resultValue = ''
+						}
+					}
+				})
+			}
+		</script>
 	</head>
+	<!-- <body onload="loadNodes()"> -->
 	<body>
 		<div id="app">
 
@@ -28,7 +182,7 @@
 
 				<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" 
+						<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' />
@@ -37,8 +191,136 @@
 					</template>
 				</van-nav-bar>
 
-			</div>
 
+				<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;" @click="topContentClcik(item.code)">
+								<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 id="contentRight">
+							<van-radio-group v-model="radioValue" style="padding-right: 12px;">
+								<van-radio checked-color='red' icon-size="18px"
+									style="height: 63px;margin-bottom: 10px;" v-for="item in topContent"
+									:key="item.code" :name="item.code"></van-radio>
+							</van-radio-group>
+						</div>
+					</div>
+				</div>
+
+				<div class="head"
+					:style="{marginTop:topContent.length===0?'100px':'0',minHeight:topContent.length===0?'0':'220px'}"
+					style="margin-bottom: 130px;padding-bottom: 10px;overflow-y: ;"
+					:style="{marginTop:topContent.length===0?'78px':'0'}">
+					<div class="head_block" style="margin-bottom:10px;">
+						<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:20px;height: 30px;">
+								{{dropdownValue==='M'?'鏈�':'骞�'}}
+							</van-button>
+							<van-action-sheet v-model="sheetFlag" :actions="actionsSheet" @select="onSelectSheet" />
+						</div>
+					</div>
+
+
+					<div class="center_border flex_column" style="margin:  5px;" v-for="item in centerContent"
+						:key="item.code">
+						<div class="flex_between">
+							<div class="center_title">{{item.name}}</div>
+							<div style="margin-right: 10px;" v-if="item.isscan==='Y'">
+								<van-icon name="scan" color='red' size='24' @click='centerScanClick(item.code)' />
+							</div>
+						</div>
+						<div class="flex_between ">
+							<div class='flex_between' style="width: 90%;">
+								<van-field class="vanFieldInput" @blur="vanFieldBlur()" :disabled="item.isDisabled"
+									v-model="item.inputValue" placeholder="璇疯緭鍏�" />
+							</div>
+
+
+							<div class="" style="width: 40%;display: flex;justify-content: space-around;">
+								<van-button class="buttonSmall" :disabled='item.isDisabled' size="small"
+									:plain="item.isOK!=='OK'" @click="bwClick(item,'OK')" type="primary">姝e父</van-button>
+								<van-button class="buttonSmall" size="small" :plain="item.isOK!=='NG'"
+									@click="bwClick(item,'NG')" :disabled='item.isDisabled' type="danger">寮傚父
+								</van-button>
+							</div>
+						</div>
+						<div style="font-weight: lighter;font-size: 14px;padding-right: 5px">
+							{{item.chk_desc}}
+						</div>
+					</div>
+
+				</div>
+
+
+				<div style="">
+					<div class="footer">
+						<div class="head_block" style="margin-bottom: 20rpx;align-items: center;">
+							<div class="head_left">
+								<div class="head_bar"></div>
+								<div class="head_title">
+									淇濆吇缁撴灉
+								</div>
+							</div>
+							<div class="flex_center" style="width: 30%;display: flex;justify-content: space-around;">
+
+								<van-button class="buttonSmall"
+									:disabled="centerContent.some(item=>item.isDisabled===true)||centerContent.length===0"
+									size="small" :plain="resultValue!=='OK'" @click="resultClick('OK')" type="primary">
+									姝e父</van-button>
+								<van-button class="buttonSmall" size="small" :plain="resultValue!=='NG'"
+									:disabled="centerContent.some(item=>item.isDisabled===true)||centerContent.length===0"
+									@click="resultClick('NG')" type="danger">寮傚父</van-button>
+							</div>
+
+						</div>
+
+						<div
+							style="position:fixed;bottom: 0;width: 96%;display: flex;justify-content: center;flex-direction: column;align-items: center">
+							<van-button class="vanButtonInfo" :disabled="resultValue===''" @click="submit" type="info">
+								纭鎻愪氦</van-button>
+						</div>
+
+					</div>
+				</div>
+
+
+			</div>
 
 			<van-overlay :show="overlayShow" @click="overlayShow=false" />
 
@@ -62,40 +344,254 @@
 						icon: 'revoke',
 						text: '閫�鍑虹櫥褰�'
 					}],
+					actionsSheet: [{
+						code: 'Y',
+						name: '骞�'
+					}, {
+						code: 'M',
+						name: '鏈�'
+					}],
+					topContent2: topContent,
+					centerContent2: centerContent,
+					number2: number,
 
+					sheetFlag: false,
 				}
 			},
-			created() {
+			watch: {
+				'topContent2.length': {
+					handler(newValue, oldValue) {
+						if (newValue !== oldValue) {
+							// this.topContent2 = topContent
+							// this.$forceUpdate()
+							if (topContent[0] && topContent[0].code) {
+								this.$forceUpdate()
+								this.topContentClcik(topContent[0].code)
+							}
+
+						}
+					},
+					deep: true,
+					immediate: true,
+				},
+
+				// 'topContent.length': {
+				// 	handler(newValue, oldValue) {
+				// 		if (newValue !== oldValue) {
+				// 			this.$forceUpdate()
+				// 			// if (topContent[0]&&topContent[0].code) {
+				// 			// 	this.$forceUpdate()
+				// 			// 	this.topContentClcik(topContent[0].code)
+				// 			// }
+				// 		}
+				// 	},
+				// 	deep: true,
+				// 	immediate: true,
+				// },
+				'number2.length': {
+					handler(newValue, oldValue) {
+						this.$forceUpdate()
+					},
+					deep: true,
+					immediate: true,
+				},
+				// 'number.length': {
+				// 	handler(newValue, oldValue) {
+				// 		this.$forceUpdate()
+				// 	},
+				// 	deep: true,
+				// 	immediate: true,
+				// },
+			},
+			created() {},
+			mounted() {
+				// dropdownValue = topContent.find(r => r.code === 'SB001').main_cycle
 
 			},
-			mounted() {
-			
-			},
 			methods: {
-				onClickleft(){
+				onSelectSheet(val) {
+					dropdownValue = val
+					this.$forceUpdate()
+					this.sheetFlag = false
+				},
+				submit() {
+					let children = []
+					centerContent.forEach(item => {
+						children.push({
+							seq: item.seq,
+							itemcode: item.code,
+							cycle: item.main_cycle,
+							value: item.inputValue,
+							result: item.isOK
+						})
+					})
+					const data = {
+						code: radioValue,
+						name: topContent.find(r => r.code === radioValue).name,
+						standcode: topContent.find(r => r.code === radioValue).eapmai_code,
+						result: resultValue,
+						children: children
+					}
+
+					console.log(data, 1)
+
+					const params = {
+						username: localStorage.getItem('username'),
+						maintcyc: dropdownValue
+					}
+
+// vant.Notify(JSON.stringify(params))
+// vant.Toast(JSON.stringify(data))
+					post('AppDeviceManage/AppDeviceRepairSave' + formatParams(params), data)
+						.then(res => {
+							if (res.code === '200') {
+								vant.Notify({
+									type: 'primary',
+									message: '鎻愪氦鎴愬姛锛�'
+								})
+								topContent.forEach((r, i) => {
+									if (r.code === radioValue) {
+										topContent.splice(i, 1)
+									}
+								})
+								if (topContent.length >= 1) {
+									radioValue = topContent[0].code
+									this.topContentClcik(radioValue)
+								} else {
+									centerContent = []
+								}
+								resultValue = ''
+								this.$forceUpdate()
+							}
+						})
+
+				},
+				// 杈撳叆妗嗗け鐒﹁Е鍙戜簨浠�
+				vanFieldBlur() {
+					this.$forceUpdate()
+				},
+				topContentClcik(code) {
+					radioValue = code
+					this.$forceUpdate()
+					get('AppDeviceManage/RepairSelectScanDeviceQrCodeItem', {
+						eqpcode: code
+					}).then(res => {
+						if (res.code === '200') {
+
+							dropdownValue = topContent.find(r => r.code === code).main_cycle
+
+							centerContent = res.data
+							centerContent.forEach(item => {
+								item.isDisabled = item.isscan === 'Y'
+								item.inputValue = ''
+								item.isOK = item.isscan !== 'Y' ? 'OK' : ''
+							})
+							if (centerContent.every(r => r.isOK === 'OK')) {
+								resultValue = 'OK'
+							}
+							if (centerContent.some(r => r.isOK === 'NG')) {
+								resultValue = 'NG'
+							}
+							if (centerContent.some(r => r.isOK === '')) {
+								resultValue = ''
+							}
+
+							this.$forceUpdate()
+						}
+					})
+				},
+
+				resultClick(val) {
+					resultValue = val
+					this.$forceUpdate()
+				},
+
+				selected(id) {
+					alert(id)
+				},
+
+				// 鎵弿淇濆吇宸ヤ綅鎵弿
+				topScanClick() {
+					createWithoutTitle('../../components/barcode_scan.html', {
+						titleNView: {
+							type: 'float',
+							backgroundColor: 'rgba(215,75,40,0.3)',
+							titleText: '鎵竴鎵�',
+							titleColor: '#FFFFFF',
+							autoBackButton: true,
+							buttons: [{
+								fontSrc: '_www/helloh5.ttf',
+								text: '\ue302',
+								fontSize: '18px',
+								onclick: 'javascript:scanPicture()'
+							}]
+						}
+					});
+				},
+				// 淇濆吇椤圭洰鍐呭鎵弿
+				centerScanClick(code) {
+					bwcode = code
+					createWithoutTitle('../../components/barcode_scan2.html', {
+						titleNView: {
+							type: 'float',
+							backgroundColor: 'rgba(215,75,40,0.3)',
+							titleText: '鎵竴鎵�',
+							titleColor: '#FFFFFF',
+							autoBackButton: true,
+							buttons: [{
+								fontSrc: '_www/helloh5.ttf',
+								text: '\ue302',
+								fontSize: '18px',
+								onclick: 'javascript:scanPicture()'
+							}]
+						}
+					});
+				},
+
+				// 閮ㄤ綅姝e父 寮傚父鎸夐挳鐐瑰嚮
+				bwClick(item, val) {
+					item.isOK = val
+					if (centerContent.every(item => item.isOK !== '')) {
+						if (centerContent.every(item => item.isOK === 'OK')) {
+							resultValue = 'OK'
+						} else {
+							resultValue = 'NG'
+						}
+					}
+					this.$forceUpdate() //寮哄埗瑙嗗浘鏇存柊
+				},
+				onClickleft() {
 					history.back()
 				},
 				onClickRight() {
 					this.overlayShow = true
 				},
 				onSelect(action) {
-					vant.Toast(action.text);
+					if (action.text === '鎿嶄綔鎸囧') {
+						topPopoverClick('鎿嶄綔鎸囧')
+					} else if (action.text === '鎴愬搧杩芥函') {
+						topPopoverClick('鎴愬搧杩芥函')
+					} else if (action.text === '閫�鍑虹櫥褰�') {
+						topPopoverClick('閫�鍑虹櫥褰�')
+					}
 					this.overlayShow = false
 				},
 			}
 		})
 	</script>
 	<style type="text/css">
+		@import url('../../css/global.css');
+
 		body {
 			background-color: #fff;
 		}
 
 		.body {
-			height: 600px;
+			min-height: 600px;
 			background-color: grey;
 			margin-top: 0px;
 			background-color: #fff;
-			position: relative;			
+			position: relative;
 		}
 
 		.van-nav-bar__content {
@@ -107,8 +603,43 @@
 			color: #fff;
 			letter-spacing: 2px;
 		}
-		.van-nav-bar__arrow{
+
+		.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>
\ No newline at end of file
+</html>

--
Gitblit v1.9.3