From f51920b6d720dd10cb61b2fb2973cfdb0dc59577 Mon Sep 17 00:00:00 2001 From: licp <lichunping@guanfang.com.cn> Date: 星期六, 03 八月 2024 11:55:29 +0800 Subject: [PATCH] 修改委托要求温度循环提交报错 --- src/components/do/b1-inspect-order-plan/Inspection.vue | 291 ++++++++++++++++++++++++++++++++++++++++++++++++++++------ 1 files changed, 261 insertions(+), 30 deletions(-) diff --git a/src/components/do/b1-inspect-order-plan/Inspection.vue b/src/components/do/b1-inspect-order-plan/Inspection.vue index 003f684..53f9118 100644 --- a/src/components/do/b1-inspect-order-plan/Inspection.vue +++ b/src/components/do/b1-inspect-order-plan/Inspection.vue @@ -125,6 +125,9 @@ width: 100%; height: 100%; } + .table_input >>>.el-input__inner{ + border-color: rgba(0, 0, 0, 0.5) !important; + } .collection { width: 50px; @@ -143,7 +146,7 @@ .table_caret{ font-size: 16px; margin: 0 5px; - color: rgba(0, 0, 0, 0.1); + color: rgba(0, 0, 0, 0.5); } .table_caret:hover{ color: #409eff; @@ -225,6 +228,9 @@ .thermal-table .el-input{ display: flex; align-items: center; + } + .custom-dialog .el-dialog__body { + max-width: 1000px; /* 璁剧疆鏈�澶у搴� */ } </style> <template> @@ -318,7 +324,7 @@ </el-form-item> </el-form> <el-button type="primary" size="small" v-if="(dataAcquisitionEidt>0||tableLists.find(m=>m.templateId==currentTable)&&tableLists.find(m=>m.templateId==currentTable).templateName=='娓╁害寰幆妫�楠屽師濮嬭褰�'&&temDataAcquisition)&&PROJECT=='妫�娴嬩腑蹇�'&&state==1" @click="getDataAcquisitionDevice" :loading="dataAcquisitionLoading">鏁版嵁閲囬泦</el-button> - <el-button :type="dataAcquisitionEidtAble?'':'primary'" size="small" v-if="(dataAcquisitionEidt>0)&&PROJECT=='妫�娴嬩腑蹇�'&&collected&&state==1" @click="dataAcquisitionEidtAble=!dataAcquisitionEidtAble">{{dataAcquisitionEidtAble?'鍏抽棴缂栬緫':'缂栬緫鏁伴噰'}}</el-button> + <el-button :type="dataAcquisitionEidtAble?'':'primary'" size="small" v-if="(dataAcquisitionEidt>0||(tableLists.find(m=>m.templateId==currentTable)&&tableLists.find(m=>m.templateId==currentTable).templateName=='娓╁害寰幆妫�楠屽師濮嬭褰�'))&&PROJECT=='妫�娴嬩腑蹇�'&&collected&&state==1" @click="dataAcquisitionEidtAble=!dataAcquisitionEidtAble">{{dataAcquisitionEidtAble?'鍏抽棴缂栬緫':'缂栬緫鏁伴噰'}}</el-button> </div> </div> <div class="center-box" id="nav" v-loading="tableLoading" v-if="!tableLists.find(m=>m.templateId==currentTable)||(tableLists.find(m=>m.templateId==currentTable).templateName!='娓╁害寰幆妫�楠屽師濮嬭褰�'&&!tableLists.find(m=>m.templateId==currentTable).templateName.includes('鐑惊鐜�')&&!tableLists.find(m=>m.templateId==currentTable).templateName.includes('娓╁崌璇曢獙'))"> @@ -364,7 +370,8 @@ </template> </template> <template v-else-if="n.v.ps!=undefined && n.v.ps.value==='璁惧缂栫爜' && state==1"> - <el-select v-model="n.v.v" placeholder="璁惧" @visible-change="e=>getEquipOptions(e,n.i)" remote + <el-select v-model="n.v.v" placeholder="璁惧" + class="table_input" @visible-change="e=>getEquipOptions(e,n.i)" remote @change="(val)=>changeEquip(val, n)"> <el-option v-for="item in equipOptions" :key="item.value" :label="item.value" :value="item.value"> </el-option> @@ -537,7 +544,7 @@ {{ '澶栫'+(index+1) }} </template> <template slot-scope="scope"> - <el-input size="small" v-model="scope.row.arr[index].value0" placeholder="" :disabled="state>1" @change="m=>changeItem(scope.row.arr[index])"></el-input> + <el-input size="small" v-model="scope.row.arr[index].value0" placeholder="" :disabled="state>1||!dataAcquisitionEidtAble" @change="m=>changeItem(scope.row.arr[index])"></el-input> </template> </el-table-column> <el-table-column @@ -549,7 +556,7 @@ {{ '鍐呯'+(index+1) }} </template> <template slot-scope="scope"> - <el-input size="small" :disabled="state>1" v-model="scope.row.arr[index].value1" placeholder="" @change="m=>changeItem(scope.row.arr[index])"></el-input> + <el-input size="small" :disabled="state>1||!dataAcquisitionEidtAble" v-model="scope.row.arr[index].value1" placeholder="" @change="m=>changeItem(scope.row.arr[index])"></el-input> </template> </el-table-column> <el-table-column @@ -784,6 +791,41 @@ <el-button type="primary" @click="submit()">纭� 瀹�</el-button> </span> </el-dialog> + <el-dialog title="鏁版嵁閲囬泦-璁$畻鏁版嵁閫夋嫨" :visible.sync="dataGetDia" :close-on-click-modal="false" :close-on-press-escape="false" :show-close="false" custom-class="custom-dialog"> + <div> + <table border="1" cellpadding="10" class="thermal-table"> + <tr> + <td style="width: 120px;">妫�楠岄」</td> + <td style="width: 120px;">妫�楠屽瓙椤�</td> + <td>鏁伴噰鏁版嵁</td> + </tr> + <template v-for="(item,index) in getData"> + <tr> + <td :rowspan="item.child.length">{{item.faName}}</td> + <td>{{ item.child[0].name }}</td> + <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-group> + </td> + </tr> + <tr v-for="(m,i) in item.child" :key="i+'bbbbbbbbbbbbbb'" v-show="i>0"> + <td>{{ m.name }}</td> + <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-group> + </td> + </tr> + </template> + </table> + </div> + <span slot="footer" class="dialog-footer"> + <el-button type="primary" @click="submitDataGet()" :loading="getDataIndexLoading">纭� 瀹�</el-button> + </span> + </el-dialog> </div> </template> @@ -798,6 +840,7 @@ }, data() { return { + dataGetDia:false, wareTableDataLoading:false, fileAdd:false, sampleVisible: false, @@ -947,6 +990,7 @@ worker0: null, wareLength:[], dataAcquisitionInfo:{}, + dataAcquisitionInfoNew:{}, dataAcquisitionEidt:0, dataAcquisitionEidtAble:false, dataAcquisitionLoading:false, @@ -961,6 +1005,32 @@ }, thermalCyclingLoading:false, temDataAcquisition:false, + getData:[ + { + faName:'娉㈤暱闄勫姞琛板噺', + child:[ + { + name:'1285nm~1330nm', + arr:[12,13,14,15], + }, + { + name:'1525nm~1575nm', + arr:[12,13,14,15], + }, + ] + }, + { + faName:'鎴嚦娉㈤暱', + child:[ + { + name:'鎴嚦娉㈤暱', + arr:[12,13,14,15], + } + ] + } + ], + getDataIndex:[], + getDataIndexLoading:false } }, computed: { @@ -1196,27 +1266,145 @@ if(res.code!=200){ return } - this.dataAcquisitionInfo = res.data - try { - // 鍚� Worker 鍙戦�佹秷鎭紝寮�濮嬪鐞嗛�昏緫 - this.worker0.postMessage(JSON.stringify({ - dataAcquisitionInfo: this.dataAcquisitionInfo, - list:this.tableList[0].arr - })); - } catch (error) { - console.log(1111,error); - } - // 鐩戝惉 Worker 杩斿洖鐨勭粨鏋� - this.worker0.onmessage = (event) => { - let result = JSON.parse(event.data); - if(result.method=='changeInput'){ - 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) - } - }; + this.dataAcquisitionInfoNew = this.HaveJson(res.data) + this.handleDataAcquisition(res.data) }) } + }, + handleDataAcquisition(data){ + this.dataAcquisitionInfo = {} + this.getData = [] + for (let i in data){ + let obj = { + faName:i, + child:[] + } + for(let j in data[i]){ + if(j!='frequency'&&data[i][j]&&!data[i][j].isCalculation){ + this.dataAcquisitionInfo[i+','+j] = { + value:data[i][j].result, + frequency:data[i].frequency + } + }else if(j!='frequency'&&data[i][j]&&data[i][j].isCalculation){ + let str0 = i+','+j + let list = this.tableList[0].arr + let maxNum = 0 + list.forEach((item,index)=>{ + let num0 = 0; + let str = '' + item.forEach(m=>{ + if(m.v.ps&&(m.v.ps.value=='妫�楠屽瓙椤�'||m.v.ps.value=='妫�楠岄」')){ + if(m.v.ps&&m.v.ps.value=='妫�楠岄」'){ + if(num0==0){ + str = m.v.v+',' + num0++ + } + } + if(m.v.ps&&m.v.ps.value=='妫�楠屽瓙椤�'){ + if(num0==1){ + str = str+m.v.v + } + } + let num = 0; + list[index].forEach(n=>{ + if(n.v.ps&&n.v.ps.value&&typeof n.v.ps.value == 'string'&&n.v.ps.value.includes('妫�楠屽��')){ + num++ + } + }) + if(str0==str){ + maxNum = num + } + } + }) + }) + console.log(44444444444,maxNum) + let obj0 = { + name:j, + arr:data[i][j].result, + maxNum:maxNum + } + obj.child.push(obj0) + } + } + if(obj.child.length>0){ + this.getData.push(obj) + } + } + if(this.getData.length>0){ + this.dataGetDia = true + }else{ + try { + // 鍚� Worker 鍙戦�佹秷鎭紝寮�濮嬪鐞嗛�昏緫 + this.worker0.postMessage(JSON.stringify({ + dataAcquisitionInfo: this.dataAcquisitionInfo, + list:this.tableList[0].arr + })); + } catch (error) { + console.log(1111,error); + } + } + // 鐩戝惉 Worker 杩斿洖鐨勭粨鏋� + this.worker0.onmessage = (event) => { + let result = JSON.parse(event.data); + if(result.method=='changeInput'){ + 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) + } + }; + }, + beforeDataGetDia(done){ + this.$confirm('鏄惁鍙栨秷鏁版嵁閲囬泦?', "鎻愮ず", { + confirmButtonText: "纭畾", + cancelButtonText: "鍙栨秷", + type: "warning" + }).then(() => { + if(done){ + done() + }else{ + this.dataGetDia = false + this.getDataIndex = [] + } + }).catch(() => {}) + }, + submitDataGet(){ + if(this.getDataIndex.length==0){ + this.$message.error('璇烽�夋嫨闇�瑕佽绠楃殑鏁版嵁') + return + } + this.getDataIndex.sort((a, b) => a - b); + for (let i in this.dataAcquisitionInfoNew){ + for(let j in this.dataAcquisitionInfoNew[i]){ + if(j!='frequency'&&this.dataAcquisitionInfoNew[i]&&this.dataAcquisitionInfoNew[i][j]&&this.dataAcquisitionInfoNew[i][j].isCalculation){ + let arr = [] + for(let k = 0;k<this.dataAcquisitionInfoNew[i][j].result.length;k++){ + if(this.getDataIndex.includes(k)){ + arr.push(this.dataAcquisitionInfoNew[i][j].result[k]) + } + } + if(arr.length>0){ + this.dataAcquisitionInfoNew[i][j].result = arr + } + } + } + } + this.getDataIndexLoading = true; + this.$axios.post(this.$api.deviceScope.formulaCalculation,{ + ...this.dataAcquisitionInfoNew + }, { + headers: { + 'Content-Type': 'application/json' + }, + noQs:true + }).then(res=>{ + this.getDataIndexLoading = false; + if(res.code!=200){ + return + } + this.dataGetDia = false + this.handleDataAcquisition(res.data) + this.getDataIndex = [] + }) }, // 澶氱嚎绋� startWorker() { @@ -1848,6 +2036,12 @@ this.getTableLists(); this.currentKey = row.index this.currentTab = null; + this.worker.postMessage(JSON.stringify({ + type: 'saveData', + tableList:this.tableList, + param:this.param, + currentTable:this.currentTable + })); }, getReportModel(id){ if(this.PROJECT!='妫�娴嬩腑蹇�'){ @@ -1874,6 +2068,12 @@ }) this.getTableLists0(list) this.getReportModel(this.currentSample.id) + this.worker.postMessage(JSON.stringify({ + type: 'saveData', + tableList:this.tableList, + param:this.param, + currentTable:this.currentTable + })); }else{ this.tableLists = [] this.tableList = [] @@ -2028,7 +2228,21 @@ label:m }) }) - this.wareFormChange() + this.wareTableDataLoading = true + this.$axios.post(this.$api.deviceScope.temDataAcquisition2,{ + entrustCode:this.insOrder.entrustCode, + sampleCode:this.currentSample.sampleCode, + model:this.currentSample.model, + }, { + headers: { + 'Content-Type': 'application/json' + }, + noQs:true + }).then(res=>{ + // console.log(res.data) + this.wareFormChange() + }) + // this.wareFormChange() } // 娓╁害寰幆妫�楠屽師濮嬭褰�---缁撴潫 // 鐑惊鐜楠屽師濮嬭褰�---寮�濮� @@ -2294,14 +2508,14 @@ try { let comValue = JSON.parse(a.insProductResult.comValue) for (var i = 0; i < comValue.length; i++) { - this.param[a.id].comValue[i].v.v = comValue[i].v + this.param[a.id].comValue[i].v.v = this.toFixed(comValue[i].v,this.param[a.id].comValue[i].v.ct) } } catch (e) {} try { let insValue = JSON.parse(a.insProductResult.insValue) for (let i = 0; i < insValue.length; i++) { if(this.param[a.id].insValue.find(m=>m.c==insValue[i].c&&m.r==insValue[i].r)){ - this.param[a.id].insValue.find(m=>m.c==insValue[i].c&&m.r==insValue[i].r).v.v = insValue[i].v + this.param[a.id].insValue.find(m=>m.c==insValue[i].c&&m.r==insValue[i].r).v.v = this.toFixed(insValue[i].v,this.param[a.id].insValue.find(m=>m.c==insValue[i].c&&m.r==insValue[i].r).v.ct) this.param[a.id].insValue.find(m=>m.c==insValue[i].c&&m.r==insValue[i].r).u = insValue[i].u // this.param[a.id].insValue[i].v.v = insValue[i].v // this.param[a.id].insValue[i].u = insValue[i].u @@ -2370,7 +2584,7 @@ } } catch (e) {} try { - this.param[a.id].resValue.v.v = a.lastValue + this.param[a.id].resValue.v.v = this.toFixed(a.lastValue,this.param[a.id].resValue.v.ct) this.param[a.id].insResult.v.v = a.insResult } catch (e) {} }) @@ -2576,6 +2790,15 @@ }, getValue(v){ let str = v.v?v.v:(v.v===0?v.v:(v.ct&&v.ct.s?v.ct.s.length>0&&v.ct.s[0].v.replace(new RegExp('\n', 'g'), '<br/>').replace(new RegExp('@', 'g'), '<br/>'):'')) + if(v.ct&&v.ct.fa&&v.ct.fa.includes('.')&&str){ + let num = 0 + let str0 = v.ct.fa.split('.')[1] + num = str0.length + str = Number(str).toFixed(num) + } + if(v.v&&typeof v.v == 'string'&&v.v.includes('@')){ + str = v.v.replace(new RegExp('@', 'g'), '<br/>') + } return str }, getInspectionValueType(id) { @@ -2694,6 +2917,8 @@ getUserInfo() { this.$axios.get(this.$api.user.getUserInfo).then(res => { this.userId = res.data.id + this.componentData.entity.userId = res.data.id + console.log(1111,this.userId) }) }, // 澶嶆牳 @@ -2951,6 +3176,12 @@ } }) this.getTableLists() + this.worker.postMessage(JSON.stringify({ + type: 'saveData', + tableList:this.tableList, + param:this.param, + currentTable:this.currentTable + })); }, caretBushing(num){ let index = this.currentKey0 + num @@ -3082,12 +3313,12 @@ * @returns 鏍煎紡鍖栧悗鐨勫瓧绗︿覆鎴栧師濮嬫暟鍊硷紙鑻ラ厤缃笉绗﹀悎瑕佹眰锛� */ toFixed(v,ct){ - if(v&&ct&&ct.fa&&ct.fa.includes('##')){ + if(v&&ct&&ct.fa){ if(ct.fa.includes('.')){ let num = ct.fa.slice(4).length return Number(v).toFixed(num) }else{ - return Number(v).toFixed(0) + return v } }else{ return v -- Gitblit v1.9.3