From 57e76b55709e8ea88a83ab6c3f665fd9ee7fd64c Mon Sep 17 00:00:00 2001 From: licp <lichunping@guanfang.com.cn> Date: 星期三, 03 七月 2024 14:23:48 +0800 Subject: [PATCH] Merge branch 'master' of http://114.132.189.42:9002/r/center-lims-before into master --- src/components/do/b1-inspect-order-plan/Inspection.vue | 206 ++++++++++++++++++++++++++++++++++++++++----------- 1 files changed, 161 insertions(+), 45 deletions(-) diff --git a/src/components/do/b1-inspect-order-plan/Inspection.vue b/src/components/do/b1-inspect-order-plan/Inspection.vue index 1711c52..1b84f9a 100644 --- a/src/components/do/b1-inspect-order-plan/Inspection.vue +++ b/src/components/do/b1-inspect-order-plan/Inspection.vue @@ -257,7 +257,7 @@ </el-form> </div> <div class="center"> - <div class="search" style="text-align: left;display: flex;align-items: center;justify-content: space-between;"> + <div class="search" style="text-align: left;display: flex;align-items: center;justify-content: space-between;overflow-x: auto;"> <div style="display: flex;align-items: center;"> <span v-if="tableList.length>0">妫�楠屾ā鏉匡細</span> <el-radio-group v-model="currentTable" size="small"> @@ -265,7 +265,7 @@ size="small">{{ item.templateName }}</el-radio-button> </el-radio-group> </div> - <div> + <div style="display: flex;align-items: center;"> <span v-if="fibers.length>0"> 鍏夌氦甯︼細</span> <el-radio-group v-model="currentTab" size="small" v-if="fibers.length>0" @input="m=>handleChange(m,1)"> <el-radio-button :label="item.id" v-for="(item,index) in fibers" :key="index" @@ -276,6 +276,16 @@ <el-radio-button :label="item.id" v-for="(item,index) in fiber" :key="index" size="small">{{ item.color }}</el-radio-button> </el-radio-group> + <el-form :inline="true" :model="otherForm" class="form-inline" label-width="50px" style="padding-top: 0;padding-left: 10px;"> + <el-form-item label="娓╁害:" style="margin-bottom: 0;"> + <el-input clearable v-model="otherForm.temperature" size="small" placeholder="" style="width: 50px;" @change="m=>subOtherForm(m,'temperature')"></el-input> + <span style="margin-left: 4px;">鈩�</span> + </el-form-item> + <el-form-item label="婀垮害:" style="margin-bottom: 0;"> + <el-input clearable v-model="otherForm.humidity" size="small" placeholder="" style="width: 50px;" @change="m=>subOtherForm(m,'humidity')"></el-input> + <span style="margin-left: 4px;">%</span> + </el-form-item> + </el-form> </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!='娓╁害寰幆妫�楠屽師濮嬭褰�'"> @@ -385,19 +395,20 @@ </table> </div> <div class="center-box" v-loading="tableLoading" v-else> + <el-divider></el-divider> <h4 style="margin-bottom: 20px;">娓╁害寰幆妫�楠屽師濮嬭褰�</h4> - <el-form :inline="true" :model="wareForm" class="form-inline" label-width="100px"> + <el-form :inline="true" :model="wareForm" class="form-inline" label-width="100px" style="justify-content: flex-start;display: flex;align-items: center;width: 100%;"> <el-form-item label="鍨嬪彿:" style="margin-bottom: 0;"> - <el-input clearable v-model="wareForm.entrustCode" disabled size="small" placeholder=""></el-input> + <el-input clearable v-model="wareForm0.model" disabled size="small" placeholder=""></el-input> </el-form-item> <el-form-item label="璇曢獙鏂规硶:" style="margin-bottom: 0;"> - <el-input clearable v-model="wareForm.sampleCode" disabled size="small" placeholder=""></el-input> + <el-input clearable v-model="wareForm0.methodName" disabled size="small" placeholder=""></el-input> </el-form-item> - <el-form-item label="妫�娴嬩緷鎹�:" style="margin-bottom: 0;"> - <el-input clearable v-model="wareForm.sample" disabled size="small" placeholder=""></el-input> - </el-form-item> + <!-- <el-form-item label="妫�娴嬩緷鎹�:" style="margin-bottom: 0;"> + <el-input clearable v-model="wareForm0.sample" disabled size="small" placeholder=""></el-input> + </el-form-item> --> <el-form-item label="寰幆娆℃暟:" style="margin-bottom: 0;"> - <el-select v-model="wareForm.value" placeholder="璇烽�夋嫨" size="small"> + <el-select v-model="wareForm.inspectionItem" placeholder="璇烽�夋嫨" size="small" @change="m=>wareFormChange(m,'inspectionItem')"> <el-option v-for="item in numOptions" :key="item.value" @@ -407,7 +418,7 @@ </el-select> </el-form-item> <el-form-item label="娓╁害:" style="margin-bottom: 0;"> - <el-select v-model="wareForm.value" placeholder="璇烽�夋嫨" size="small"> + <el-select v-model="wareForm.inspectionItemSubclass" placeholder="璇烽�夋嫨" size="small" @change="m=>wareFormChange(m,'inspectionItemSubclass')"> <el-option v-for="item in temperatureOptions" :key="item.value" @@ -419,9 +430,9 @@ </el-form-item> </el-form> <el-divider></el-divider> - <el-form :inline="true" :model="wareForm" label-width="100px" style="justify-content: flex-start;display: flex;align-items: center;width: 100%;margin-bottom: 20px;"> + <el-form :inline="true" :model="wareForm0" label-width="100px" style="justify-content: flex-start;display: flex;align-items: center;width: 100%;"> <el-form-item label="浠櫒鍚嶇О:"> - <el-select v-model="wareForm.value" placeholder="璇烽�夋嫨" size="small"> + <el-select v-model="wareForm0.value" placeholder="璇烽�夋嫨" size="small"> <el-option v-for="item in temperatureOptions" :key="item.value" @@ -431,7 +442,7 @@ </el-select> </el-form-item> <el-form-item label="浠櫒缂栧彿:"> - <el-select v-model="wareForm.value" placeholder="璇烽�夋嫨" size="small"> + <el-select v-model="wareForm0.value" placeholder="璇烽�夋嫨" size="small"> <el-option v-for="item in temperatureOptions" :key="item.value" @@ -441,7 +452,7 @@ </el-select> </el-form-item> <el-form-item label="浠櫒鍚嶇О:" style="margin-left: 80px;"> - <el-select v-model="wareForm.value" placeholder="璇烽�夋嫨" size="small"> + <el-select v-model="wareForm0.value" placeholder="璇烽�夋嫨" size="small"> <el-option v-for="item in temperatureOptions" :key="item.value" @@ -451,7 +462,7 @@ </el-select> </el-form-item> <el-form-item label="浠櫒缂栧彿:"> - <el-select v-model="wareForm.value" placeholder="璇烽�夋嫨" size="small"> + <el-select v-model="wareForm0.value" placeholder="璇烽�夋嫨" size="small"> <el-option v-for="item in temperatureOptions" :key="item.value" @@ -464,53 +475,78 @@ <el-table :data="wareTableData" border - style="width: 100%"> + style="width: 100%;margin-bottom: 30px;" align="center"> <el-table-column - fixed - prop="date" + label="搴忓彿" + type="index" + width="65" + align="center" + > + </el-table-column> + <el-table-column + prop="bushColor" label="绠¤壊鏍�" - width="150"> + width="120" + align="center"> </el-table-column> <el-table-column - prop="name" + prop="code" label="鍏夌氦甯︾紪鍙�" - width="120"> + width="150" + align="center"> </el-table-column> <el-table-column - prop="province" + prop="color" label="鍏夌氦鑹叉爣" + align="center" width="120"> </el-table-column> <el-table-column - prop="city" + prop="inspectionItemClass" + label="鍏夌氦椤圭洰" + align="center" + width="130"> + </el-table-column> + <el-table-column + prop="value0" label="澶栫" - width="120"> + align="center" + width="130"> <template slot-scope="scope"> - <el-input size="small" v-model="scope.row.input" placeholder="璇疯緭鍏ュ唴瀹�"></el-input> + <el-input size="small" v-model="scope.row.value0" placeholder="" @change="m=>changeItem(m,0)"></el-input> </template> </el-table-column> <el-table-column - prop="address" + prop="value1" label="鍐呯" - width="300"> + align="center" + width="130"> <template slot-scope="scope"> - <el-input size="small" v-model="scope.row.input" placeholder="璇疯緭鍏ュ唴瀹�"></el-input> + <el-input size="small" v-model="scope.row.value1" placeholder="" @change="m=>changeItem(m,1)"></el-input> </template> </el-table-column> <el-table-column prop="zip" + align="center" label="骞冲潎鍊�" - width="120"> + min-width="150"> </el-table-column> <el-table-column - prop="zip" - label="琛板噺鏌�" - width="120"> + prop="lastValue" + label="琛板噺宸�" + align="center" + min-width="150"> </el-table-column> <el-table-column - prop="zip" - label="妫�娴嬩汉" - width="120"> + prop="insResult" + label="缁撹" + align="center" + min-width="150"> + <template slot-scope="scope"> + <span v-if="scope.row.insResult===1" style="color: green;">鍚堟牸</span> + <span v-if="scope.row.insResult===0" style="color: red;">涓嶅悎鏍�</span> + <span v-else>寰呭畾</span> + </template> </el-table-column> </el-table> </div> @@ -764,12 +800,20 @@ fiber:[], fibers:[], currentTab:null, - wareForm:{}, + wareForm:{ + inspectionItem:1, + inspectionItemSubclass:20, + }, + wareForm0:{}, numOptions:[], temperatureOptions:[], wareTableData:[ {} - ] + ], + otherForm:{ + humidity:null, + temperature:null, + }, } }, computed: { @@ -816,8 +860,17 @@ } this.sampleProduct = res.data.sampleProduct this.currentSample = this.HaveJson(this.sampleProduct[0]) + let insProduct = this.HaveJson(this.currentSample.insProduct) + if(insProduct&&insProduct.length>0){ + let {temperature,humidity} = insProduct[0]; + this.otherForm = { + temperature:temperature?temperature:null, + humidity:humidity?humidity:null, + } + } let list = await this.getCurrentProduct(this.currentSample.id,0) this.currentSample.insProduct = this.HaveJson(list) + console.log(this.currentSample) this.currentSample.insProduct.forEach(a => { this.param[a.id] = { insValue: [], @@ -831,7 +884,6 @@ this.getReportModel(this.currentSample.id) if (this.currentSample.index == undefined) this.currentSample['index'] = 1 let bushing = this.currentSample.bushing - // this.handleTableData() this.getTableLists(); this.componentData.currentId = val; this.currentKey = 1; @@ -862,6 +914,45 @@ }, }, methods: { + changeItem(m,index){}, + wareFormChange(m,type){ + if(m&&type){ + this.wareForm[type] = Number(m) + } + let wareForm = {...this.wareForm} + wareForm.inspectionItemSubclass = wareForm.inspectionItemSubclass+'鈩�' + this.$axios.post(this.$api.insOrderPlan.temCycle,{ + sampleId:this.currentSample.id, + ...wareForm + }).then(res => { + if (res.code == 201) return + let {productVos,sampleVo} = res.data + this.wareForm0 = sampleVo + productVos = productVos.map(m=>{ + let obj = {...m,...m.insProduct} + return obj + }) + this.wareTableData = productVos + }) + }, + subOtherForm(m,type){ + let ids = [] + for (let i in this.param) { + ids.push(i) + } + this.$axios.post(this.$api.insOrderPlan.write,{ + [type]:Number(m), + ids + }, { + headers: { + 'Content-Type': 'application/json' + }, + noQs:true + }).then(res => { + if (res.code == 201) return + this.$message.success('淇濆瓨鎴愬姛') + }) + }, getPower(){ let power = JSON.parse(sessionStorage.getItem('power')) let fileDel = false @@ -970,7 +1061,7 @@ if(bushing&&bushing.length>0){ this.bushing = bushing } - this.handleTableData() + // this.handleTableData() this.getTableLists(); this.currentKey = row.index this.currentTab = null; @@ -1118,6 +1209,33 @@ handleTableData() { this.excelMethodList = [] this.widthList = this.tableList[0].style.columnlen; + // 娓╁害寰幆妫�楠屽師濮嬭褰�--寮�濮� + if(this.tableLists.find(m=>m.templateId==this.currentTable)||this.tableLists.find(m=>m.templateId==this.currentTable).templateName!='娓╁害寰幆妫�楠屽師濮嬭褰�'){ + let ask = this.currentSample.insProduct[0].ask + let askList = ask.split(';') + this.numOptions = [] + for (let i = 1; i <= askList[askList.length-1]; i++) { + this.numOptions.push({ + value:i, + label:i + }) + } + let mySet1 = new Set(); + askList.forEach((m,i) => { + if(i<askList.length-1){ + mySet1.add(m.split(',')[0].replace('鈩�','')) + } + }) + this.temperatureOptions = [] + mySet1.forEach(m => { + this.temperatureOptions.push({ + value:m, + label:m + }) + }) + this.wareFormChange() + } + // 娓╁害寰幆妫�楠屽師濮嬭褰�---缁撴潫 this.tableList.forEach(a => { let mcList = [] a.template.forEach(b => { @@ -1146,6 +1264,7 @@ count++ }) }) + // 闂寮�濮� this.tableList.forEach(a => { let dels = new Set() let ids = [] @@ -1202,6 +1321,8 @@ } } }) + console.log(5555,a.template) + // return ids.forEach(id => { for (let b = 0; b < a.template.length; b++) { if (a.template[b].r === id.r) { @@ -1236,6 +1357,7 @@ } }) }) + // 闂缁撴潫 this.tableList.forEach(a => { let arrs = [] let set = new Set() @@ -1346,7 +1468,6 @@ this.param[a.id].insResult.v.v = a.insResult } catch (e) {} }) - console.log(this.tableList) this.handleExcelMethod() }, changeInput(m, code) { @@ -1394,10 +1515,8 @@ try { if (this.currentSample.insProduct.find(m => m.id == item.i)) { let ask = this.currentSample.insProduct.find(m => m.id == item.i).ask?this.currentSample.insProduct.find(m => m.id == item.i).ask.split('&'):null; - console.log(comValue) let res = Object.values(comValue)[0] let comp = [] - console.log(res, ask) if(res==''||res==null||res==undefined||res=='Infinity'){ item.v.v = '' }else{ @@ -1411,10 +1530,8 @@ return eval(res) == eval(str) } } else if (m.includes('鈮�')) { - console.log(res, eval(res <= m.split('鈮�')[1])) return eval(res) >= eval(m.split('鈮�')[1]) }else if (m.includes('鈮�')) { - console.log(res,m.split('鈮�')[1]) return eval(res) <= eval(m.split('鈮�')[1]) }else if (m.includes('<')) { return eval(res) < eval(m.split('<')[1]) @@ -1428,7 +1545,6 @@ return eval(res) >= eval(k[0]) && eval(res) <= eval(k[1]) }else if(m.includes('卤')){ let k = m.split('卤') - console.log(eval(res),eval((k[0] - k[1])),eval(res),eval((k[0] + k[1]))) return eval(res) >= eval((k[0] - k[1])) && eval(res) <= eval((k[0] + k[1])) }else if(m.includes('锛�')){ return eval(res) > eval(m.split('锛�')[1]) -- Gitblit v1.9.3