From 50ba0927c9644b072928b83d91820719dcb13ec9 Mon Sep 17 00:00:00 2001 From: zss <zss@example.com> Date: 星期一, 18 三月 2024 17:03:41 +0800 Subject: [PATCH] tianjai remark --- src/views/quality/rawMaterial/rawMaterial-form.vue | 167 ++++++++++++++++++++++++++++++------------------------- 1 files changed, 91 insertions(+), 76 deletions(-) diff --git a/src/views/quality/rawMaterial/rawMaterial-form.vue b/src/views/quality/rawMaterial/rawMaterial-form.vue index 89e79b8..f57a0cb 100644 --- a/src/views/quality/rawMaterial/rawMaterial-form.vue +++ b/src/views/quality/rawMaterial/rawMaterial-form.vue @@ -177,31 +177,22 @@ <el-table-column prop="testValue" label="妫�娴嬪��" min-width="160" v-for="(item,index) in empiricalValueAdd" :key="index"> <template slot-scope="scope"> <div v-if="!scope.row.children"> - <el-tooltip :disabled="scope.row.deviceId != null" class="item" effect="dark" content="璇峰厛閫夋嫨璁惧锛�" placement="top-start"> - <el-autocomplete clearable - :disabled="scope.row.deviceId == null || (dataForm.id!=null&&(resultVal!=null && resultVal!=''))" - @input="changeState(scope.row,scope.$index)" - v-model="scope.row.testValueList[index]" - :fetch-suggestions="querySearch" - placeholder="璇疯緭鍏ユ垨閫夋嫨妫�娴嬪��" > - <i style="line-height: normal;padding: 10px 7px;" class="el-icon-arrow-down" slot="suffix"></i> - <template slot-scope="{ item }"> - <div>{{ item.value }}</div> - </template> - </el-autocomplete> - - <!-- <el-select style="width:100%" filterable - :disabled="scope.row.deviceId == null || (dataForm.id!=null&&(resultVal!=null && resultVal!=''))" - v-model="scope.row.testValueList[index]" - placeholder="璇疯緭鍏ユ垨閫夋嫨妫�娴嬪��" - allow-create - default-first-option - @change="changeState(scope.row,scope.$index)" - @blur="selectBlur" - > - <el-option label="鏄�" value="鏄�"/> - <el-option label="鍚�" value="鍚�"/> - </el-select> --> + <!-- :disabled="scope.row.deviceId == null || (dataForm.id!=null&&(resultVal!=null && resultVal!=''))" --> + <!-- @input="$nextTick(()=>{checkTestValues(scope.row)})" --> + <!-- @blur.capture.native="changeState(scope.row)" --> + <el-tooltip :disabled="scope.row.deviceId != null" class="item" effect="dark" content="璇峰厛閫夋嫨璁惧锛�" placement="top-start"> + <el-autocomplete clearable + cache="false" + ref="testValueInput" + @blur="checkTestValues(scope.row,'blur',$event)" + @select="checkTestValues(scope.row,'select',$event)" + v-model="scope.row.testValueList[index]" + :fetch-suggestions="querySearch" + placeholder="璇疯緭鍏ユ垨閫夋嫨妫�娴嬪��" > + <template slot-scope="{ item }"> + <div>{{ item.value }}</div> + </template> + </el-autocomplete> </el-tooltip> </div> </template> @@ -226,7 +217,7 @@ <el-table-column prop="note" label="妫�楠屾弿杩�" width="160" > <template slot-scope="scope"> <div v-if="!scope.row.children"> - <el-input @blur="changeState(scope.row, scope.$index)" :disabled="scope.row.deviceId == null || (dataForm.id!=null&&(resultVal!=null && resultVal!=''))" v-model="scope.row.note" placeholder="妫�楠屾弿杩�"></el-input> + <el-input @blur="checkTestValues(scope.row,'blur',$event)" :disabled="scope.row.deviceId == null || (dataForm.id!=null&&(resultVal!=null && resultVal!=''))" v-model="scope.row.note" placeholder="妫�楠屾弿杩�"></el-input> </div> </template> </el-table-column> @@ -264,7 +255,7 @@ :disabled="dataForm.rawInsNo==null || (resultVal!=null && resultVal!='')" drag ref="upload" - action="/mes/rawInsProduct/upload" + action="/mes/attachment/upload" :auto-upload="true" :headers="headers" :before-upload="submitUpload" @@ -279,7 +270,6 @@ </div> </el-upload> </div> - <el-table :data="processConfigFileTableData" height="260px"> <el-table-column prop="rawInsNo" @@ -409,18 +399,19 @@ getObj, updateRawInsProduct, updateRawInspectsById, - getProcessConfigFiles, - downloadProcessConfigFile, - deleteProcessConfigFile, updateDeviceById, chooseIFS} from '@/api/quality/rawMaterial' + import { + getProcessConfigFiles, + deleteProcessConfigFile, + downloadProcessConfigFile + } from '@/api/quality/attachment' import rawMaterialPartDialog from '@/views/common/rawMaterial-part' import { getStore } from '@/util/store' import qrCodeApp from '@/views/common/qrCodeApp' - import transformImage from '@/util/fileTransform' export default { components:{ rawMaterialPartDialog, - qrCodeApp + qrCodeApp, }, computed:{}, data(){ @@ -432,8 +423,9 @@ Authorization: 'Bearer ' + getStore({ name: 'access_token' }) }, paramData: { - rawInsNo: '', - lineNumber: '' + no: '', + lineNumber: '', + type: 0 }, row: null, proIndex: 0, @@ -486,7 +478,7 @@ }], dataRule: { code:[{ required: true, message: '璇锋壂鎻忛�夋嫨闆朵欢', trigger: 'blur' }], - createTime: [{ required: true, message: '璇烽�夋嫨鎶ユ鏃ユ湡', trigger: 'change' }] + createTime: [{ required: true, message: '璇烽�夋嫨鎶ユ鏃ユ湡', trigger: 'blur' }] }, deviceList: [], } @@ -529,8 +521,9 @@ }, getConfigFiles() { const param = { - rawInsNo: this.dataForm.rawInsNo, - lineNumber: this.dataForm.id + no: this.dataForm.rawInsNo, + lineNumber: this.dataForm.id, + type: 0 } getProcessConfigFiles(param).then((res) => { this.processConfigFileTableData = res.data.data @@ -556,7 +549,7 @@ }) }, submitUpload() { - this.paramData.rawInsNo = this.dataForm.rawInsNo + this.paramData.no = this.dataForm.rawInsNo this.paramData.lineNumber = this.dataForm.id this.progrecessFileLoading = true }, @@ -749,7 +742,7 @@ required: null, rpId: null, name: null, - unit: 'mm', + unit: '', userName: null, testValue: '', testValueList: [], @@ -892,44 +885,59 @@ console.log(e,e.target.tabIndex); console.log(e.target.value); }, - changeState(row, index) { - if(row){ - let isTrue = true - for(var i=0;i<row.testValueList.length;i++){ - let val = row.testValueList[i] - let reg = /(^-?[0-9]{1,6}$)|(^-?[0-9]{1,6}[\.]{1}[0-9]{1,3}$)/ - if(val.slice(-1)!='.'){ - if(!reg.test(val) && !['鏄�','鍚�'].includes(val)){ - row.testValueList[i] = null - this.$message.error("璇疯緭鍏�6浣嶆暟瀛楁垨閫夋嫨鏄惁") - isTrue = false + checkTestValues(row,currentOption,event){ + if(row){ + let isTrue = true + if(currentOption==='blur'){ + let targetVal = event.target.value + if( (targetVal && ['鏄�','鍚�'].includes(targetVal)) || !targetVal){ + isTrue = false + }else{ + for(var i=0;i<row.testValueList.length;i++){ + let val = row.testValueList[i] + if(val != '' && val != null){ + if(!['鏄�','鍚�'].includes(val)){ + let reg = /(^-?[0-9]{1,6}$)|(^-?[0-9]{1,6}[\.]{1}[0-9]{1,3}$)/ + if(!reg.test(val)){ + row.testValueList[i] = '' + event.target.value = '' + this.$message.error("璇疯緭鍏�6浣嶆暟瀛楁垨閫夋嫨鏄惁") + isTrue = false + } + } + } + } } } - } - if(!isTrue){ - return - } - } - if (row.rpId != null && row.rpId != '') { - let val = row.testValueList.join(",") - if (val === undefined || val === '' || val === null) { - return - } - let obj = { - deviceId: row.deviceId, - rpId: row.rpId, - testValue: val, - note: row.note - } - updateRawInsProduct(obj).then(res => { - if (res.data.code == 0) { - this.$message.success("鏇存柊鎴愬姛") - } else { - this.$message.error("鏇存柊澶辫触") + if(!isTrue){ + return } - this.init(this.dataForm.id) - }) - } + this.changeState(row) + } + }, + changeState(row) { + this.$nextTick(()=>{ + if (row.rpId != null && row.rpId != '') { + let val = row.testValueList.join(",") + if (val === undefined || val === '' || val === null) { + return + } + let obj = { + deviceId: row.deviceId, + rpId: row.rpId, + testValue: val, + note: row.note + } + updateRawInsProduct(obj).then(res => { + if (res.data.code == 0) { + this.$message.success("鏇存柊鎴愬姛") + } else { + this.$message.error("鏇存柊澶辫触") + } + this.init(this.dataForm.id) + }) + } + }) }, // 鍒犻櫎瀛愰」鐩� delChildren(row,index,isParent) { @@ -961,7 +969,7 @@ required: null, rpId: null, name: null, - unit: 'mm', + unit: '', userName: null, testValue: null, testValueList: [], @@ -1202,6 +1210,13 @@ border: 1px solid #e4e7ed; border-bottom: none; } +.dropdown{ + position: relative; + right: 30px; + top: 5px; + color: #C0C4CC; + font-size: 14px; +} @media (max-width: 767px) { .pad-addcol-btn{ font-size:12px; -- Gitblit v1.9.3