From cb57bc6b4abf45dbb0605c94359c63e3b31b4b87 Mon Sep 17 00:00:00 2001 From: licp <lichunping@guanfang.com.cn> Date: 星期二, 10 九月 2024 15:55:57 +0800 Subject: [PATCH] 优化报告生成、修改电路下单传参 --- src/components/do/b1-inspect-order-plan/Inspection.vue | 257 +++++++++++++++------------------------------------ 1 files changed, 77 insertions(+), 180 deletions(-) diff --git a/src/components/do/b1-inspect-order-plan/Inspection.vue b/src/components/do/b1-inspect-order-plan/Inspection.vue index cbbee28..2806de1 100644 --- a/src/components/do/b1-inspect-order-plan/Inspection.vue +++ b/src/components/do/b1-inspect-order-plan/Inspection.vue @@ -253,9 +253,6 @@ <el-col :span="12" style="padding-left: 20px;text-align: left;" >妫�楠屽崟璇︽儏 </el-col> <el-col :span="12" style="text-align: right;"> - <!-- <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;uploadSample()">鏍峰搧鍒囨崲</el-button> <el-button size="small" type="primary" @click="taskVisible=true">浠诲姟鍒囨崲</el-button> <el-button size="small" type="primary" @click="handleSubmit" v-if="state==1" @@ -275,7 +272,7 @@ </el-form-item> <el-form-item label="鏍峰搧缂栧彿:"> <el-tooltip :disabled="!currentSample.sampleCode" :content="currentSample.sampleCode"> - <el-input clearable v-model="currentSample.sampleCode" disabled size="small" placeholder="璇疯緭鍏�" ></el-input> + <el-input clearable v-model="currentSample.sampleCode" disabled size="small" placeholder="璇疯緭鍏�" tooltip></el-input> </el-tooltip> </el-form-item> <el-form-item label="鏍峰搧鍚嶇О:"> @@ -283,6 +280,9 @@ </el-form-item> <el-form-item label="鏍峰搧鏁伴噺:"> <el-input clearable v-model="sampleProduct.length" disabled size="small" placeholder="璇疯緭鍏�" ></el-input> + </el-form-item> + <el-form-item label="璇曢獙鏍囧噯:"> + <span>{{ currentSample.testRequirements?currentSample.testRequirements:'-' }}</span> </el-form-item> <el-form-item label="涓嬪彂鏃堕棿:"> <el-input clearable v-model="insOrder.sendTime" disabled size="small" placeholder="璇疯緭鍏�"></el-input> @@ -298,7 +298,6 @@ </el-form-item> <el-form-item label="澶囨敞:"> <span style="color:red">{{ insOrder.remark?insOrder.remark:'-' }}</span> - <!-- <el-tag v-if="currentKey">{{ insOrder.remark }}</el-tag> --> </el-form-item> </el-form> </div> @@ -310,6 +309,11 @@ <el-radio-button :label="item.templateId" v-for="(item,index) in tableLists" :key="index" size="small">{{ item.templateName }}</el-radio-button> </el-radio-group> + <!-- <span style="margin-left: 20px;margin-right: 10px;">妯℃澘鐗堟湰:</span> + <el-radio-group v-model="currentTableState" size="small"> + <el-radio-button label="0" size="small">鐗堟湰涓�</el-radio-button> + <el-radio-button label="1" size="small">鐗堟湰浜�</el-radio-button> + </el-radio-group> --> </div> <div style="display: flex;align-items: center;"> <span v-if="casing.length>0&&tableLists.find(m=>m.templateId==currentTable)&&tableLists.find(m=>m.templateId==currentTable).templateName=='鎴愬搧缂嗘楠屽師濮嬭褰�'"> 濂楃锛�</span> @@ -345,22 +349,12 @@ <el-tag :type="item.state==1?'success':'danger'" style="float: right;margin-top: 5px;" size="small">{{ item.state==1?'宸叉':'鏈' }}</el-tag> </el-option> </el-select> - <el-form :inline="true" :model="otherForm" class="form-inline" label-width="50px" style="padding-top: 0;padding-left: 10px;" v-if="PROJECT=='妫�娴嬩腑蹇�'"> - <el-form-item label="娓╁害:" style="margin-bottom: 0;"> - <el-input v-model="otherForm.temperature" :disabled="state>1" size="small" placeholder="" style="width: 90px;" @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 v-model="otherForm.humidity" :disabled="state>1" size="small" placeholder="" style="width: 90px;" @change="m=>subOtherForm(m,'humidity')"></el-input> - <span style="margin-left: 4px;">%</span> - </el-form-item> - </el-form> <el-button type="primary" size="small" v-if="(isGet||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="(isGet||(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('娓╁崌璇曢獙'))&&(tableLists.find(m=>m.templateId==currentTable).templateName!='寮у瀭鐗规�ф楠屽師濮嬭褰�')"> + <div class="center-box" id="nav" v-loading="tableLoading" v-if="!tableLists.find(m=>m.templateId==currentTable)||(!tableLists.find(m=>m.templateId==currentTable).templateName.includes('鐢佃矾璇曢獙'))"> <table border="1" class="tables" cellpadding="10" v-for="(item,index) in tableList" :key="index+currentTable+currentSample.id"> <tbody> <tr v-for="(m,i) in item.arr" :key="i"> @@ -439,6 +433,9 @@ </template> <template v-else-if="n.v.ps!=undefined && n.v.ps.value==='鏍峰搧鍨嬪彿'"> <div :style="`font-family:${n.v.ff} !important;`" v-if="currentSample.model!==undefined&¤tSample.model!==null">{{currentSample.model}}</div> + </template> + <template v-else-if="n.v.ps!=undefined && n.v.ps.value==='璇曢獙鏍囧噯'"> + <div :style="`font-family:${n.v.ff} !important;`" v-if="currentSample.testRequirements!==undefined&¤tSample.testRequirements!==null">{{currentSample.testRequirements}}</div> </template> <template v-else-if="n.v.ps!=undefined && n.v.ps.value==='濂楃'"> <div style="display: flex;flex-wrap: nowrap;align-items: center;"> @@ -800,6 +797,12 @@ </table> </div> </div> + <!-- 鐢佃矾璇曢獙 --> + <div v-else-if="tableLists.find(m=>m.templateId==currentTable).templateName.includes('鐢佃矾璇曢獙')" style="width: 100%;overflow-x: auto;overflow-y: visible;"> + <!-- <Circuit></Circuit> --> + <CircuitParameters1 v-if="currentTableState==0" :insProduct="currentSample.insProduct" :orderId="id" :sampleId="currentSample.id" :state="state" :num="currentSample.num1"></CircuitParameters1> + <CircuitParameters2 v-if="currentTableState==1" :insProduct="currentSample.insProduct" :orderId="id" :sampleId="currentSample.id" :state="state" :num="currentSample.num1"></CircuitParameters2> + </div> <el-upload :action="action" :data="{ orderId:id @@ -815,43 +818,6 @@ :delUrl="$api.insOrderPlan.delfile" :key="upIndex" style="height: 100%;margin-top: 16px;"/> </div> - <el-drawer title="鍏夌氦鍒囨崲" :visible.sync="fiberOpticVisible" :size="500"> - <el-table class="el-table" ref="fiberOpticTable" :data="fiberOptic" height="100%" tooltip-effect="dark" border - highlight-current-row @row-click="handleChangeOptic" :row-class-name="tableRowClassName" - :current-row-key="currentKey2" :row-key="record=>record.index" v-if="fiberOpticVisible"> - <el-table-column type="index" align="center" label="搴忓彿" width="70px" :key="Math.random()"> - </el-table-column> - <el-table-column prop="bushColor" label="绠″鑹叉爣" min-width="100px" show-overflow-tooltip></el-table-column> - <el-table-column prop="color" label="鍏夌氦鑹叉爣" min-width="100px" show-overflow-tooltip></el-table-column> - <el-table-column prop="model" label="鍏夌氦瑙勬牸" min-width="130px" show-overflow-tooltip - ></el-table-column> - <el-table-column prop="standard" label="鍙傝�冩爣鍑�" width="100px" show-overflow-tooltip></el-table-column> - </el-table> - </el-drawer> - <el-drawer title="鍏夌氦甯﹀垏鎹�" :visible.sync="fiberOpticTapeVisible" :size="500"> - <el-table class="el-table" ref="fiberOpticTapeTable" :data="fiberOpticTape" height="100%" tooltip-effect="dark" border - highlight-current-row @row-click="handleChangeTape" :row-class-name="tableRowClassName" - :current-row-key="currentKey1" :row-key="record=>record.index" v-if="fiberOpticTapeVisible"> - <el-table-column type="index" align="center" label="搴忓彿" width="70px" :key="Math.random()"> - </el-table-column> - <el-table-column prop="code" label="鍏夌氦甯︾紪鍙�" min-width="110px" show-overflow-tooltip></el-table-column> - <el-table-column prop="model" label="鍏夌氦甯﹁鏍�" min-width="110px" show-overflow-tooltip></el-table-column> - <el-table-column prop="standard" label="鍙傝�冩爣鍑�" width="90px" show-overflow-tooltip></el-table-column> - <el-table-column prop="num" label="鍏夌氦妫�娴嬮噺" min-width="110px" show-overflow-tooltip - ></el-table-column> - </el-table> - </el-drawer> - <el-drawer title="濂楃鍒囨崲" :visible.sync="bushingVisible" :size="500"> - <el-table class="el-table" ref="bushingTable" :data="bushing" height="100%" tooltip-effect="dark" border - highlight-current-row @row-click="handleChangeBushing" :row-class-name="tableRowClassName" - :current-row-key="currentKey0" :row-key="record=>record.index" v-if="bushingVisible"> - <el-table-column type="index" align="center" label="搴忓彿" width="70px" :key="Math.random()"> - </el-table-column> - <el-table-column prop="color" label="绠¤壊鏍�" min-width="100px" show-overflow-tooltip></el-table-column> - <el-table-column prop="standNum" label="鏍囬噺" min-width="100px" show-overflow-tooltip></el-table-column> - <el-table-column prop="testNum" label="娴嬭瘯閲�" min-width="100px" show-overflow-tooltip></el-table-column> - </el-table> - </el-drawer> <el-drawer title="鏍峰搧鍒囨崲" :visible.sync="sampleVisible" :size="500"> <el-table class="el-table" ref="productTable" :data="sampleProduct" height="100%" tooltip-effect="dark" border highlight-current-row @row-click="handleChangeSample" :row-class-name="tableRowClassName" @@ -947,20 +913,44 @@ <el-button type="primary" @click="submitDataGet()" :loading="getDataIndexLoading">纭� 瀹�</el-button> </span> </el-dialog> + <el-dialog + title="閫夋嫨鐢佃矾妫�楠屾ā鏉跨増鏈�" + :visible.sync="versionDialogVisible" + width="30%" + :close-on-click-modal="false" + :close-on-press-escape="false" + :show-close="false"> + <el-radio-group v-model="currentTableState"> + <el-radio :label="0">鐢佃皟-鐢佃矾妫�楠屽師濮嬭褰�</el-radio> + <el-radio :label="1">闈炵數璋�-鐢佃矾妫�楠屽師濮嬭褰�</el-radio> + </el-radio-group> + <span slot="footer" class="dialog-footer"> + <el-button type="primary" :loading="versionLoading" @click="saveVersion">纭� 瀹�</el-button> + </span> + </el-dialog> </div> </template> <script> import ValueTable from '../../tool/value-table.vue' + import Circuit from './circuit.vue' import file from '../../../util/file' import excelFunction from '../../../util/excelFountion' + import CircuitParameters1 from './circuit-parameters1.vue' + import CircuitParameters2 from './circuit-parameters2.vue' export default { - props: ['sonLaboratory', 'orderId', 'state','inspectorList'], + props: ['sonLaboratory', 'orderId', 'state','inspectorList','version','orderStateId'], components: { ValueTable, + Circuit, + CircuitParameters1, + CircuitParameters2 }, data() { return { + versionLoading:false, + versionDialogVisible:false, + currentTableState:0, sagData: [], sagForm: { sampleCode: null, @@ -1085,9 +1075,6 @@ verifyUser: null, personList: [], enumList: [], - fiberOpticVisible:false, - fiberOpticTapeVisible:false, - bushingVisible:false, fiberOpticTape:[],//鍏夌氦甯﹀垪琛� fiberOptic:[],//鍏夌氦鍒楄〃 bushing:[],//濂楃鍒楄〃 @@ -1109,10 +1096,6 @@ numOptions:[], temperatureOptions:[], wareTableData:[], - otherForm:{ - humidity:null, - temperature:null, - }, equipForm:{ value0:null, code0:null, @@ -1139,35 +1122,12 @@ }, 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], - } - ] - } - ], + getData:[], getDataIndex:[], getDataIndexLoading:false, changeType:null, getDataTypeId:'', - getDataType:null + getDataType:null, } }, // 鐢ㄤ簬涓婁紶鏂囦欢鐨勪俊鎭� @@ -1194,6 +1154,7 @@ this.scrollInit() this.getPower() this.startWorker() + this.currentTableState = this.version }, watch: { // 鐩戝惉浠诲姟id锛岃幏鍙栦换鍔′俊鎭� @@ -1219,14 +1180,6 @@ 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) @@ -2179,25 +2132,6 @@ this.saveInsContext() }, // 鐑惊鐜�---缁撴潫 - // 淇濆瓨婀垮害銆佹俯搴︽暟鎹� - 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')) @@ -2240,63 +2174,6 @@ let res = await this.$axios.post(this.$api.insOrderPlan.getInsProduct+'?id='+id+'&type='+type+'&laboratory='+this.sonLaboratory) this.tableLoading = false; return res.data - }, - handleChangeBushing(row, column, event){ - this.currentBushing = row; - this.fiberOpticTape = [] - this.currentFiberOpticTape = null; - this.fiberOptic = [] - this.currentFiberOptic = null; - if(row.fiber&&row.fiber.length>0){ - // 鐩存帴閰嶇疆鍏夌氦 - this.fiberOptic = row.fiber; - }else if(row.fibers&&row.fibers.length>0){ - // 閰嶇疆鍏夌氦甯﹀悗锛屽啀閰嶇疆鍏夌氦 - this.fiberOpticTape = row.fibers; - } - this.bushingVisible = false; - this.currentKey0 = row.index - }, - async handleChangeOptic(row, column, event){ - this.currentFiberOptic = row; - this.currentFiberOptic.productList.forEach(a => { - this.param[a.id] = { - insValue: [], - comValue: [], - resValue: null, - equipValue: [], - equipName: [], - insResult: null - } - }) - this.fiberOpticVisible = false; - let list = await this.getCurrentProduct(row.id,2) - this.getTableLists0(list) - this.currentKey2 = row.index - }, - async handleChangeTape(row, column, event){ - this.currentFiberOpticTape = row; - this.param = {} - this.fiberOptic = [] - this.currentFiberOptic = null; - this.currentFiberOpticTape.productList.forEach(a => { - this.param[a.id] = { - insValue: [], - comValue: [], - resValue: null, - equipValue: [], - equipName: [], - insResult: null - } - }) - this.fiberOpticTapeVisible = false; - let list = await this.getCurrentProduct(row.id,1) - this.getTableLists0(list) - if(row.fiber&&row.fiber.length>0){ - // 閰嶇疆鍏夌氦 - this.fiberOptic = row.fiber; - } - this.currentKey1 = row.index }, // 鍒囨崲鏍峰搧 async handleChangeSample(row, column, event) { @@ -2506,6 +2383,9 @@ this.tableList = null; this.tableList = [this.tableLists[0]] this.currentTable = this.tableLists[0].templateId; + if(this.tableLists.find(m=>m.templateId==this.currentTable)&&this.tableLists.find(m=>m.templateId==this.currentTable).templateName.includes('鐢佃矾璇曢獙')&&this.currentTableState!=0&&this.currentTableState!=1){ + this.versionDialogVisible = true + } // 澶勭悊椤甸潰鍒楄〃鏁版嵁 this.handleTableData() } @@ -2739,6 +2619,7 @@ } } }) + console.log(4444,a.template) // 鎿嶄綔璧嬪��--涓昏璧嬪�煎崟浣�,璇曢獙鏂规硶绛変俊鎭� ids.forEach(id => { for (let b = 0; b < a.template.length; b++) { @@ -2751,6 +2632,9 @@ .ps.value === '妫�娴嬫柟娉�')) { a.template[b].v.v = id.product.methodS } + // if (a.template[b].v.ps != undefined && (a.template[b].v.ps.value === '璇曢獙鏍囧噯')) { + // a.template[b].v.v = id.product.testRequirements + // } } } }) @@ -3350,14 +3234,6 @@ this.$message.error("璇锋寚瀹氬鏍镐汉鍛�") return } - if(!this.otherForm.humidity){ - this.$message.error("璇疯緭鍏ユ箍搴�") - return - } - if(!this.otherForm.temperature){ - this.$message.error("璇疯緭鍏ユ俯搴�") - return - } this.addVerifyDia = false this.submitLoading = true; this.$axios.post(this.$api.insOrderPlan.checkSubmitPlan, { @@ -3443,7 +3319,8 @@ if(this.param){ this.$axios.post(this.$api.insOrderPlan.saveInsContext, { param: JSON.stringify(this.param), - currentTable:this.currentTable + currentTable:this.currentTable, + num:this.currentSample.num1 }).then(res => { if (res.code == 201) { this.$message.error('淇濆瓨澶辫触') @@ -3642,7 +3519,6 @@ insResult: null } }) - this.fiberOpticTapeVisible = false; let list = await this.getCurrentProduct(this.currentFiberOpticTape.id,1) this.getTableLists0(list) if(this.currentFiberOpticTape.fiber&&this.currentFiberOpticTape.fiber.length>0){ @@ -3735,6 +3611,27 @@ }else{ return v } + }, + async getCurrentItem(){ + let list = await this.getCurrentProduct(this.currentSample.id,0) + this.currentSample.insProduct = this.HaveJson(list) + }, + saveVersion(){ + if(this.currentTableState!=0&&this.currentTableState!=1){ + this.$message.error('璇烽�夋嫨鐗堟湰') + return + } + this.versionLoading = true; + this.$axios.post(this.$api.insOrderPlan.chooseVersion, { + orderStateId: this.orderStateId, + version: this.currentTableState + }).then(res => { + this.versionLoading = false; + if(res.code==201){ + return + } + this.versionDialogVisible = false + }) } } } -- Gitblit v1.9.3