From b59ad11f54d28a6b4f9b33e5fb30b55e4b263efb Mon Sep 17 00:00:00 2001
From: value <z1292839451@163.com>
Date: 星期二, 29 八月 2023 17:31:55 +0800
Subject: [PATCH] bug修复

---
 src/views/inspectionManagement/commissionInspection/addCommision.vue |  197 +++++++++++++++++++++++++++----------------------
 1 files changed, 108 insertions(+), 89 deletions(-)

diff --git a/src/views/inspectionManagement/commissionInspection/addCommision.vue b/src/views/inspectionManagement/commissionInspection/addCommision.vue
index 46f1dbd..ddcf3bc 100644
--- a/src/views/inspectionManagement/commissionInspection/addCommision.vue
+++ b/src/views/inspectionManagement/commissionInspection/addCommision.vue
@@ -15,33 +15,32 @@
           style="width: 200px;"
         >
         </el-input>-->
-						<el-button type="primary" size="small" style="background-color: rgb(1, 102, 226);">閲嶇疆</el-button>
 					</div>
 					<el-table ref="detectionInfo" :max-height="800" :cell-style="{textAlign: 'center'}"
 						:header-cell-style="{border:'0px',background:'#f5f7fa',color:'#606266',boxShadow: 'inset 0 1px 0 #ebeef5',textAlign: 'center'}"
-						:data="detectionInfo" style="width: 100%">
+						:data="detectionInfo" style="width: 100%;margin-bottom: 20px;">
 						<el-table-column type="index" label="搴忓彿" min-width="10%" />
 						<el-table-column prop="sampleNumber" label="鏍峰搧缂栧彿" min-width="8%" />
+
 						<el-table-column prop="sampleName" label="鏍峰搧鍚嶇О" min-width="10%" />
+
 						<el-table-column prop="specificationsModels" label="瑙勬牸鍨嬪彿" min-width="10%" />
 						<el-table-column prop="unit" label="鍗曚綅" min-width="8%" />
 						<el-table-column prop="samplesNumber" label="鏁伴噺" min-width="8%" />
 						<el-table-column prop="addway" label="娣诲姞鏂瑰紡" min-width="8%">
 							<template slot-scope="scope">
 								<div v-if="scope.row.addway === 0">
-									<el-tag :type='success' disable-transitions>鎵弿</el-tag>
+									<el-tag type="success" disable-transitions>鎵弿</el-tag>
 								</div>
 								<div v-if="scope.row.addway === 1">
-									<el-tag :type='primary' disable-transitions>褰曞叆</el-tag>
+									<el-tag type="primary" disable-transitions>褰曞叆</el-tag>
 								</div>
 								<div v-else></div>
 							</template>
 						</el-table-column>
-						<el-table-column prop="experiment" label="璇曢獙" min-width="8%" />
 						<el-table-column prop="remarks" label="澶囨敞" min-width="8%" />
 						<el-table-column label="鎿嶄綔" min-width="8%">
 							<template slot-scope="scope">
-								<el-button type="text" size="small">淇敼</el-button>
 								<el-button type="text" size="small" @click="deleteRow(scope.row)">鍒犻櫎</el-button>
 							</template>
 						</el-table-column>
@@ -49,10 +48,8 @@
 				</div>
 				<div class="secondBox">
 					<el-row class="header">
-						<el-col :span="12">鍩烘湰淇℃伅</el-col>
+						<el-col :span="12" style="font-size: 16px;margin-bottom: 5px;">鍩烘湰淇℃伅</el-col>
 						<el-col :span="12" style="text-align: right;">
-							<!-- 鐐瑰嚮杩斿洖锛屽綋鍓嶉〉闈㈠�间负false -->
-							<!-- <el-button type="primary" size="mini" style="background-color: rgb(1, 102, 226); ">鎵撳嵃濮旀墭鍗�</el-button> -->
 						</el-col>
 					</el-row>
 					<el-form :model="infoForm" ref="infoForm" class="infoForm" label-position="right" label-width="100px"
@@ -61,48 +58,49 @@
 							<el-row :gutter="200">
 								<el-col :span="5">
 									<el-form-item label="濮旀墭缂栧彿锛�">
-										<el-input style="width: 160px" type="text" :value="infoForm.commisioncode" readonly disabled
-											autocomplete="off" />
+										<el-input style="width: 200px" type="text" :value="infoForm.commisioncode" readonly disabled
+											autocomplete="off" size="small" />
 									</el-form-item>
 								</el-col>
 								<el-col :span="5">
 									<el-form-item label="濮旀墭鍗曚綅锛�">
-										<el-input style="width: 160px" v-model="infoForm.department" placeholder="璇疯緭鍏ュ鎵樺崟浣�" />
+										<el-input style="width: 200px" v-model="infoForm.department" placeholder="璇疯緭鍏ュ鎵樺崟浣�" size="small" />
 									</el-form-item>
 								</el-col>
 								<el-col :span="5">
 									<el-form-item label="鑱旂郴浜猴細">
-										<el-input style="width: 160px" v-model="infoForm.contacter" placeholder="璇疯緭鍏ュ鎵樺崟浣�" />
+										<el-input style="width: 200px" v-model="infoForm.contacter" placeholder="璇疯緭鍏ュ鎵樺崟浣�" size="small" />
 									</el-form-item>
 								</el-col>
 								<el-col :span="5">
 									<el-form-item label="鑱旂郴鐢佃瘽锛�">
-										<el-input style="width: 160px" v-model="infoForm.tel" placeholder="璇疯緭鍏ヨ仈绯荤數璇�" />
+										<el-input style="width: 200px" v-model="infoForm.tel" placeholder="璇疯緭鍏ヨ仈绯荤數璇�" size="small" />
 									</el-form-item>
 								</el-col>
 							</el-row>
 							<el-row :gutter="200">
 								<el-col :span="5">
 									<el-form-item label="鑱旂郴鍦板潃锛�">
-										<el-input style="width: 160px;" v-model="infoForm.address" placeholder="璇疯緭鍏ヨ仈绯诲湴鍧�"
-											autocomplete="off" />
+										<el-input style="width: 200px;" v-model="infoForm.address" placeholder="璇疯緭鍏ヨ仈绯诲湴鍧�" autocomplete="off"
+											size="small" />
 									</el-form-item>
 								</el-col>
 								<el-col :span="5">
 									<el-form-item label="瀹屾垚鏈熼檺锛�">
-										<el-date-picker v-model="infoForm.deadline" type="date" placeholder="閫夋嫨鏃ユ湡" style="width: 160px;">
+										<el-date-picker v-model="infoForm.deadline" type="date" placeholder="閫夋嫨鏃ユ湡" style="width: 200px;"
+											size="small">
 										</el-date-picker>
 									</el-form-item>
 								</el-col>
 								<el-col :span="5">
 									<el-form-item label="閫佹牱鏃堕棿锛�">
-										<el-date-picker v-model="infoForm.time" type="date" placeholder="閫夋嫨鏃ユ湡" style="width: 160px;">
+										<el-date-picker v-model="infoForm.time" type="date" placeholder="閫夋嫨鏃ユ湡" style="width: 200px;">
 										</el-date-picker>
 									</el-form-item>
 								</el-col>
 								<el-col :span="5">
 									<el-form-item label="閫佹牱鏂瑰紡锛�">
-										<el-select style="width: 160px;" v-model="infoForm.way" size="small" placeholder="閫佹牱">
+										<el-select style="width: 200px;" v-model="infoForm.way" size="small" placeholder="閫佹牱">
 											<el-option v-for="options in sampleDeliveryMode" :key="options.key"
 												:value="options.value">{{ options.value }}</el-option>
 										</el-select>
@@ -112,23 +110,26 @@
 							<el-row :gutter="200">
 								<el-col :span="5">
 									<el-form-item label="閫佹牱浜猴細">
-										<el-input style="width: 160px;" v-model="infoForm.sender" placeholder="璇疯緭鍏ラ�佹牱浜�" autocomplete="off" />
+										<el-input style="width: 200px;" v-model="infoForm.sender" placeholder="璇疯緭鍏ラ�佹牱浜�" autocomplete="off"
+											size="small" />
 									</el-form-item>
 								</el-col>
 								<el-col :span="5">
 									<el-form-item label="閫佹牱浜虹數璇濓細">
-										<el-input style="width: 160px;" v-model="infoForm.sendertel" placeholder="璇疯緭鍏ラ�佹牱浜虹數璇�"
-											autocomplete="off" />
+										<el-input style="width: 200px;" v-model="infoForm.sendertel" placeholder="璇疯緭鍏ラ�佹牱浜虹數璇�"
+											autocomplete="off" size="small" />
 									</el-form-item>
 								</el-col>
 								<el-col :span="5">
 									<el-form-item label="鎶ュ憡鏁帮細">
-										<el-input style="width: 160px;" v-model="infoForm.num" placeholder="璇疯緭鍏ユ姤鍛婃暟" autocomplete="off" />
+										<el-input style="width: 200px;" v-model="infoForm.num" placeholder="璇疯緭鍏ユ姤鍛婃暟" autocomplete="off"
+											size="small" />
 									</el-form-item>
 								</el-col>
 								<el-col :span="5">
 									<el-form-item label="濮旀墭澶囨敞锛�">
-										<el-input style="width: 160px;" v-model="infoForm.other" placeholder="澶囨敞" autocomplete="off" />
+										<el-input style="width: 200px;" v-model="infoForm.other" placeholder="澶囨敞" autocomplete="off"
+											size="small" />
 									</el-form-item>
 								</el-col>
 							</el-row>
@@ -143,64 +144,68 @@
 				</div>
 			</div>
 			<div class="checkType">
-				<el-dialog title="娣诲姞鎸囨爣" :visible.sync="dialogueFormVisible" width="40%">
+				<el-dialog title="娣诲姞鏍峰搧" :visible.sync="dialogueFormVisible" width="40%" top="30vh">
 					<el-form :model="addPointerForm" ref="addPointerForm" class="addPointerForm" label-position="right"
 						label-width="100px" size="mini">
 						<el-row :gutter="50">
-							<el-col :span="10">
+							<el-col :span="11">
 								<el-form-item label="鏍峰搧缂栧彿锛�">
-									<el-input style="width: 160px;" v-model="addPointerForm.sampleNumber" size="small" disabled>
+									<el-input v-model="addPointerForm.sampleNumber" size="small" disabled>
 									</el-input>
 								</el-form-item>
 							</el-col>
-							<el-col :span="10">
+							<el-col :span="11">
 								<el-form-item label="鏍峰搧鍚嶇О锛�">
-									<el-select style="width: 160px;" v-model="addPointerForm.sampleName" size="small"
-										placeholder="璇烽�夋嫨鏍峰搧鍚嶇О" @change="upMaterialName">
-										<el-option v-for="options in sampleoptions" :value="options.key"
-											:label="options.value"></el-option>
+									<el-select v-model="addPointerForm.sampleName" size="small" placeholder="璇烽�夋嫨鏍峰搧鍚嶇О"
+										@change="upMaterialName">
+										<el-option v-for="options in sampleoptions" :value="options.key" :label="options.value"></el-option>
 									</el-select>
 								</el-form-item>
 							</el-col>
 						</el-row>
 						<el-row :gutter="50">
-							<el-col :span="10">
-								<el-form-item label="瑙勬牸鍨嬪彿锛�">
-									<el-select style="width: 160px;" v-model="addPointerForm.specificationsModels" size="small"
-										placeholder="璇峰厛閫夋嫨鏍峰搧鍚嶇О">
+							<el-col :span="11">
+								<el-form-item label="璇勫畾鏍囧噯锛�">
+									<el-select v-model="addPointerForm.addway" size="small" placeholder="璇烽�夋嫨璇勫畾鏍囧噯">
 										<el-option v-for="options in model_spe_options" :value="options.value"
 											:key="options.key">{{ options.value }}</el-option>
 									</el-select>
 								</el-form-item>
 							</el-col>
-							<el-col :span="10">
+							<el-col :span="11">
+								<el-form-item label="瑙勬牸鍨嬪彿锛�">
+									<el-select v-model="addPointerForm.specificationsModels" size="small" placeholder="璇峰厛閫夋嫨鏍峰搧鍚嶇О" @change="getProductList">
+										<el-option v-for="options in model_sta_options" :value="options.key" :label="options.value"
+											:key="options.key">{{ options.value }}</el-option>
+									</el-select>
+								</el-form-item>
+							</el-col>
+						</el-row>
+						<el-row :gutter="50">
+							<el-col :span="11">
 								<el-form-item label="鏍峰搧鍗曚綅锛�">
-									<el-input style="width: 160px" type="text" v-model="addPointerForm.unit" placeholder="璇疯緭鍏ュ崟浣�"
-										autocomplete="off" />
+									<el-input type="text" v-model="addPointerForm.unit" placeholder="璇疯緭鍏ュ崟浣�" autocomplete="off" />
 								</el-form-item>
 							</el-col>
-						</el-row>
-						<el-row :gutter="50">
-							<el-col :span="10">
+							<el-col :span="11">
 								<el-form-item label="鏍峰搧鏁伴噺锛�">
-									<el-input style="width: 160px" type="text" v-model="addPointerForm.samplesNumber" placeholder="璇疯緭鍏ユ暟閲�"
-										autocomplete="off" />
-								</el-form-item>
-							</el-col>
-							<el-col :span="10">
-								<el-form-item label="澶囨敞锛�">
-									<el-input style="width: 160px" type="text" v-model="addPointerForm.remarks" placeholder="璇疯緭鍏ュ娉�"
-										autocomplete="off" />
+									<el-input type="text" v-model="addPointerForm.samplesNumber" placeholder="璇疯緭鍏ユ暟閲�" autocomplete="off" />
 								</el-form-item>
 							</el-col>
 						</el-row>
 						<el-row :gutter="50">
-							<el-col :span="10">
-								<el-form-item label="娣诲姞瀹為獙锛�">
+							<el-col :span="9">
+								<el-form-item label="娣诲姞椤圭洰锛�">
 									<el-checkbox-group v-model="addPointerForm.experiment" style="display: flex; flex-direction: column;">
-										<el-checkbox v-for="expers in experList" :label="expers.label"
-											:key="expers.key">{{ expers.label }}</el-checkbox>
+										<el-checkbox v-for="(expers, ai) in productList" :label="expers"
+											:key="ai">{{ expers }}</el-checkbox>
 									</el-checkbox-group>
+								</el-form-item>
+							</el-col>
+							<el-col :span="41">
+								<el-form-item label="澶囨敞锛�">
+									<el-input type="textarea" :autosize="{ minRows: 4, maxRows: 20}" style="width: 200px;"
+										v-model="addPointerForm.remarks" placeholder="璇疯緭鍏ュ娉�" autocomplete="off" />
 								</el-form-item>
 							</el-col>
 						</el-row>
@@ -221,7 +226,8 @@
 		getModelSpecification,
 		getlink,
 		addInspection,
-		isIfViewUUID
+		isIfViewUUID,
+		getProductList
 	} from '@/api/inspection/commisioninspection'
 	export default {
 		data() {
@@ -278,6 +284,8 @@
 					value: ''
 				}],
 				model_spe_options: [],
+				model_sta_options: [],
+				model_options: [],
 				sampleDeliveryMode: [{
 					key: '1',
 					value: '閫佹牱'
@@ -287,12 +295,33 @@
 				}],
 				dialogueFormVisible: false,
 				showDetail: false,
-				viewId: null
+				viewId: null,
+				productList: []
+			}
+		},
+		watch: {
+			addPointerForm: {
+				handler: function(val) {
+					if(val.addway!=""){
+						this.model_sta_options = []
+						this.model_options.forEach(a=>{
+							if(a.specificationsName==val.addway){
+								this.model_sta_options = a.children.map(item=>{
+									return{
+										key: item.modelId,
+										value: item.modelName
+									}
+								})
+							}
+						})
+					}
+				},
+				deep: true
 			}
 		},
 		created() {
 			this.viewId = this.$route.params.viewId
-			this.$store.commit('settings/SAVE_LINK',this.viewId)
+			this.$store.commit('settings/SAVE_LINK', this.viewId)
 			this.getlink(this.$route.params.viewId)
 		},
 		mounted() {
@@ -319,7 +348,8 @@
 				this.sampleoptions = res.data.map((item) => {
 					return {
 						key: item.id.toString(),
-						value: item.name
+						value: item.name,
+						code: item.code
 					}
 				})
 			},
@@ -327,6 +357,7 @@
 				const res = await getModelSpecification({
 					materialId: val
 				})
+				this.model_options = res.data
 				this.model_spe_options = res.data.map((item) => {
 					return {
 						key: item.specificationsId,
@@ -340,6 +371,7 @@
 				for (let i = 1; i < this.addPointerForm.experiment.length; i++) {
 					exper += ',' + this.addPointerForm.experiment[i]
 				}
+
 				// console.log(exper)
 				this.addPointerForm.experiment = exper
 				let tmp = this.addPointerForm
@@ -377,39 +409,12 @@
 					sampleDeliveryPhone: this.infoForm.sendertel,
 					sampleSender: this.infoForm.sender
 				})
-				//       const res = await addInspection({
-				//   completionDeadline: "2023-08-03",
-				//   contactAddress: "姹熻嫃鍗楅��",
-				//   contactNumber: "12321423432",
-				//   contacts: "灏忛粦",
-				//   entrustRemarks: "濮旀墭澶囨敞YPBH123456789YPBH123456789YPBH123456789",
-				//   entrusted: "闃块噷宸村反",
-				//   inspectionTime: "2023-08-03",
-				//   linkDetectionList: [
-				//     {
-				//       "experiment": "鍋氭ⅵ",
-				//       "remarks": "閫氳繃浜�",
-				//       "sampleName": "鍙戝姩鏈�",
-				//       "sampleNumber": "YPBH123456789",
-				//       "samplesNumber": 20,
-				//       "specificationsModels": "GGXH-AAAAA",
-				//       "unit": "鐧惧害"
-				//     }
-				//   ],
-				//   reportNumber: 23,
-				//   sampleDeliveryMode: 1,
-				//   sampleDeliveryPhone: "123456789676",
-				//   sampleSender: "灏忕櫧"
-				// })
-				// console.log(res)
 				this.infoForm.commisioncode = res.data
 				if (res.data) {
 					this.$message({
 						message: '鎭枩浣�!',
 						type: 'success'
 					})
-					// 璺宠浆椤甸潰
-					this.$router.push('/inspectionManagement/commissionInspection')
 					this.showDetail = true
 				} else {
 					this.$message.error(res.message)
@@ -422,12 +427,22 @@
 				this.pageParams.pageNo = pageNo
 			},
 			deleteRow(row) {
-				console.log(row)
-				row = null
+
 			},
-			upMaterialName(val){
-				console.log(val);
+			upMaterialName(val) {
+				this.sampleoptions.forEach(a => {
+					if (a.key == val) {
+						this.addPointerForm.sampleNumber = a.code
+					}
+				})
 				this.getModelSpecification(val)
+			},
+			getProductList(val){
+				getProductList({modelId: val}).then(res=>{
+					this.productList = res.data.map(item=>{
+						return item.name
+					})
+				})
 			}
 		}
 	}
@@ -439,6 +454,10 @@
 		background-color: #f0f2f5;
 		width: 100%;
 		height: 100vh;
+		display: flex;
+		flex-direction: column;
+		justify-content: space-between;
+		// align-items: center;
 
 		.firstBox {
 			.title {

--
Gitblit v1.9.3