From 030a0935854e9f65df1cd724498b2c2fe52ea9d8 Mon Sep 17 00:00:00 2001 From: licp <lichunping@guanfang.com.cn> Date: 星期六, 10 八月 2024 16:46:37 +0800 Subject: [PATCH] 修改特殊值输入 --- src/components/do/b1-inspect-order-plan/Inspection.vue | 233 ++++++++++++++++++++++++++++++++++++++++++---------------- 1 files changed, 168 insertions(+), 65 deletions(-) diff --git a/src/components/do/b1-inspect-order-plan/Inspection.vue b/src/components/do/b1-inspect-order-plan/Inspection.vue index 7511cec..85c477c 100644 --- a/src/components/do/b1-inspect-order-plan/Inspection.vue +++ b/src/components/do/b1-inspect-order-plan/Inspection.vue @@ -242,7 +242,7 @@ <!-- <el-button size="small" type="primary" @click="fiberOpticVisible=true" v-if="fiberOptic.length>0">鍏夌氦鍒囨崲</el-button> <el-button size="small" type="primary" @click="fiberOpticTapeVisible=true" v-if="fiberOpticTape.length>0">鍏夌氦甯﹀垏鎹�</el-button> <el-button size="small" type="primary" @click="bushingVisible=true" v-if="bushing.length>0">濂楃鍒囨崲</el-button> --> - <el-button size="small" type="primary" @click="sampleVisible=true">鏍峰搧鍒囨崲</el-button> + <el-button size="small" type="primary" @click="sampleVisible=true;uploadSample()">鏍峰搧鍒囨崲</el-button> <el-button size="small" type="primary" @click="taskVisible=true">浠诲姟鍒囨崲</el-button> <el-button size="small" type="primary" @click="addVerifyDia = true" v-if="state==1" :loading="submitLoading">鎻愪氦</el-button> @@ -358,7 +358,7 @@ <el-input v-if="getInspectionValueType(n.i) == 1" class="table_input" v-model="n.v.v" :disabled="(getInspectionItemType(n.i) == 1 && !dataAcquisitionEidtAble )|| (n.u != userId && n.u != undefined && n.u != '')" @input="handleInput(n)" - @change="m=>changeInput(m,`${item.templateId}-${n.r}-${n.c}-${n.i}`, n)" @mousewheel.native.prevent :key="'abc-'+'000'+index+'000'+i+'000'+j" + @change="m=>changeInput(m,`${item.templateId}-${n.r}-${n.c}-${n.i}`, n,'getDataType')" @mousewheel.native.prevent :key="'abc-'+'000'+index+'000'+i+'000'+j" @keydown.enter="changeInput('',`${item.templateId}-${n.r}-${n.c}-${n.i}`, n)"> <!-- <el-button slot="append" type="primary" icon="el-icon-edit" size="mini" v-if="getInspectionItemType(n.i) == 1" @click="getSystemValue(n)"></el-button> --> @@ -366,10 +366,10 @@ <el-input v-else-if="getInspectionValueType(n.i) == 2" class="table_input" type="textarea" v-model="n.v.v" :disabled="getInspectionItemType(n.i) == 1 || (n.u != userId && n.u != undefined && n.u != '')" - @change="m=>changeInput(m,`${item.templateId}-${n.r}-${n.c}-${n.i}`)" /> + @change="m=>changeInput(m,`${item.templateId}-${n.r}-${n.c}-${n.i}`,'getDataType')" /> <el-select v-else-if="getInspectionValueType(n.i) == 5" class="table_input" v-model="n.v.v" :disabled="state>1||getInspectionItemType(n.i) == 1 || (n.u != userId && n.u != undefined && n.u != '')" @visible-change="e=>getDic(e,n.i)" - @change="m=>changeInput(m,`${item.templateId}-${n.r}-${n.c}-${n.i}`)"> + @change="m=>changeInput(m,`${item.templateId}-${n.r}-${n.c}-${n.i}`,'getDataType')"> <el-option v-for="(e, i) in enumList" :key="i" :label="e.label" :value="e.value"></el-option> </el-select> <span :style="`font-family:${n.v.ff} !important;`" @@ -384,6 +384,7 @@ <template v-if="PROJECT=='妫�娴嬩腑蹇�'||PROJECT=='瑁呭鐢电紗'&&getInspectionValueType(n.i) != 2 "> <span v-if="n.v.v===1" :style="`font-family:${n.v.ff} !important;color: green;`">鍚堟牸</span> <span v-else-if="n.v.v===0" :style="`font-family:${n.v.ff} !important;color: red;`">涓嶅悎鏍�</span> + <span v-else-if="n.v.v===3" :style="`font-family:${n.v.ff} !important;color: #3A7BFA;`">涓嶅垽瀹�</span> <span v-else :style="`font-family:${n.v.ff} !important;`">寰呭畾</span> </template> </template> @@ -612,6 +613,7 @@ <template slot-scope="scope"> <span v-if="scope.row.arr[index].insResult===1" style="color: green;">鍚堟牸</span> <span v-else-if="scope.row.arr[index].insResult===0" style="color: red;">涓嶅悎鏍�</span> + <span v-else-if="scope.row.arr[index].insResult===3" style="color: #3A7BFA;">涓嶅垽瀹�</span> <span v-else>寰呭畾</span> </template> </el-table-column> @@ -691,6 +693,7 @@ <template v-else> <span v-if="item.insResult===1" style="color: green;">鍚堟牸</span> <span v-else-if="item.insResult===0" style="color: red;">涓嶅悎鏍�</span> + <span v-else-if="item.insResult===3" style="color: #3A7BFA;">涓嶅垽瀹�</span> <span v-else>寰呭畾</span> </template> </td> @@ -825,7 +828,7 @@ <td style="text-align: left;"> <el-checkbox-group v-model="getDataIndex" :max="item.child[0].maxNum"> - <el-checkbox v-for="(n,j) in item.child[0].arr" :label="j" :key="j+'ppppppppp'">{{n}}</el-checkbox> + <el-checkbox v-for="(n,j) in item.child[0].arr" :label="j" :key="j">{{n}}</el-checkbox> </el-checkbox-group> </td> </tr> @@ -834,7 +837,7 @@ <td style="text-align: left;"> <el-checkbox-group v-model="getDataIndex" :max="m.maxNum"> - <el-checkbox v-for="(n,j) in m.arr" :label="j" :key="j+'bbbbbbbbbbbbbb'">{{n}}</el-checkbox> + <el-checkbox v-for="(n,j) in m.arr" :label="j" :key="j">{{n}}</el-checkbox> </el-checkbox-group> </td> </tr> @@ -853,7 +856,7 @@ import file from '../../../util/file' import excelFunction from '../../../util/excelFountion' export default { - props: ['sonLaboratory', 'orderId', 'state'], + props: ['sonLaboratory', 'orderId', 'state','inspectorList'], components: { ValueTable, }, @@ -1052,7 +1055,10 @@ } ], getDataIndex:[], - getDataIndexLoading:false + getDataIndexLoading:false, + changeType:null, + getDataTypeId:'', + getDataType:null } }, computed: { @@ -1110,15 +1116,18 @@ } let list = await this.getCurrentProduct(this.currentSample.id,0) this.currentSample.insProduct = this.HaveJson(list) - // console.log(this.currentSample) + this.param = {} + this.changeType = 0; this.currentSample.insProduct.forEach(a => { - this.param[a.id] = { - insValue: [], - comValue: [], - resValue: null, - equipValue: [], - equipName: [], - insResult: null + if(this.handleCasing(a.inspectionItem)){ + this.param[a.id] = { + insValue: [], + comValue: [], + resValue: null, + equipValue: [], + equipName: [], + insResult: null + } } }) this.determineWhetherToCollectData() @@ -1143,29 +1152,31 @@ }) }, currentTable(val1, val0) { - if(val0 !=null && val1 != val0){ - if(this.tableLists.find(m=>m.templateId==val1)&&(this.tableLists.find(m=>m.templateId==val1).templateName=='鎴愬搧缂嗘楠屽師濮嬭褰�')){ - if(this.casing.length>0){ - this.handleChange(this.casing[0].id,3) + if (val0 != null && val1 != val0) { + if(this.tableLists.find(m=>m.templateId==val1)&&(this.tableLists.find(m=>m.templateId==val1).templateName=='鎴愬搧缂嗘楠屽師濮嬭褰�')){ + if(this.casing.length>0){ + this.handleChange(this.casing[0].id,3) + } + return } - return - } - if(this.changeType && this.changeType>0){ - return - } + if(this.changeType&&this.changeType>0){ + return + } this.tableLists.forEach(async (m, i) => { if (m.templateId == val1) { let list = await this.getCurrentProduct(this.currentSample.id,0) this.currentSample.insProduct = this.HaveJson(list) - // console.log(this.currentSample) + this.param = {} this.currentSample.insProduct.forEach(a => { - this.param[a.id] = { - insValue: [], - comValue: [], - resValue: null, - equipValue: [], - equipName: [], - insResult: null + if(this.handleCasing(a.inspectionItem)){ + this.param[a.id] = { + insValue: [], + comValue: [], + resValue: null, + equipValue: [], + equipName: [], + insResult: null + } } }) this.getReportModel(this.currentSample.id) @@ -1194,7 +1205,6 @@ } } }) - this.handleCasing() } }, equipForm:{ @@ -1287,6 +1297,11 @@ } }, handleDataAcquisition(data){ + if(this.dataAcquisitionEidtAble){ + this.getDataType = 1; + }else{ + this.getDataType = 2; + } this.dataAcquisitionInfo = {} this.getData = [] for (let i in data){ @@ -1295,8 +1310,14 @@ child:[] } for(let j in data[i]){ + let str0 = '' + if(i==j){ + str0 = i+',' + }else{ + str0 = i+','+j + } if(j!='frequency'&&data[i][j]&&typeof data[i][j].result == 'string'){ - this.dataAcquisitionInfo[i+','+j] = { + this.dataAcquisitionInfo[str0] = { value:data[i][j].result, frequency:data[i].frequency } @@ -1304,7 +1325,6 @@ list.forEach((item,index)=>{ let num0 = 0; let str = '' - let str0 = i+','+j item.forEach(m=>{ if(m.v.ps&&(m.v.ps.value=='妫�楠屽瓙椤�'||m.v.ps.value=='妫�楠岄」')){ if(m.v.ps&&m.v.ps.value=='妫�楠岄」'){ @@ -1327,7 +1347,12 @@ }) }) }else if(j!='frequency'&&data[i][j]&&Array.isArray(data[i][j].result)){ - let str0 = i+','+j + let str0 = '' + if(i==j){ + str0 = i+',' + }else{ + str0 = i+','+j + } let list = this.tableList[0].arr let maxNum = 0 list.forEach((item,index)=>{ @@ -1363,6 +1388,13 @@ } }) }) + // let arr3 = [] + // for (let l=0 ;i<data[i][j].result.length;i++){ + // arr3.push({ + // id:, + // value: + // }) + // } let obj0 = { name:j, arr:data[i][j].result, @@ -1372,7 +1404,7 @@ if(data[i][j].result&&Array.isArray(data[i][j].result)&&data[i][j].result.length>maxNum){ obj.child.push(obj0) }else{ - this.dataAcquisitionInfo[i+','+j] = { + this.dataAcquisitionInfo[str0] = { value:data[i][j].result } } @@ -1384,11 +1416,13 @@ } if(this.getData.length>0){ this.dataGetDia = true + this.getDataIndex = [] }else{ try { // 鍚� Worker 鍙戦�佹秷鎭紝寮�濮嬪鐞嗛�昏緫 this.getDataIndexLoading = false this.dataGetDia = false + this.getDataTypeId = '' this.worker0.postMessage(JSON.stringify({ dataAcquisitionInfo: this.dataAcquisitionInfo, list:this.tableList[0].arr @@ -1404,6 +1438,8 @@ let {list,n} = result.value this.$set(this.tableList[0],'arr',list) this.changeInput('',`${this.currentSample.insProduct[0].templateId}-${n.r}-${n.c}-${n.i}`,n) + }else if(result.getDataTypeId){ + this.getDataTypeId = result.getDataTypeId } }; }, @@ -1977,6 +2013,14 @@ this.collected = collected this.temDataAcquisition = temDataAcquisition }, + uploadSample(){ + this.$axios.post(this.$api.insOrderPlan.doInsOrder, { + id: this.id, + laboratory: this.sonLaboratory + }).then(async res => { + this.sampleProduct = res.data.sampleProduct + }) + }, async getCurrentProduct(id,type){ this.tableLoading = true; let res = await this.$axios.post(this.$api.insOrderPlan.getInsProduct+'?id='+id+'&type='+type+'&laboratory='+this.sonLaboratory) @@ -2053,15 +2097,18 @@ this.currentSample = this.HaveJson(row) let list = await this.getCurrentProduct(row.id,0) this.currentSample.insProduct = this.HaveJson(list) - this.handleCasing() + this.param = {} + this.changeType = 0; this.currentSample.insProduct.forEach(a => { - this.param[a.id] = { - insValue: [], - comValue: [], - resValue: null, - equipValue: [], - equipName: [], - insResult: null + if(this.handleCasing(a.inspectionItem)){ + this.param[a.id] = { + insValue: [], + comValue: [], + resValue: null, + equipValue: [], + equipName: [], + insResult: null + } } }) this.getReportModel(row.id) @@ -2080,9 +2127,15 @@ currentTable:this.currentTable })); }, - handleCasing(){ - if(this.tableLists.find(m=>m.templateId==this.currentTable)&&(this.tableLists.find(m=>m.templateId==this.currentTable).templateName!='鎴愬搧缂嗘楠屽師濮嬭褰�')){ - this.currentSample.insProduct = this.currentSample.insProduct.filter(m=>!m.inspectionItem.includes('鏉惧绠�')) + handleCasing(inspectionItem){ + if(this.changeType!=3){ + if(inspectionItem.includes('鏉惧绠�')){ + return false + }else{ + return true + } + }else{ + return true } }, getReportModel(id){ @@ -2098,10 +2151,11 @@ }) }, async handleChange(m,type){ - this.changeType = type; + this.changeType = type if(m){ let list = await this.getCurrentProduct(m,type) if(list.length>0){ + this.param = {} list.forEach(a => { this.param[a.id] = { insValue: [], @@ -2596,6 +2650,7 @@ } catch (e) {} try { let equipName = JSON.parse(a.insProductResult.equipName) + // console.log(2222222,equipName) if(this.tableLists.find(m=>m.templateId==this.currentTable)&&(this.tableLists.find(m=>m.templateId==this.currentTable).templateName=='娓╁害寰幆妫�楠屽師濮嬭褰�'||this.tableLists.find(m=>m.templateId==this.currentTable).templateName.includes('鐑惊鐜�')||this.tableLists.find(m=>m.templateId==this.currentTable).templateName.includes('娓╁崌璇曢獙'))){ this.param[a.id].equipName = [] for (let i = 0; i < equipName.length; i++) { @@ -2607,7 +2662,8 @@ } } for (let i = 0; i < equipName.length; i++) { - if(this.tableLists.find(m=>m.templateId==this.currentTable)&&(this.tableLists.find(m=>m.templateId==this.currentTable).templateName=='娓╁害寰幆妫�楠屽師濮嬭褰�'||this.tableLists.find(m=>m.templateId==this.currentTable).templateName=='鐑惊鐜楠屽師濮嬭褰�'||this.tableLists.find(m=>m.templateId==this.currentTable).templateName=='娓╁崌璇曢獙鍘熷璁板綍妯℃澘')){ + if(this.tableLists.find(m=>m.templateId==this.currentTable)&&(this.tableLists.find(m=>m.templateId==this.currentTable).templateName=='娓╁害寰幆妫�楠屽師濮嬭褰�'||this.tableLists.find(m=>m.templateId==this.currentTable).templateName.includes('鐑惊鐜�')||this.tableLists.find(m=>m.templateId==this.currentTable).templateName.includes('娓╁崌璇曢獙'))){ + console.log(2222222,equipName) // 娓╁害寰幆璧嬪�� this.$set(this.equipForm,`value`+i,equipName[i].v) this.param[a.id].equipName[i].v.v = equipName[i].v @@ -2623,7 +2679,10 @@ }) this.handleExcelMethod() }, - changeInput(m, code, n) { + changeInput(m, code, n,getDataType) { + if(getDataType=='getDataType'){ + this.getDataType = 2; + } // let str = code.split('-') // let pId = str[3] // if(!this.param[pId].equipValue||this.param[pId].equipValue.length==0||!this.param[pId].equipValue[0].v.v){ @@ -2651,6 +2710,26 @@ // return // } // } + let str = code.split('-') + let pId = str[3] + for(let i =0;i<this.currentSample.insProduct.length;i++){ + if(this.currentSample.insProduct[i].id==pId&&(this.currentSample.insProduct[i].ask=='-'||this.currentSample.insProduct[i].ask=='/'||this.currentSample.insProduct[i].ask=='鈥�')){ + this.tableList[0].arr.forEach(item=>{ + item.forEach(m=>{ + if(m.i==pId&&m.v.ps&&m.v.ps.value=='缁撹'){ + this.$set(m.v,'v',3) + } + }) + }) + if(this.param[pId].insResult&&this.param[pId].insResult.v){ + this.param[pId].insResult.v.v = 3 + } + this.saveInsContext() + return + } + } + // this.currentTable. + // if(!this.param[pId].equipValue||this.param[pId].equipValue.length==0||!this.param[pId].equipValue[0].v.v){} if (n) { // if (this.PROJECT === '瑁呭鐢电紗') { // let num2 = new this.$Big(n.v.v) @@ -2676,7 +2755,8 @@ currentSample:this.currentSample, PROJECT:this.PROJECT, param:this.param, - currentTable:this.currentTable + currentTable:this.currentTable, + getDataTypeId:this.getDataTypeId })); } catch (error) { console.log(444,error); @@ -2700,7 +2780,28 @@ } } } - this.saveInsContext() + console.log(99999,this.result.value.getDataTypeId) + if(this.isGet&&!this.dataAcquisitionEidtAble){ + if(this.result.value.getDataTypeId==''){ + return + } + setTimeout(()=>{ + this.saveInsContext() + },2000) + }else if(this.isGet&&this.dataAcquisitionEidtAble){ + if(this.getDataType==1){ + if(this.result.value.getDataTypeId==''){ + return + } + setTimeout(()=>{ + this.saveInsContext() + },2000) + }else{ + this.saveInsContext() + } + }else{ + this.saveInsContext() + } }) break; case 'tableList': @@ -3094,8 +3195,8 @@ return }, saveInsContext() { - console.log(1111,this.param) try { + console.log(1111,this.param) if(this.param){ this.$axios.post(this.$api.insOrderPlan.saveInsContext, { param: JSON.stringify(this.param) @@ -3169,9 +3270,9 @@ getAuthorizedPerson() { this.$axios.get(this.$api.user.getUserMenu).then(res => { let data = [] - let userName = JSON.parse(localStorage.getItem("user")).name; + // let userName = JSON.parse(localStorage.getItem("user")).name; res.data.forEach(a => { - if(a.name !== userName) { + if(!this.inspectorList.includes(a.name)) { data.push({ label: a.name, value: a.id @@ -3221,16 +3322,18 @@ this.currentSample = this.HaveJson(this.sampleProduct[index - 1]) let list = await this.getCurrentProduct(this.currentSample.id,0) this.currentSample.insProduct = this.HaveJson(list) - this.handleCasing() this.param = {} + this.changeType = 0; this.currentSample.insProduct.forEach(a => { - this.param[a.id] = { - insValue: [], - comValue: [], - resValue: null, - equipValue: [], - equipName: [], - insResult: null + if(this.handleCasing(a.inspectionItem)){ + this.param[a.id] = { + insValue: [], + comValue: [], + resValue: null, + equipValue: [], + equipName: [], + insResult: null + } } }) this.getTableLists() -- Gitblit v1.9.3