From e2c4455f2c178d2ceb797edd30720267f760a6de Mon Sep 17 00:00:00 2001 From: zouyu <2723363702@qq.com> Date: 星期四, 28 十二月 2023 15:44:40 +0800 Subject: [PATCH] 过程检验 --- src/views/quality/rawMaterial/rawMaterial-form.vue | 11 +- vue.config.js | 4 src/views/quality/processInspect/processInspect-form.vue | 235 ++++++++++++++++++++++++++++------------------ 3 files changed, 150 insertions(+), 100 deletions(-) diff --git a/src/views/quality/processInspect/processInspect-form.vue b/src/views/quality/processInspect/processInspect-form.vue index 01a072a..2ac9320 100644 --- a/src/views/quality/processInspect/processInspect-form.vue +++ b/src/views/quality/processInspect/processInspect-form.vue @@ -18,65 +18,80 @@ <div class="formwrapper"> <el-row> <el-col :span="6"> - <el-form-item label="杩囩▼妫�楠岀紪鍙凤細"> - <el-input @blur="selectInfoByOrderId" disabled - v-model="processInspectVo.proInsNo" autocomplete="off" /> + <el-form-item label="杩囩▼妫�楠岀紪鍙�"> + <el-input disabled + v-model="processInspectVo.proInsNo" placeholder="杩囩▼妫�楠岀紪鍙�" autocomplete="off" /> </el-form-item> </el-col> <el-col :span="6"> - <el-form-item label="璁㈠崟鍙凤細" prop="orderNumber"> + <el-form-item label="杞﹂棿璁㈠崟鍙�" prop="moNumber"> <el-input @blur="selectInfoByOrderId" :disabled="processInspectVo.id != null" - v-model="processInspectVo.orderNumber" placeholder="璇疯緭鍏ヨ鍗曞彿" autocomplete="off" /> + v-model="processInspectVo.moNumber" placeholder="璇疯緭鍏ヨ溅闂磋鍗曞彿" autocomplete="off" > + <el-button + slot="append" + icon="el-icon-full-screen" + :disabled="resultVal!=null" + @click="Turnonthecamera"></el-button> + </el-input> </el-form-item> </el-col> <el-col :span="6"> - <el-form-item label="浜у搧鍚嶇О锛�"> + <el-form-item label="閿�鍞鍗曞彿" prop="orderNumber"> + <el-input disabled + v-model="processInspectVo.orderNumber" placeholder="閿�鍞鍗曞彿" autocomplete="off" /> + </el-form-item> + </el-col> + <el-col :span="6"> + <el-form-item label="浜у搧鍚嶇О"> <el-tooltip class="item" effect="dark" :content="processInspectVo.material"> - <el-select style="width: 100%" @change="changeOptionsSamplename" - :disabled="processInspectVo.id != null" v-model="processInspectVo.material" - size="small" placeholder="璇烽�夋嫨浜у搧鍚嶇О"> - <el-option v-for="(item, index) in optionsSamplename" :key="index" - :label="item.material" :value="item.materialCode"> - </el-option> - </el-select> + <el-input v-model="processInspectVo.material" disabled placeholder="浜у搧鍚嶇О"></el-input> </el-tooltip> - </el-form-item> - </el-col> - <el-col :span="6"> - <el-form-item label="浜у搧缂栧彿锛�"> - <el-input disabled v-model="processInspectVo.materialCode" placeholder="璇疯緭鍏ヤ骇鍝佺紪鍙�" - autocomplete="off" /> </el-form-item> </el-col> </el-row> <el-row> <el-col :span="6"> - <el-form-item label="瑙勬牸鍨嬪彿锛�"> + <el-form-item label="浜у搧缂栧彿"> + <el-input disabled v-model="processInspectVo.materialCode" placeholder="浜у搧缂栧彿" autocomplete="off" /> + </el-form-item> + </el-col> + <el-col :span="6"> + <el-form-item label="瑙勬牸鍨嬪彿"> <el-tooltip class="item" effect="dark" :content="processInspectVo.specs"> - <el-input disabled v-model="processInspectVo.specs" - autocomplete="off" /> + <el-input disabled v-model="processInspectVo.specs" placeholder="瑙勬牸鍨嬪彿" autocomplete="off" /> </el-tooltip> </el-form-item> </el-col> <el-col :span="6"> - <el-form-item label="宸ュ簭鍚嶇О"> + <el-form-item label="宸ュ崟" prop="operationTaskId"> <el-select style="width: 100%" :disabled="processInspectVo.id != null" - v-model="processInspectVo.technologyOperationId" size="small" placeholder="璇烽�夋嫨宸ュ簭"> - <el-option v-for="(item, index) in technologyList" :key="index" :label="item.name" - :value="item.technologyOperationId"> + v-model="processInspectVo.operationTaskId" size="small" placeholder="璇烽�夋嫨宸ュ崟"> + <el-option v-for="(item, index) in technologyList" :key="index" :label="item.name+'-'+item.optaskNo" + :value="item.operationTaskId"> </el-option> </el-select> </el-form-item> </el-col> <el-col :span="6"> - <el-form-item label="鍗曚綅锛�"> - <el-input disabled v-model="processInspectVo.unit" placeholder="璇疯緭鍏ュ崟浣�" - autocomplete="off" /> + <el-form-item label="鍗曚綅"> + <el-input disabled v-model="processInspectVo.unit" placeholder="鍗曚綅" autocomplete="off" /> + </el-form-item> + </el-col> + </el-row> + <el-row> + <el-col :span="6"> + <el-form-item label="瀹㈡埛鍚嶇О" prop="customerName"> + <el-input v-model="processInspectVo.customerName" placeholder="瀹㈡埛鍚嶇О" autocomplete="off" disabled /> </el-form-item> </el-col> <el-col :span="6"> - <el-form-item label="鏁伴噺锛�"> + <el-form-item label="宸ョ▼鍚嶇О" prop="projectName"> + <el-input v-model="processInspectVo.projectName" placeholder="宸ョ▼鍚嶇О" autocomplete="off" disabled /> + </el-form-item> + </el-col> + <el-col :span="6"> + <el-form-item label="鏁伴噺" prop="quantity"> <el-input v-model="processInspectVo.quantity" placeholder="璇疯緭鍏ユ暟閲�" autocomplete="off" :disabled="processInspectVo.id != null" /> </el-form-item> @@ -213,17 +228,29 @@ </div> </div> <el-dialog - title="璁惧鎵弿" - :visible.sync="deviceCode" - width="60%"> - <div style="height: 100vh;width: 100%;"> - <qr-code-app ref="codeDeviceCompont" @ok="getDeviceResultInfo" @cancelCodeDialog="cancelDeviceCodeDialog"></qr-code-app> - </div> - <span slot="footer" class="dialog-footer"> - <el-button @click="deviceCode = false">鍙� 娑�</el-button> - <el-button type="primary" @click="deviceCode = false">纭� 瀹�</el-button> - </span> -</el-dialog> + title="鎵弿" + :visible.sync="qrcode" + width="60%"> + <div style="height: 100vh;width: 100%;"> + <qr-code-app ref="codeCompont" @ok="getResultInfo" @cancelCodeDialog="cancelCodeDialog"></qr-code-app> + </div> + <span slot="footer" class="dialog-footer"> + <el-button @click="qrcode = false">鍙� 娑�</el-button> + <el-button type="primary" @click="qrcode = false">纭� 瀹�</el-button> + </span> + </el-dialog> + <el-dialog + title="璁惧鎵弿" + :visible.sync="deviceCode" + width="60%"> + <div style="height: 100vh;width: 100%;"> + <qr-code-app ref="codeDeviceCompont" @ok="getDeviceResultInfo" @cancelCodeDialog="cancelDeviceCodeDialog"></qr-code-app> + </div> + <span slot="footer" class="dialog-footer"> + <el-button @click="deviceCode = false">鍙� 娑�</el-button> + <el-button type="primary" @click="deviceCode = false">纭� 瀹�</el-button> + </span> + </el-dialog> </div> </template> @@ -238,17 +265,21 @@ } from '@/api/quality/processInspect' import { selectDevice } from '@/api/quality/processInspect' import qrCodeApp from '@/views/common/qrCodeApp' +import { validatePositiveInteger } from '@/util/validate' export default { components:{ qrCodeApp }, data() { return { + qrcode: false, row: null, proIndex: 0, deviceCode: false, rules: { - orderNumber: [{required:true,message:'璁㈠崟鍙蜂笉鑳戒负绌�',trigger:'blur'}] + moNumber: [{required:true,message:'杞﹂棿璁㈠崟鍙蜂笉鑳戒负绌�',trigger:'blur'}], + quantity: [{required:true,validator: validatePositiveInteger,trigger:'blur'}], + operationTaskId: [{required:true,message: '璇烽�夋嫨宸ュ崟',trigger:'change'}], }, dataVal: [{ label: '鏄�', @@ -268,6 +299,7 @@ empiricalValueAddMaxNumber: 0, processInspectVo: { id: null, + moNumber: null, proInsNo: null, material: null, materialCode: null, @@ -275,7 +307,9 @@ quantity: null, specs: null, unit: null, - technologyOperationId: null + operationTaskId: null, + customerName: null, + projectName: null }, inspectionItems: [], // 鏂板妫�楠岄」鐩〃鏍� inspectionResultForm: [], @@ -298,33 +332,50 @@ let val = sessionStorage.getItem("process-resultVal-" + this.processInspectVo.id); val == undefined ? this.resultVal = null : this.resultVal = val } - console.log(this.resultVal); this.init() }, methods: { - cancelDeviceCodeDialog(){ + cancelCodeDialog(){ + this.qrcode = false + }, + getResultInfo(data){ + if(!data.includes("moNo")){ + this.$message.warning('鏈瘑鍒嚭杞﹂棿璁㈠崟鍙蜂俊鎭紒'); + } + let obj=JSON.parse(data) + let info={"code":obj["moNo"]} + if(info.code){ + this.processInspectVo.moNumber = obj["moNo"] + this.selectInfoByOrderId() + }else{ + this.$message.warning('鏈瘑鍒嚭杞﹂棿璁㈠崟鍙蜂俊鎭紒'); + } + }, + // 鎵撳紑鐩告満 + Turnonthecamera() { + this.qrcode = true + this.$refs.codeCompont.openCamera() + }, + cancelDeviceCodeDialog(){ this.deviceCode = false }, getDeviceResultInfo(val){ - console.log("鎵弿鍚庢暟鎹�",val); let id=val.split("id@")[1] if(id!=undefined&&id!=''&&id!=null){ let filterData=this.deviceList.filter(item=>{ return item.id==id })[0] - console.log(filterData); this.row.eId=Number(id) this.updateDevice(this.row) }else{ this.$message({ - message: '鏈瘑鍒嚭浜屼綅鐮佽閲忓櫒鍏蜂俊鎭紒', + message: '鏈瘑鍒嚭璁¢噺鍣ㄥ叿淇℃伅锛�', type: 'warning' }); } }, codeDevice(row,index){ this.row=row - console.log("row",row); this.deviceCode =true this.$refs.codeDeviceCompont.openCamera() this.proIndex=index @@ -401,11 +452,14 @@ if (id != null) { queryById(id).then(res => { let result = res.data.data + this.processInspectVo.moNumber = result.moNumber + this.processInspectVo.operationTaskId = result.technologyOperationName this.processInspectVo.proInsNo = result.proInsNo + this.processInspectVo.projectName = result.projectName + this.processInspectVo.customerName = result.customerName this.processInspectVo.orderNumber = result.orderNumber this.processInspectVo.materialCode = result.materialCode this.processInspectVo.material = result.material - this.processInspectVo.technologyOperationId = result.technologyOperationName this.processInspectVo.specs = result.specs this.processInspectVo.unit = result.punit this.processInspectVo.quantity = result.quantity @@ -475,17 +529,6 @@ console.log(error) }) }, - //浜у搧鍚嶇О锛岄�夋嫨 - changeOptionsSamplename(val) { - let sample = this.optionsSamplename.filter(o => { - return o.materialCode == val - })[0] - this.processInspectVo.materialCode = sample.materialCode - this.processInspectVo.specs = sample.specs - this.processInspectVo.unit = sample.unit - this.processInspectVo.material = sample.material - this.technologyList = sample.children - }, changeState(row,isChecked) { const _than = this if(isChecked){ @@ -530,52 +573,60 @@ addTestProject() { let val = this.processInspectVo const _than = this - addProcess(val).then(res => { - let id = res.data.data - if (id != null) { - _than.processInspectVo.id = id - queryById(id).then(response => { - let proList = response.data.data.children - proList.forEach(item => { - item.iid = Math.random(); - if (item.children != undefined) { - item.children.forEach(obj => { - obj.inote = null - obj.empiricalValueAddss = [] + this.$refs.addInspectionform.validate(valid=>{ + if(valid){ + addProcess(val).then(res => { + let id = res.data.data + if (id != null) { + _than.processInspectVo.id = id + queryById(id).then(response => { + let proList = response.data.data.children + proList.forEach(item => { + item.iid = Math.random(); + if (item.children != undefined) { + item.children.forEach(obj => { + obj.inote = null + obj.empiricalValueAddss = [] + }) + } }) - } - }) - _than.inspectionItems = proList + _than.inspectionItems = proList + }).catch(error => { + console.log(error); + }) + } }).catch(error => { - console.log(error); + console.log(error) }) } - }).catch(error => { - console.log(error) }) }, selectInfoByOrderId() { - this.$refs.addInspectionform.validate(valid=>{ - if(valid){ - chooseMater({ - orderNumber: this.processInspectVo.orderNumber + if(this.processInspectVo.moNumber){ + chooseMater({ + moNo: this.processInspectVo.moNumber }).then(res => { - if (res.data.data != null) { - this.optionsSamplename = res.data.data.children + let data = res.data.data + if (data) { + this.technologyList = data.children + this.processInspectVo.materialCode = data.materialCode + this.processInspectVo.orderNumber = data.orderNumber + this.processInspectVo.projectName = data.projectName + this.processInspectVo.customerName = data.customerName + this.processInspectVo.material = data.material + this.processInspectVo.specs = data.specs + this.processInspectVo.unit = data.unit } else { - this.$message({ - message: '娌℃湁璇ヨ鍗曞彿锛�', - type: 'warning' - }); - this.optionsSamplename = [] + this.$message.warning('娌℃湁璇ヨ溅闂磋鍗曞彿锛�'); + this.technologyList = [] this.processInspectVo.materialCode = null + this.processInspectVo.orderNumber = null this.processInspectVo.material = null this.processInspectVo.specs = null this.processInspectVo.unit = null } }) - } - }) + } }, changeRowResult(){ if(this.inspectionItems){ diff --git a/src/views/quality/rawMaterial/rawMaterial-form.vue b/src/views/quality/rawMaterial/rawMaterial-form.vue index fd7022f..8b98203 100644 --- a/src/views/quality/rawMaterial/rawMaterial-form.vue +++ b/src/views/quality/rawMaterial/rawMaterial-form.vue @@ -568,19 +568,18 @@ getResultInfo(data){ if(!data.includes("part_no")){ this.$message({ - message: '鏈瘑鍒嚭浜屼綅鐮侀浂浠朵俊鎭紒', + message: '鏈瘑鍒嚭浜岀淮鐮侀浂浠朵俊鎭紒', type: 'warning' }); } let obj=JSON.parse(data) let info={"code":obj["part_no"]} - console.log("鍊�",info); if(info.code!=undefined&&info.code!=''){ this.paramObj = info this.showPart = true }else{ this.$message({ - message: '鏈瘑鍒嚭浜屼綅鐮侀浂浠朵俊鎭紒', + message: '鏈瘑鍒嚭浜岀淮鐮侀浂浠朵俊鎭紒', type: 'warning' }); } @@ -590,9 +589,9 @@ }, // 鎵撳紑鐩告満 Turnonthecamera() { - this.qrcode = true - this.$refs.codeCompont.openCamera() - }, + this.qrcode = true + this.$refs.codeCompont.openCamera() + }, // 纭鍥炶皟 selectPart(param, nodePart, index) { if (typeof param !== 'undefined') { diff --git a/vue.config.js b/vue.config.js index 604c254..eeb6283 100644 --- a/vue.config.js +++ b/vue.config.js @@ -5,9 +5,9 @@ // const url = 'http://192.168.32.45:9999' -const url = 'http://192.168.2.63:9999' +// const url = 'http://192.168.2.63:9999' -// const url = 'http://localhost:9999' +const url = 'http://localhost:9999' const localUrl = 'http://localhost:8089' -- Gitblit v1.9.3