From 2573c1c123a8464c312d27e380ac16d7e0ac2f11 Mon Sep 17 00:00:00 2001
From: XiaoRuby <3114200645@qq.com>
Date: 星期日, 24 九月 2023 23:22:16 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master'

---
 src/components/view/finishedProductInspectionUp.vue | 1039 +++++++++++++++++++++++++++++---------------------------
 1 files changed, 538 insertions(+), 501 deletions(-)

diff --git a/src/components/view/finishedProductInspectionUp.vue b/src/components/view/finishedProductInspectionUp.vue
index dd3495e..af64790 100644
--- a/src/components/view/finishedProductInspectionUp.vue
+++ b/src/components/view/finishedProductInspectionUp.vue
@@ -24,14 +24,14 @@
 						</el-col>
 						<el-col :span="7">
 							<el-form-item label="瀹㈡埛鍚嶇О锛�">
-								<el-input disabled style="width: 180px;" v-model="processInspectVo.prname" placeholder="璇疯緭鍏ュ鎴峰悕绉�"
-									autocomplete="off" />
+								<el-input disabled style="width: 180px;" v-model="processInspectVo.prname"
+									placeholder="璇疯緭鍏ュ鎴峰悕绉�" autocomplete="off" />
 							</el-form-item>
 						</el-col>
 						<el-col :span="7">
 							<el-form-item label="宸ョ▼鍚嶇О锛�">
-								<el-input disabled style="width: 180px;" v-model="processInspectVo.sname" placeholder="璇疯緭鍏ュ伐绋嬪悕绉�"
-									autocomplete="off" />
+								<el-input disabled style="width: 180px;" v-model="processInspectVo.sname"
+									placeholder="璇疯緭鍏ュ伐绋嬪悕绉�" autocomplete="off" />
 							</el-form-item>
 						</el-col>
 					</el-row>
@@ -54,8 +54,8 @@
 						</el-col>
 						<el-col :span="7">
 							<el-form-item label="浜у搧缂栫爜锛�">
-								<el-input disabled style="width: 180px;" v-model="processInspectVo.mcode" placeholder="璇疯緭鍏ヤ骇鍝佺紪鐮�"
-									autocomplete="off" />
+								<el-input disabled style="width: 180px;" v-model="processInspectVo.mcode"
+									placeholder="璇疯緭鍏ヤ骇鍝佺紪鐮�" autocomplete="off" />
 							</el-form-item>
 						</el-col>
 					</el-row>
@@ -68,14 +68,14 @@
 						</el-col>
 						<el-col :span="7">
 							<el-form-item label="鍗曚綅锛�">
-								<el-input disabled style="width: 180px;" v-model="processInspectVo.unit" placeholder="璇疯緭鍏ヤ骇鍝佺紪鐮�"
-									autocomplete="off" />
+								<el-input disabled style="width: 180px;" v-model="processInspectVo.unit"
+									placeholder="璇疯緭鍏ヤ骇鍝佺紪鐮�" autocomplete="off" />
 							</el-form-item>
 						</el-col>
 						<el-col :span="7">
 							<el-form-item label="鏁伴噺锛�">
-								<el-input disabled style="width: 180px;" v-model="processInspectVo.quantity" placeholder="璇疯緭鍏ユ暟閲�"
-									autocomplete="off" />
+								<el-input disabled style="width: 180px;" v-model="processInspectVo.quantity"
+									placeholder="璇疯緭鍏ユ暟閲�" autocomplete="off" />
 							</el-form-item>
 						</el-col>
 						<el-col :span="3" style="display: flex;justify-content: end;">
@@ -88,9 +88,11 @@
 		<div class="inspectionProject">
 			<el-row>
 				<el-col :span="12" class="inspectionProject_span">妫�楠岄」鐩�</el-col>
-				<el-col v-if="!isUpBtn" :span="12" class="inspectionProject_span" style="display: flex;justify-content: end;">
+				<el-col v-if="!isUpBtn" :span="12" class="inspectionProject_span"
+					style="display: flex;justify-content: end;">
 					<el-button size="mini" @click="clickDeleteInspectionColumn()">鍒犻櫎妫�楠屽�煎垪</el-button>
-					<el-button style="margin-right: 30px;" size="mini" @click="clickAddInspectionColumn()">娣诲姞妫�楠屽�煎垪</el-button>
+					<el-button style="margin-right: 30px;" size="mini"
+						@click="clickAddInspectionColumn()">娣诲姞妫�楠屽�煎垪</el-button>
 					<!-- <el-button
               size="mini"
               style="margin-right: 30px;"
@@ -120,8 +122,8 @@
 				<el-table-column prop="dname" label="璇曢獙璁惧" min-width="100">
 					<template slot-scope="scope">
 						<el-button type="text" @click="clickTableSelect(scope)">{{
-                            scope.row.dname == null ? "璇烽�夋嫨" : scope.row.dname
-                        }}</el-button>
+							scope.row.dname == null ? "璇烽�夋嫨" : scope.row.dname
+						}}</el-button>
 					</template>
 				</el-table-column>
 				<el-table-column label="缁撹">
@@ -164,11 +166,11 @@
 			<div class="div_device_dialog">
 				<el-input placeholder="杈撳叆鍏抽敭瀛楄繘琛岃繃婊�" v-model="filterText" style="margin-bottom: 6px;">
 				</el-input>
-				<el-tree class="filter-tree" :data="materialOptions" :props="defaultProps" default-expand-all highlight-current
-					@node-click="nodeClick" :filter-node-method="filterNode" ref="tree">
+				<el-tree class="filter-tree" :data="materialOptions" :props="defaultProps" default-expand-all
+					highlight-current @node-click="nodeClick" :filter-node-method="filterNode" ref="tree">
 					<div class="custom-tree-node" slot-scope="{ data }">
-						<span><i
-								:class="`node_i ${data.children ? 'el-icon-folder-opened' : 'el-icon-tickets'}`"></i>{{ data.name }}</span>
+						<span><i :class="`node_i ${data.children ? 'el-icon-folder-opened' : 'el-icon-tickets'}`"></i>{{
+							data.name }}</span>
 					</div>
 				</el-tree>
 			</div>
@@ -181,146 +183,181 @@
 </template>
 
 <script>
-	export default {
-		props: ['rowInfo'],
-		data() {
-			return {
-				isUpBtn: false,
-				showUp: false,
-				isAddProject: false,
-				showLook: false,
-				detailId: 0,
-				rowInfp: {},
-				search: {
-					countSize: 10,
-					pageSize: 1,
-					result: "", // 妫�娴嬬姸鎬�
-					name: "", // 浜у搧鍚嶇О
-					techfather: "" // 宸ュ簭
-				},
-				optionsSamplename: [],
-				inspectionTable: [],
-				tableColumn: [],
-				optionSoptionSprocesses: [],
-				optionTechnology: [],
-				inspectionTableTotal: 0,
-				pageSize: 10,
-				currentPage: 1,
-				treeProject: [],
-				// 娣诲姞鍒�
-				empiricalValueAdd: 1,
-				// 缂栬緫鏃跺瓨鍌ㄦ渶闀跨殑鍒楁暟瀛楋紝鍋氬垹闄ゅ垽鏂�
-				empiricalValueAddMaxNumber: 0,
-				showAddPage: false,
-				processInspectVo: {
-					id: null,
-					material: null,
-					mcode: null,
-					prname: null,
-					sname: null,
-					orderNumber: "D-001",
-					qualityTraceability: null,
-					quantity: null,
-					specificationsModel: null,
-					unit: null,
-					technologyId: null
-				},
-				InspectioniD: null,
-				addInspectionform: [{
-					number: "",
-					username: "",
-					projectname: "",
-					tracenumber: "",
-					code: "",
-					class: "",
-					specificationmodel: "",
-					unit: "",
-					quantity: "",
-					group: "",
-					worker: "",
-					machine: ""
-				}],
-				inspectionItems: [], // 鏂板妫�楠岄」鐩〃鏍�
-				inspectionResultForm: [{
-					id: "",
-					name: "",
-					inspecter: "",
-					conclusion: "",
-					operation: ""
-				}],
-				options: [],
-				value: "",
-				rowList: [],
-				spanArr: [],
-				position: 0,
-				// 璁惧閫夋嫨鏍戞樉绀�
-				centerDialogVisible: false,
-				filterText: "",
-				materialOptions: [],
-				defaultProps: {
-					// 璁惧鏍戞暟鎹缃�
-					children: "children",
-					label: "name"
-				},
-				nodeData: {
-					id: 0,
-					name: null
-				}, // node鐐瑰嚮淇濆瓨褰撳墠鐐瑰嚮鏁版嵁
-				clickSelectDevice: {
-					index: null, // 鐐瑰嚮閫夋嫨瀛樺偍褰撳墠琛岀储寮�
-					rpId: null // 鐐瑰嚮閫夋嫨瀛樺偍褰撳墠琛岄」鐩甀d
-				}
-			};
-		},
-		watch: {
-			// filterText(val) {
-			//     this.$refs.tree.filter(val);
-			// }
-		},
-		mounted() {
-			if (this.rowInfo.result != null && this.rowInfo.result != '') {
-				this.isUpBtn = true
+export default {
+	props: ['rowInfo'],
+	data() {
+		return {
+			isUpBtn: false,
+			showUp: false,
+			isAddProject: false,
+			showLook: false,
+			detailId: 0,
+			rowInfp: {},
+			search: {
+				countSize: 10,
+				pageSize: 1,
+				result: "", // 妫�娴嬬姸鎬�
+				name: "", // 浜у搧鍚嶇О
+				techfather: "" // 宸ュ簭
+			},
+			optionsSamplename: [],
+			inspectionTable: [],
+			tableColumn: [],
+			optionSoptionSprocesses: [],
+			optionTechnology: [],
+			inspectionTableTotal: 0,
+			pageSize: 10,
+			currentPage: 1,
+			treeProject: [],
+			// 娣诲姞鍒�
+			empiricalValueAdd: 1,
+			// 缂栬緫鏃跺瓨鍌ㄦ渶闀跨殑鍒楁暟瀛楋紝鍋氬垹闄ゅ垽鏂�
+			empiricalValueAddMaxNumber: 0,
+			showAddPage: false,
+			processInspectVo: {
+				id: null,
+				material: null,
+				mcode: null,
+				prname: null,
+				sname: null,
+				orderNumber: "D-001",
+				qualityTraceability: null,
+				quantity: null,
+				specificationsModel: null,
+				unit: null,
+				technologyId: null
+			},
+			InspectioniD: null,
+			addInspectionform: [{
+				number: "",
+				username: "",
+				projectname: "",
+				tracenumber: "",
+				code: "",
+				class: "",
+				specificationmodel: "",
+				unit: "",
+				quantity: "",
+				group: "",
+				worker: "",
+				machine: ""
+			}],
+			inspectionItems: [], // 鏂板妫�楠岄」鐩〃鏍�
+			inspectionResultForm: [{
+				id: "",
+				name: "",
+				inspecter: "",
+				conclusion: "",
+				operation: ""
+			}],
+			options: [],
+			value: "",
+			rowList: [],
+			spanArr: [],
+			position: 0,
+			// 璁惧閫夋嫨鏍戞樉绀�
+			centerDialogVisible: false,
+			filterText: "",
+			materialOptions: [],
+			defaultProps: {
+				// 璁惧鏍戞暟鎹缃�
+				children: "children",
+				label: "name"
+			},
+			nodeData: {
+				id: 0,
+				name: null
+			}, // node鐐瑰嚮淇濆瓨褰撳墠鐐瑰嚮鏁版嵁
+			clickSelectDevice: {
+				index: null, // 鐐瑰嚮閫夋嫨瀛樺偍褰撳墠琛岀储寮�
+				rpId: null // 鐐瑰嚮閫夋嫨瀛樺偍褰撳墠琛岄」鐩甀d
 			}
-			this.processInspectVo.material = this.rowInfo.material
-			this.processInspectVo.mcode = this.rowInfo.material_code
-			this.processInspectVo.orderNumber = this.rowInfo.order_number
-			this.processInspectVo.qualityTraceability = this.rowInfo.quality_traceability
-			this.processInspectVo.specificationsModel = this.rowInfo.specifications_model
-			this.processInspectVo.unit = this.rowInfo.unit
-			this.processInspectVo.quantity = this.rowInfo.quantity
-			this.processInspectVo.prname = this.rowInfo.customer_name
-			this.processInspectVo.sname = this.rowInfo.project_name
-			this.inspectionResultForm[0].id = this.rowInfo.material_code
-			this.inspectionResultForm[0].name = this.rowInfo.material
-			this.inspectionResultForm[0].conclusion = this.rowInfo.result
-			this.detailId = this.rowInfo.id
-			this.getTableData()
-			// this.getOptions();
-		},
-		methods: {
-			// blurNode(row){
-			//     console.log(11);
-			//     row.isSelectDevice=false
-			// },
-			escalation() {
-				let arr = this.inspectionItems
-				let bl = false
-				for (let index = 0; index < arr.length; index++) {
-					const element = arr[index];
-					if (element.dname != null && element.empiricalValueAddss[0] != '') {
-						bl = true
-						break
-					} else {
-						bl = false
-					}
+		};
+	},
+	watch: {
+		// filterText(val) {
+		//     this.$refs.tree.filter(val);
+		// }
+	},
+	mounted() {
+		if (this.rowInfo.result != null && this.rowInfo.result != '') {
+			this.isUpBtn = true
+		}
+		this.processInspectVo.material = this.rowInfo.material
+		this.processInspectVo.mcode = this.rowInfo.material_code
+		this.processInspectVo.orderNumber = this.rowInfo.order_number
+		this.processInspectVo.qualityTraceability = this.rowInfo.quality_traceability
+		this.processInspectVo.specificationsModel = this.rowInfo.specifications_model
+		this.processInspectVo.unit = this.rowInfo.unit
+		this.processInspectVo.quantity = this.rowInfo.quantity
+		this.processInspectVo.prname = this.rowInfo.customer_name
+		this.processInspectVo.sname = this.rowInfo.project_name
+		this.inspectionResultForm[0].id = this.rowInfo.material_code
+		this.inspectionResultForm[0].name = this.rowInfo.material
+		this.inspectionResultForm[0].conclusion = this.rowInfo.result
+		this.detailId = this.rowInfo.id
+		this.getTableData()
+		// this.getOptions();
+	},
+	methods: {
+		// blurNode(row){
+		//     console.log(11);
+		//     row.isSelectDevice=false
+		// },
+		escalation() {
+			let arr = this.inspectionItems
+			let bl = false
+			for (let index = 0; index < arr.length; index++) {
+				const element = arr[index];
+				if (element.dname != null && element.empiricalValueAddss[0] != '') {
+					bl = true
+					break
+				} else {
+					bl = false
 				}
-				if (bl != true) {
+			}
+			if (bl != true) {
+				this.$message({
+					message: '璇峰厛妫�娴嬩竴椤归」鐩紒',
+					type: 'warning'
+				});
+				return
+			}
+			let pro = this.inspectionItems.filter(item => {
+				return item.result === 0;
+			})
+			if (pro.length > 0) {
+				this.$prompt('璇疯緭鍏ヤ笉鍚堟牸鏁伴噺', '涓嶅悎鏍兼暟閲�', {
+					confirmButtonText: '纭畾',
+					cancelButtonText: '鍙栨秷',
+					inputPattern: /^\d+$/,
+					inputErrorMessage: '璇疯緭鍏ユ纭暟瀛楁牸寮�'
+				}).then(({ value }) => {
+					this.$axios.post(this.$api.url.finishedInspectUpdateFinishInspectsById, {
+						id: this.detailId,
+						number: value
+					}).then(res => {
+						if (res.code == 200) {
+							this.$message({
+								message: '涓婃姤鎴愬姛',
+								type: 'success'
+							});
+							this.$parent.comBackMain(true)
+						} else {
+							this.$message({
+								message: res.message,
+								type: 'warning'
+							});
+						}
+
+					})
+				}).catch(() => {
 					this.$message({
-						message: '璇峰厛妫�娴嬩竴椤归」鐩紒',
-						type: 'warning'
+						type: 'info',
+						message: '鍙栨秷杈撳叆'
 					});
-					return
-				}
+				});
+			} else {
 				this.$axios.post(this.$api.url.finishedInspectUpdateFinishInspectsById, {
 					id: this.detailId
 				}).then(res => {
@@ -332,10 +369,10 @@
 							});
 							return
 						}
-						this.$message({
-							message: '涓婃姤鎴愬姛',
-							type: 'success'
-						});
+						// this.$message({
+						// 	message: '涓婃姤鎴愬姛',
+						// 	type: 'success'
+						// });
 						this.$parent.comBackMain(true)
 					} else {
 						this.$message({
@@ -344,365 +381,365 @@
 						});
 					}
 				})
-
-			},
-			changeOptionsSamplename() {
-				let id = this.processInspectVo.material.split("-")[0]
-				let sample = this.optionsSamplename.filter(o => {
-					return o.id == id
-				})[0]
-				this.processInspectVo.qualityTraceability = sample.qualityTraceability
-				this.processInspectVo.mcode = sample.mcode
-				this.processInspectVo.specificationsModel = sample.specifications
-				this.processInspectVo.unit = sample.unit
-			},
-			comBack() {
-				this.$parent.comBackMain()
-			},
-			handleClick(row) {
-				this.rowInfp = row
-				this.showLook = true
-			},
-			updateInsInfo(row) {
-				this.rowInfp = row
-				this.showUp = true
-			},
-			combackMain() {
-				this.showUp = false
-				this.showLook = false
-			},
-			searchPro() {
-				this.search.countSize = this.pageSize
-				this.search.pageSize = this.currentPage
-				this.defaultInitializationTable()
-			},
-			// 鐐瑰嚮璁惧鏍戜繚瀛樼偣鍑昏褰�
-			nodeClick(data) {
-				if (data.id != undefined) this.nodeData = data;
-			},
-			// 璁惧鏍戣繃婊ゆ悳绱�
-			filterNode(value, data) {
-				if (!value) return true;
-				return data.name.indexOf(value) !== -1;
-			},
-			// 鑾峰彇璁惧鏍戝唴瀹�
-			getOptions(row) {
-				this.$axios.get(this.$api.url.inspectionItemChooseDev, {
-					params: {
-						father: row.father,
-						name: row.name,
-						technologyId: this.processInspectVo.technologyId
-					}
-				}).then(res => {
-					this.materialOptions = res.data;
-					if (this.materialOptions.length === 1 && row.did != null) {
-						this.$message({
-							message: '璇ラ」鐩笅鍙湁涓�涓瘯楠岃澶囷紝鏃犻渶閫夋嫨锛�',
-							type: 'warning'
-						});
-						return
-					}
-					row.isSelectDevice = true
-				});
-			},
-			// 鐐瑰嚮琛ㄦ牸閫夋嫨瑙﹀彂
-			clickTableSelect(scope) {
-				this.centerDialogVisible = true;
-				this.clickSelectDevice.index = scope.$index;
-				this.clickSelectDevice.rpId = scope.row.id;
-				this.getOptions(scope.row);
-			},
-			// 鐐瑰嚮鏍戦噷闈㈢殑纭畾
-			clickNodeSure(row) {
-				if (this.detailId == null) {
-					this.projectTable[this.clickSelectDevice.index].deviceId = this.nodeData.id;
-					this.projectTable[this.clickSelectDevice.index].deviceName = this.nodeData.name;
-					this.centerDialogVisible = false;
-				} else {
-					this.$axios.post(this.$api.url.inspectionItemUpdateDevByInsId, {
-						id: this.clickSelectDevice.rpId,
-						devId: this.nodeData.id,
-						type: 2
-					}).then(res => {
-						this.centerDialogVisible = false;
-						this.inspectionItems.forEach(a=>{
-							if(a.id == this.clickSelectDevice.rpId){
-								a.dname = this.nodeData.name
-							}
-						})
-					});
+			}
+		},
+		changeOptionsSamplename() {
+			let id = this.processInspectVo.material.split("-")[0]
+			let sample = this.optionsSamplename.filter(o => {
+				return o.id == id
+			})[0]
+			this.processInspectVo.qualityTraceability = sample.qualityTraceability
+			this.processInspectVo.mcode = sample.mcode
+			this.processInspectVo.specificationsModel = sample.specifications
+			this.processInspectVo.unit = sample.unit
+		},
+		comBack() {
+			this.$parent.comBackMain()
+		},
+		handleClick(row) {
+			this.rowInfp = row
+			this.showLook = true
+		},
+		updateInsInfo(row) {
+			this.rowInfp = row
+			this.showUp = true
+		},
+		combackMain() {
+			this.showUp = false
+			this.showLook = false
+		},
+		searchPro() {
+			this.search.countSize = this.pageSize
+			this.search.pageSize = this.currentPage
+			this.defaultInitializationTable()
+		},
+		// 鐐瑰嚮璁惧鏍戜繚瀛樼偣鍑昏褰�
+		nodeClick(data) {
+			if (data.id != undefined) this.nodeData = data;
+		},
+		// 璁惧鏍戣繃婊ゆ悳绱�
+		filterNode(value, data) {
+			if (!value) return true;
+			return data.name.indexOf(value) !== -1;
+		},
+		// 鑾峰彇璁惧鏍戝唴瀹�
+		getOptions(row) {
+			this.$axios.get(this.$api.url.inspectionItemChooseDev, {
+				params: {
+					father: row.father,
+					name: row.name,
+					technologyId: this.processInspectVo.technologyId
 				}
-			},
-			changeState(row, index) {
-				if (row.did != null && row.did != '') {
-					// let val = row.empiricalValueAddss.filter(item => {
-					//     return item != '' && item != null
-					// })
-					// let eq = val.filter(item => {
-					//     return /^[^><=]/.test(item)
-					// })
-					// if (eq.length > 0) {
-					//     this.$message({
-					//         message: "妫�娴嬪�糩" + eq + "]鏍煎紡棣栦綅搴斿寘鍚�>,<鎴栬��=",
-					//         type: 'warning'
-					//     });
-					//     return
-					// }
-					let str = ""
-					row.empiricalValueAddss.forEach(e => {
-						str += e + ","
-					})
-					if (str.slice(0, -1) === '' || str.slice(0, -1) === null || str.slice(0, -1) === undefined) {
-						return
-					}
-					this.$axios.post(this.$api.url.inspectionItemlose_focus_update, {
-						deviceId: row.did,
-						inspectionItemId: row.id,
-						inspectionValue: str.slice(0, -1)
-					}, {
-						headers: {
-							"Content-Type": "application/json"
-						}
-					}).then(res => {
-						row.result = res.data.result
-						row.username = res.data.username
-					})
-				} else {
+			}).then(res => {
+				this.materialOptions = res.data;
+				if (this.materialOptions.length === 1 && row.did != null) {
 					this.$message({
-						message: '璇烽�夋嫨鎷╄澶囷紒',
+						message: '璇ラ」鐩笅鍙湁涓�涓瘯楠岃澶囷紝鏃犻渶閫夋嫨锛�',
 						type: 'warning'
 					});
+					return
 				}
-			},
-			// 姣忛〉鏉℃暟鏀瑰彉鏃惰Е鍙� 閫夋嫨涓�椤垫樉绀哄灏戣
-			handleSizeChange(val) {
-				this.search.countSize = val;
-				this.defaultInitializationTable();
-			},
-			handleSpanMethod({
-				row,
-				column,
-				rowIndex,
-				columnIndex
-			}) {
-				if (columnIndex === 0) {
-					const _row = this.spanArr[rowIndex];
-					const _col = _row > 0 ? 1 : 0;
-					return {
-						rowspan: _row,
-						colspan: _col
-					}
-				}
-				if (columnIndex === 1) {
-					const _row = this.spanArr[rowIndex];
-					const _col = _row > 0 ? 1 : 0;
-					return {
-						rowspan: _row,
-						colspan: _col
-					}
-				}
-			},
-			// 鍚堝苟琛ㄦ牸
-			mergeTable() {
-				this.rowList = []
-				this.spanArr = []
-				this.position = 0
-				this.inspectionItems.forEach((item, index) => {
-					if (index === 0) {
-						this.spanArr.push(1);
-						this.position = 0;
-					} else {
-						if (this.inspectionItems[index].father === this.inspectionItems[index - 1].father) {
-							this.spanArr[this.position] += 1;
-							this.spanArr.push(0);
-						} else {
-							this.spanArr.push(1);
-							this.position = index;
+				row.isSelectDevice = true
+			});
+		},
+		// 鐐瑰嚮琛ㄦ牸閫夋嫨瑙﹀彂
+		clickTableSelect(scope) {
+			this.centerDialogVisible = true;
+			this.clickSelectDevice.index = scope.$index;
+			this.clickSelectDevice.rpId = scope.row.id;
+			this.getOptions(scope.row);
+		},
+		// 鐐瑰嚮鏍戦噷闈㈢殑纭畾
+		clickNodeSure(row) {
+			if (this.detailId == null) {
+				this.projectTable[this.clickSelectDevice.index].deviceId = this.nodeData.id;
+				this.projectTable[this.clickSelectDevice.index].deviceName = this.nodeData.name;
+				this.centerDialogVisible = false;
+			} else {
+				this.$axios.post(this.$api.url.inspectionItemUpdateDevByInsId, {
+					id: this.clickSelectDevice.rpId,
+					devId: this.nodeData.id,
+					type: 2
+				}).then(res => {
+					this.centerDialogVisible = false;
+					this.inspectionItems.forEach(a => {
+						if (a.id == this.clickSelectDevice.rpId) {
+							a.dname = this.nodeData.name
 						}
-					}
+					})
+				});
+			}
+		},
+		changeState(row, index) {
+			if (row.did != null && row.did != '') {
+				// let val = row.empiricalValueAddss.filter(item => {
+				//     return item != '' && item != null
+				// })
+				// let eq = val.filter(item => {
+				//     return /^[^><=]/.test(item)
+				// })
+				// if (eq.length > 0) {
+				//     this.$message({
+				//         message: "妫�娴嬪�糩" + eq + "]鏍煎紡棣栦綅搴斿寘鍚�>,<鎴栬��=",
+				//         type: 'warning'
+				//     });
+				//     return
+				// }
+				let str = ""
+				row.empiricalValueAddss.forEach(e => {
+					str += e + ","
 				})
-			},
-			changeOptionSoptionSprocesses() {
-				this.optionTechnology = []
-				let working = this.optionSoptionSprocesses.filter(item => {
-					return item.name === this.processInspectVo.techfather
-				})[0]
-				this.optionTechnology = working.children
-			},
-			addTestProjevt() {
-				// this.isAddProject = true
-				let val = JSON.parse(JSON.stringify(this.processInspectVo))
-				val.material = this.processInspectVo.material.split("-")[1]
-				val.id = this.processInspectVo.material.split("-")[0]
-				this.$axios.post(this.$api.url.finishedInspectAddFinish, val, {
+				if (str.slice(0, -1) === '' || str.slice(0, -1) === null || str.slice(0, -1) === undefined) {
+					return
+				}
+				this.$axios.post(this.$api.url.inspectionItemlose_focus_update, {
+					deviceId: row.did,
+					inspectionItemId: row.id,
+					inspectionValue: str.slice(0, -1)
+				}, {
 					headers: {
 						"Content-Type": "application/json"
 					}
 				}).then(res => {
-					if (res.code == 201) {
-						this.$message({
-							message: res.message,
-							type: 'warning'
-						});
-						return
-					}
-					this.detailId = res.data
-					this.inspectionResultForm[0].id = val.mcode
-					this.inspectionResultForm[0].name = val.material
-					this.getTableData()
+					row.result = res.data.result
+					row.username = res.data.username
 				})
-			},
-			getTableData() {
-				console.log(this.rowInfo);
-				this.$axios.get(this.$api.url.finishedInspectSelectFinishInspectsListById, {
-					params: {
-						id: this.rowInfo.id
-					}
-				}).then(res => {
-					this.processInspectVo.technologyId = res.data[0].techId
-				})
-				this.$axios.get(this.$api.url.inspectionItemListUser, {
-					params: {
-						id: this.detailId,
-						type: 2
-					}
-				}).then(res => {
-					if (res.data.length < 1) {
-						return
-					}
-					this.inspectionItems = res.data
-					let arr = []
-					let val = JSON.parse(JSON.stringify(this.inspectionItems))
-					const uName = []
-					//杞垚涓�缁存暟缁�
-					val.forEach(l => {
-						let father = l.father
-						l.children.forEach(c => {
-							c.father = father
-							c.empiricalValueAddss = []
-							if (c.inspectionValue != '' && c.inspectionValue != null) {
-								c.empiricalValueAddss = c.inspectionValue.split(",");
-							} else {
-								c.empiricalValueAddss.push("")
-							}
-							uName.push(c['username'])
-							c.isSelectDevice = false
-							arr.push(c)
-						})
-					})
-					this.inspectionItems = arr
-					let arrSort = JSON.parse(JSON.stringify(arr))
-					//鏍规嵁闆嗗悎瀵硅薄鏁扮粍闀垮害鎺掑簭
-					arrSort.sort((a, b) => {
-						if (a.empiricalValueAddss.length < b.empiricalValueAddss.length) {
-							return -1; // a鎺掑湪b鍓嶉潰
-						} else if (a.empiricalValueAddss.length > b.empiricalValueAddss.length) {
-							return 1; // a鎺掑湪b鍚庨潰
-						} else {
-							return 0; // 淇濇寔鐩稿椤哄簭涓嶅彉
-						}
-					});
-					// console.log(arrSort);
-					console.log(uName);
-					let name = [...new Set(uName)].filter(item => item !== null);
-					let rname = ''
-					name.forEach(m => {
-						rname += m + ","
-					})
-					this.inspectionResultForm[0].inspecter = rname.slice(0, -1)
-					this.empiricalValueAdd = arrSort[arrSort.length - 1].empiricalValueAddss.length
-					this.mergeTable(arr)
-				})
-			},
-			selectSample() {
-				let sample = this.optionsSamplename.filter(item => {
-					return item.name === this.processInspectVo.material
-				})[0]
-				this.processInspectVo.techfather = null
-				this.processInspectVo.techname = null
-				this.processInspectVo.materialCode = sample.code
-				this.processInspectVo.specificationsModel = sample.specifications
-				this.processInspectVo.unit = sample.unit
-				this.optionSoptionSprocesses = []
-				this.optionSoptionSprocesses = sample.children
-			},
-			selectInfoByOrderId() {
-				this.$axios.get(this.$api.url.finishedInspectChooseMater, {
-					params: {
-						orderNumber: this.processInspectVo.orderNumber
-					}
-				}).then(res => {
-					if (res.data.length > 0) {
-						console.log(res.data);
-						this.processInspectVo.sname = res.data[0].sname
-						this.processInspectVo.prname = res.data[0].prname
-						this.optionsSamplename = res.data[0].children
-					} else {
-						this.$message({
-							message: '娌℃湁璇ヨ鍗曞彿锛�',
-							type: 'warning'
-						});
-					}
-				})
-			},
-			// 褰撳墠椤垫敼鍙樻椂瑙﹀彂 璺宠浆鍏朵粬椤�
-			handleCurrentChange(val) {
-				this.search.pageSize = val;
-				this.defaultInitializationTable();
-			},
-			// 鏄剧ず鏂板椤甸潰
-			handleAddNew() {
-				this.showAddPage = true;
-				// this.getTableData()
-			},
-			// 琛ㄦ牸鍒濆鍖栨帴鍙�
-			defaultInitializationTable() {
-				this.$axios
-					.post(this.$api.url.selectProcessInspectsList, this.search)
-					.then(res => {
-						this.inspectionTableTotal = res.data.total;
-						this.inspectionTable = res.data.row;
-					});
-			},
-			// 娣诲姞琛�
-			clickAddLine() {
-				let obj = {
-					material: "",
-					materialCode: "",
-					orderNumber: "",
-					quantity: 0,
-					specificationsModel: "",
-					techfather: "",
-					techname: "",
-					technologyId: 0,
-					unit: ""
-				};
-				this.inspectionItems.push(obj);
-			},
-			// 鍒犻櫎琛�
-			clickDeleteline(scope) {
-				this.inspectionItems.splice(scope.$index, 1);
-			},
-			// 鍒犻櫎妫�楠屽�煎垪
-			clickDeleteInspectionColumn() {
-				if (this.empiricalValueAdd - 1 === 0) {} else {
-					if (this.empiricalValueAddMaxNumber != this.empiricalValueAdd - 1) {
-						this.empiricalValueAdd = this.empiricalValueAdd - 1;
-						this.inspectionItems.forEach(i => {
-							i.testValueList.splice(this.empiricalValueAdd, 1);
-						});
-					}
-				}
-			},
-			// 娣诲姞妫�楠屽�煎垪
-			clickAddInspectionColumn() {
-				this.empiricalValueAdd = this.empiricalValueAdd + 1;
+			} else {
+				this.$message({
+					message: '璇烽�夋嫨鎷╄澶囷紒',
+					type: 'warning'
+				});
 			}
 		},
-		created() {
-			this.defaultInitializationTable(); // 鍒濆鍖栬〃鏍兼暟鎹�
+		// 姣忛〉鏉℃暟鏀瑰彉鏃惰Е鍙� 閫夋嫨涓�椤垫樉绀哄灏戣
+		handleSizeChange(val) {
+			this.search.countSize = val;
+			this.defaultInitializationTable();
+		},
+		handleSpanMethod({
+			row,
+			column,
+			rowIndex,
+			columnIndex
+		}) {
+			if (columnIndex === 0) {
+				const _row = this.spanArr[rowIndex];
+				const _col = _row > 0 ? 1 : 0;
+				return {
+					rowspan: _row,
+					colspan: _col
+				}
+			}
+			if (columnIndex === 1) {
+				const _row = this.spanArr[rowIndex];
+				const _col = _row > 0 ? 1 : 0;
+				return {
+					rowspan: _row,
+					colspan: _col
+				}
+			}
+		},
+		// 鍚堝苟琛ㄦ牸
+		mergeTable() {
+			this.rowList = []
+			this.spanArr = []
+			this.position = 0
+			this.inspectionItems.forEach((item, index) => {
+				if (index === 0) {
+					this.spanArr.push(1);
+					this.position = 0;
+				} else {
+					if (this.inspectionItems[index].father === this.inspectionItems[index - 1].father) {
+						this.spanArr[this.position] += 1;
+						this.spanArr.push(0);
+					} else {
+						this.spanArr.push(1);
+						this.position = index;
+					}
+				}
+			})
+		},
+		changeOptionSoptionSprocesses() {
+			this.optionTechnology = []
+			let working = this.optionSoptionSprocesses.filter(item => {
+				return item.name === this.processInspectVo.techfather
+			})[0]
+			this.optionTechnology = working.children
+		},
+		addTestProjevt() {
+			// this.isAddProject = true
+			let val = JSON.parse(JSON.stringify(this.processInspectVo))
+			val.material = this.processInspectVo.material.split("-")[1]
+			val.id = this.processInspectVo.material.split("-")[0]
+			this.$axios.post(this.$api.url.finishedInspectAddFinish, val, {
+				headers: {
+					"Content-Type": "application/json"
+				}
+			}).then(res => {
+				if (res.code == 201) {
+					this.$message({
+						message: res.message,
+						type: 'warning'
+					});
+					return
+				}
+				this.detailId = res.data
+				this.inspectionResultForm[0].id = val.mcode
+				this.inspectionResultForm[0].name = val.material
+				this.getTableData()
+			})
+		},
+		getTableData() {
+			console.log(this.rowInfo);
+			this.$axios.get(this.$api.url.finishedInspectSelectFinishInspectsListById, {
+				params: {
+					id: this.rowInfo.id
+				}
+			}).then(res => {
+				this.processInspectVo.technologyId = res.data[0].techId
+			})
+			this.$axios.get(this.$api.url.inspectionItemListUser, {
+				params: {
+					id: this.detailId,
+					type: 2
+				}
+			}).then(res => {
+				if (res.data.length < 1) {
+					return
+				}
+				this.inspectionItems = res.data
+				let arr = []
+				let val = JSON.parse(JSON.stringify(this.inspectionItems))
+				const uName = []
+				//杞垚涓�缁存暟缁�
+				val.forEach(l => {
+					let father = l.father
+					l.children.forEach(c => {
+						c.father = father
+						c.empiricalValueAddss = []
+						if (c.inspectionValue != '' && c.inspectionValue != null) {
+							c.empiricalValueAddss = c.inspectionValue.split(",");
+						} else {
+							c.empiricalValueAddss.push("")
+						}
+						uName.push(c['username'])
+						c.isSelectDevice = false
+						arr.push(c)
+					})
+				})
+				this.inspectionItems = arr
+				let arrSort = JSON.parse(JSON.stringify(arr))
+				//鏍规嵁闆嗗悎瀵硅薄鏁扮粍闀垮害鎺掑簭
+				arrSort.sort((a, b) => {
+					if (a.empiricalValueAddss.length < b.empiricalValueAddss.length) {
+						return -1; // a鎺掑湪b鍓嶉潰
+					} else if (a.empiricalValueAddss.length > b.empiricalValueAddss.length) {
+						return 1; // a鎺掑湪b鍚庨潰
+					} else {
+						return 0; // 淇濇寔鐩稿椤哄簭涓嶅彉
+					}
+				});
+				// console.log(arrSort);
+				console.log(uName);
+				let name = [...new Set(uName)].filter(item => item !== null);
+				let rname = ''
+				name.forEach(m => {
+					rname += m + ","
+				})
+				this.inspectionResultForm[0].inspecter = rname.slice(0, -1)
+				this.empiricalValueAdd = arrSort[arrSort.length - 1].empiricalValueAddss.length
+				this.mergeTable(arr)
+			})
+		},
+		selectSample() {
+			let sample = this.optionsSamplename.filter(item => {
+				return item.name === this.processInspectVo.material
+			})[0]
+			this.processInspectVo.techfather = null
+			this.processInspectVo.techname = null
+			this.processInspectVo.materialCode = sample.code
+			this.processInspectVo.specificationsModel = sample.specifications
+			this.processInspectVo.unit = sample.unit
+			this.optionSoptionSprocesses = []
+			this.optionSoptionSprocesses = sample.children
+		},
+		selectInfoByOrderId() {
+			this.$axios.get(this.$api.url.finishedInspectChooseMater, {
+				params: {
+					orderNumber: this.processInspectVo.orderNumber
+				}
+			}).then(res => {
+				if (res.data.length > 0) {
+					console.log(res.data);
+					this.processInspectVo.sname = res.data[0].sname
+					this.processInspectVo.prname = res.data[0].prname
+					this.optionsSamplename = res.data[0].children
+				} else {
+					this.$message({
+						message: '娌℃湁璇ヨ鍗曞彿锛�',
+						type: 'warning'
+					});
+				}
+			})
+		},
+		// 褰撳墠椤垫敼鍙樻椂瑙﹀彂 璺宠浆鍏朵粬椤�
+		handleCurrentChange(val) {
+			this.search.pageSize = val;
+			this.defaultInitializationTable();
+		},
+		// 鏄剧ず鏂板椤甸潰
+		handleAddNew() {
+			this.showAddPage = true;
+			// this.getTableData()
+		},
+		// 琛ㄦ牸鍒濆鍖栨帴鍙�
+		defaultInitializationTable() {
+			this.$axios
+				.post(this.$api.url.selectProcessInspectsList, this.search)
+				.then(res => {
+					this.inspectionTableTotal = res.data.total;
+					this.inspectionTable = res.data.row;
+				});
+		},
+		// 娣诲姞琛�
+		clickAddLine() {
+			let obj = {
+				material: "",
+				materialCode: "",
+				orderNumber: "",
+				quantity: 0,
+				specificationsModel: "",
+				techfather: "",
+				techname: "",
+				technologyId: 0,
+				unit: ""
+			};
+			this.inspectionItems.push(obj);
+		},
+		// 鍒犻櫎琛�
+		clickDeleteline(scope) {
+			this.inspectionItems.splice(scope.$index, 1);
+		},
+		// 鍒犻櫎妫�楠屽�煎垪
+		clickDeleteInspectionColumn() {
+			if (this.empiricalValueAdd - 1 === 0) { } else {
+				if (this.empiricalValueAddMaxNumber != this.empiricalValueAdd - 1) {
+					this.empiricalValueAdd = this.empiricalValueAdd - 1;
+					this.inspectionItems.forEach(i => {
+						i.testValueList.splice(this.empiricalValueAdd, 1);
+					});
+				}
+			}
+		},
+		// 娣诲姞妫�楠屽�煎垪
+		clickAddInspectionColumn() {
+			this.empiricalValueAdd = this.empiricalValueAdd + 1;
 		}
+	},
+	created() {
+		this.defaultInitializationTable(); // 鍒濆鍖栬〃鏍兼暟鎹�
 	}
+}
 </script>
 
 <style></style>
\ No newline at end of file

--
Gitblit v1.9.3