From b5397c4f12baf35a3200ce4d053d549ffa7ec2e4 Mon Sep 17 00:00:00 2001 From: licp <lichunping@guanfang.com.cn> Date: 星期一, 01 七月 2024 17:24:09 +0800 Subject: [PATCH] 修改打印样式 --- src/components/do/b1-ins-order/add.vue | 229 +++++++++++++++++++++++++++++++++++++++++++++++---------- 1 files changed, 188 insertions(+), 41 deletions(-) diff --git a/src/components/do/b1-ins-order/add.vue b/src/components/do/b1-ins-order/add.vue index 3e7dd5f..66c5d90 100644 --- a/src/components/do/b1-ins-order/add.vue +++ b/src/components/do/b1-ins-order/add.vue @@ -117,7 +117,7 @@ <div class="ins_order_add"> <div v-show="!configShow&&!equipConfigShow&&!cableConfigShow"> <el-row class="title"> - <el-col :span="6" style="padding-left: 20px;">濮旀墭鍗曚俊鎭� 鎬讳环锛�<span + <el-col :span="6" style="padding-left: 20px;text-align: left;">濮旀墭鍗曚俊鎭� 鎬讳环锛�<span style="color: #3A7BFA">锟{total}}</span></el-col> <el-col :span="18" style="text-align: right;"> <el-select v-model="template" size="medium" placeholder="涓嬪崟妯℃澘" style="margin-right: 10px;" v-show="active==1" @@ -256,14 +256,14 @@ <el-col class="search_thing" :span="6"> <div class="search_label">宸ョ▼鍚嶇О锛�</div> <div class="search_input"> - <el-input size="small" placeholder="璇疯緭鍏�" clearable v-model="addObj.engineering" + <el-input size="small" :placeholder="active>1 ? '' : '璇疯緭鍏�'" clearable v-model="addObj.engineering" :readonly="active>1"></el-input> </div> </el-col> <el-col class="search_thing" :span="6"> <div class="search_label">宸ョ▼鍚嶇ОEN锛�</div> <div class="search_input"> - <el-input size="small" placeholder="璇疯緭鍏�" clearable v-model="addObj.engineeringEn" + <el-input size="small" :placeholder="active>1 ? '' : '璇疯緭鍏�'" clearable v-model="addObj.engineeringEn" :readonly="active>1"></el-input> </div> </el-col> @@ -302,19 +302,19 @@ <el-col class="search_thing" :span="6"> <div class="search_label">OTC璁㈠崟鍙凤細</div> <div class="search_input"> - <el-input size="small" placeholder="璇疯緭鍏�" clearable v-model="addObj.otcCode" :readonly="active>1"></el-input> + <el-input size="small" :placeholder="active>1 ? '' : '璇疯緭鍏�'" clearable v-model="addObj.otcCode" :readonly="active>1"></el-input> </div> </el-col> <el-col class="search_thing" :span="6"> <div class="search_label">濮旀墭浜猴細</div> <div class="search_input"> - <el-input size="small" placeholder="璇疯緭鍏�" clearable v-model="addObj.prepareUser" :readonly="active>1"></el-input> + <el-input size="small" :placeholder="active>1 ? '' : '璇疯緭鍏�'" clearable v-model="addObj.prepareUser" :readonly="active>1"></el-input> </div> </el-col> <el-col class="search_thing" :span="6" style="align-items: flex-start;margin: 8px 0;"> <div class="search_label">澶囨敞锛�</div> <div class="search_input"> - <el-input type="textarea" :autosize="{ minRows: 2, maxRows: 2}" size="small" clearable + <el-input type="textarea" :autosize="{ minRows: 2, maxRows: 2}" size="small" clearable :placeholder="active>1 ? '' : '璇疯緭鍏�'" v-model="addObj.remark" :readonly="active>1"></el-input> </div> </el-col> @@ -331,7 +331,7 @@ <div class="search_thing"> <div class="search_label">鏍峰搧鍨嬪彿锛�</div> <div class="search_input"> - <el-select v-model="model" placeholder="璇烽�夋嫨" filterable allow-create default-first-option size="small" + <el-select v-model="model" :placeholder="active>1 ? '' : '璇疯緭鍏�'" filterable allow-create default-first-option size="small" @change="changeModel"> <el-option v-for="item in models" :key="item.value" :label="item.label" :value="item.value"> </el-option> @@ -341,7 +341,7 @@ <div class="search_thing"> <div class="search_label">妫�楠屾爣鍑嗭細</div> <div class="search_input"> - <el-select v-model="standardMethodListId" placeholder="璇烽�夋嫨" size="small" @focus="methodFocus" + <el-select v-model="standardMethodListId" :placeholder="active>1 ? '' : '璇疯緭鍏�'" size="small" @focus="methodFocus" :loading="methodLoad" @change="changeStandardMethodListId"> <el-option v-for="item in methods" :key="item.id" :label="item.code" :value="item.id"> </el-option> @@ -414,7 +414,17 @@ @selection-change="selectProduct" style="margin-bottom: 10px;" @select="upProductSelect" :row-class-name="tableRowClassName" v-loading="getProductLoad" @select-all="handleAll"> <el-table-column type="selection" width="65" :selectable="selectable" v-if="active==1"></el-table-column> - <el-table-column prop="inspectionItem" label="妫�楠岄」" min-width="140" show-overflow-tooltip></el-table-column> + <el-table-column prop="inspectionItem" label="妫�楠岄」" min-width="140" show-overflow-tooltip> + <template slot="header" slot-scope="scope"> + <div style="display: flex;align-items: center;flex-direction: column;font-size: 14px"> + <span>妫�楠岄」</span> + <el-input + v-model="inspectionItem" + size="mini" + placeholder="璇疯緭鍏�"/> + </div> + </template> + </el-table-column> <el-table-column prop="inspectionItemSubclass" label="妫�楠岄」瀛愰」" min-width="140" show-overflow-tooltip></el-table-column> <el-table-column prop="sonLaboratory" label="瀛愬疄楠屽" min-width="130" show-overflow-tooltip :filters="filters" @@ -547,6 +557,7 @@ <fiberOpticConfig :currentId="currentId" @saveFiberopticConfig="getTotal()" v-if="configShow" :active="active" /> <equipConfig :currentId="currentId" v-if="equipConfigShow" :active="active" /> <cableConfig v-if="cableConfigShow" :active="active" /> +<!-- 鍗曢�夌壒娈婂�煎鐞嗘--> <el-dialog title="妫�娴嬪埌鐗规畩椤癸紝璇蜂綔鍑轰互涓嬮�夋嫨" :visible.sync="bsm1Dia" width="500px" :show-close="false" :before-close="beforeClose"> <div class="body" style="max-height: 60vh;"> @@ -608,6 +619,60 @@ </el-row> --> </div> </el-dialog> +<!-- 鍏ㄩ�夌壒娈婂�煎鐞嗘--> + <el-dialog title="妫�娴嬪埌鐗规畩椤癸紝璇蜂綔鍑轰互涓嬮�夋嫨" :visible.sync="bsm1DiaAll" width="500px" :show-close="false" + :before-close="beforeClose"> + <div class="body" style="max-height: 60vh;" v-for="(item, index) in bsm1DiaList" :key="index"> + <el-row v-if="item.bsm1"> + <el-col class="search_thing" :span="22" style="height: initial;margin: 5px 0;"> + <div class="search_label"><span class="required-span">* </span>閫夐」锛�</div> + <div class="search_input"> + <el-radio-group v-model="item.bsm1Val" @input="upBsmAll(item)"> + <el-radio v-for="(a, ai) in JSON.parse(item.bsmRow.section)" :key="ai" :label="a" style="margin-bottom: 2px;margin-top: 2px;"></el-radio> + </el-radio-group> + </div> + </el-col> + <el-col class="search_thing" :span="22" style="height: initial;margin: 5px 0;"> + <div class="search_label">瑕佹眰鍊硷細</div> + <div class="search_input" v-show="item.bsm1Val!==null&&item.bsm1Val!==''"> + <el-radio-group v-model="item.bsm1Val" @input="upBsmAll(item)"> + <el-radio v-for="(a, ai) in JSON.parse(item.bsmRow.section)" :key="ai" + :label="a">{{JSON.parse(item.bsmRow.ask)[ai]}}</el-radio> + </el-radio-group> + </div> + </el-col> + </el-row> + <el-row v-if="item.bsm2"> + <el-col class="search_thing" :span="22"> + <div class="search_label" style="width: 220px;"><span class="required-span">* </span>鏍峰搧鐔旀帴閰嶅鏁伴噺锛�</div> + <div class="search_input"> + <el-input-number size="medium" v-model="item.bsm2Val" :min="1" :max="item.bsm2Val3.length" :precision="0" + style="width: 70%;" :controls="false" @change="bsm2Up"></el-input-number> + <span>MAX锛歿{item.bsm2Val3.length}}</span> + </div> + </el-col> + <el-col style="margin-top: 6px;"> + <el-col v-for="(a,ai) in item.bsm2Val2" :key="ai"> + <el-col :span="10"> + <el-select v-model="a[0]" placeholder="璇烽�夋嫨" size="small" style="width: 100%;"> + <el-option v-for="(item,index) in item.sampleList" :key="index" :label="index+1" :value="index+1"> + </el-option> + </el-select> + </el-col> + <!-- <el-col :span="10" class="pairing">{{a[0]}}</el-col> --> + <el-col :span="4" class="pairing" style="border: 0;color: rgba(0, 0, 0, 0.2);">鈥斺��</el-col> + <el-col :span="10"> + <el-select v-model="a[1]" placeholder="璇烽�夋嫨" size="small" style="width: 100%;"> + <el-option v-for="(item,index) in item.sampleList" :key="index" :label="index+1" :value="index+1"> + </el-option> + </el-select> + </el-col> + <!-- <el-col :span="10" class="pairing">{{a[1]}}</el-col> --> + </el-col> + </el-col> + </el-row> + </div> + </el-dialog> <el-dialog title="鐗规畩鍊煎~鍐�" :visible.sync="bsm3Dia" width="800px" :show-close="false"> <el-table :data="editTable" @@ -646,6 +711,28 @@ <el-button type="primary" @click="save0" :loading="saveLoad">纭� 瀹�</el-button> </el-row> </span> + </el-dialog> + <el-dialog title="娓╁害寰幆瑕佹眰濉啓" :visible.sync="circulateShow" width="800px" :show-close="false"> + <div class="search" style="display: flex;background: transparent;"> + <div class="search_thing"> + <div class="search_label">淇濇俯鏃堕棿锛�</div> + <div class="search_input"> + <el-input v-model="circulateForm.entrustCode" size="small" placeholder=""></el-input> + </div> + </div> + <div class="search_thing"> + <div class="search_label">寰幆娆℃暟锛�</div> + <div class="search_input"> + <el-input v-model="circulateForm.entrustCode" size="small" placeholder=""></el-input> + </div> + </div> + <div class="search_thing"> + <div class="search_label">娓╁害鐐癸細</div> + <div class="search_input"> + <el-input v-model="circulateForm.entrustCode" size="small" placeholder=""></el-input> + </div> + </div> + </div> </el-dialog> </div> </template> @@ -761,6 +848,7 @@ addSampleDia: false, count: 1, productList: [], + bsm1DiaList: [], productIds: [], getProductLoad: false, saveLoad: false, @@ -792,6 +880,7 @@ bsm1: false, bsm1Val: null, bsm1Dia: false, + bsm1DiaAll: false, equipConfigShow: false, cableConfigShow: false, bsm2: false, @@ -808,7 +897,11 @@ model: null, standardMethodListId: null, symbolList:[ - 'RTS','A','B','C','D','E','F','G','H','I','J','K','L','M','N','O','P','Q','R','S','T','U','V','W','X','Y','Z'] + 'RTS','A','B','C','D','E','F','G','H','I','J','K','L','M','N','O','P','Q','R','S','T','U','V','W','X','Y','Z'], + inspectionItem:null, + circulateShow:false, + circulateForm:{}, + isBsm2Val2:false } }, watch: { @@ -914,14 +1007,16 @@ this.selectUserDia = false }, containsValue(str) { - let symbolItem = '' - this.symbolList.some(value =>{ - if(str.includes(value)){ - symbolItem = value - return true - } - }) - return symbolItem + if(str){ + let symbolItem = '' + this.symbolList.some(value =>{ + if(str.includes(value)){ + symbolItem = value + return true + } + }) + return symbolItem + } }, handleAsk(ask,symbolItem, value) { try{ @@ -1001,6 +1096,9 @@ let isRTS = this.totalArr.find(a => a.ask != null && this.symbolList.find(b=>a.ask.includes(b)) && a.state == 1) if (isRTS) { this.editTable = this.handleData(sampleList,this.containsValue, 0) + this.editTable.forEach(item => { + item.value = item.modelNum + }) this.bsm3Dia = true; return } @@ -1009,8 +1107,12 @@ } }, save0(){ - let sampleList = this.handleData(this.HaveJson(this.sampleList),this.handleAsk,1) - this.saveMethod(sampleList) + if(this.editTable.every(m=>m.value)){ + let sampleList = this.handleData(this.HaveJson(this.sampleList),this.handleAsk,1) + this.saveMethod(sampleList) + }else{ + this.$message.error('璇峰~鍐欒瘑鍒鍊�') + } }, handleData(sampleList,calBack,type){ let editTable = [] @@ -1020,6 +1122,7 @@ model:item.model, symbolList:[], sampleId:item.id, + modelNum:item.modelNum, } if (item.insProduct && item.insProduct.length > 0) { item.insProduct.forEach(a => { @@ -1188,6 +1291,7 @@ sampleId:a.sampleId, value:null, inspectionItemList:b.inspectionItemList, + modelNum:a.modelNum, } editTableNew.push(obj) }) @@ -1206,6 +1310,7 @@ a.model = a.model + ((a.modelNum == null || a.modelNum == '' || a.modelNum == 'null') ? '' : ( '-' + a.modelNum)) + a.insProduct = a.insProduct.filter(b=>b.state === 1) return a })), pairing: JSON.stringify(this.bsm2Val2) @@ -1225,7 +1330,9 @@ this.saveLoad = true this.$axios.post(this.$api.insOrder.upInsOrderOfState, { state, - id: this.currentId + id: this.currentId, + companyId:this.addObj.companyId, + laboratory:this.addObj.laboratory }, { headers: { 'Content-Type': 'application/json' @@ -1234,6 +1341,8 @@ this.saveLoad = false if (res.code == 201) return this.$message.success('鎻愪氦鎴愬姛') + // this.$parent.multipleSelection = [{id: this.currentId}] + // this.$parent.print() // 濡傛灉绱ф�ョ▼搴︿负绱ф�ワ紝闇�瑕佺洿鎺ヤ笅鍙戜汉鍛� // if (this.addObj.type == 2) { // this.issuedDialogVisible = true; @@ -1342,7 +1451,7 @@ } }, selectStandardTreeList() { - this.$axios.get(this.$api.standardTree.selectStandardTreeList).then(res => { + this.$axios.get(this.$api.standardTree.selectStandardTreeList2).then(res => { this.list = res.data this.list.forEach(a => { this.expandedKeys.push(a.label) @@ -1482,17 +1591,19 @@ this.$refs.productTable.toggleRowSelection(row, true); }, upProductSelect(selection, row) { + this.bsm1DiaList = [] row.state = row.state == 1 ? 0 : 1 if (row.bsm === '1' && row.section !== '' && row.section !== null && row.state === 1) { if (row.section.indexOf('[') > -1) { - this.bsmRow = this.HaveJson(row) + row.bsmRow = this.HaveJson(row) } - this.bsm1 = true - this.bsm1Dia = true + row.bsm1 = true + this.bsm1DiaList.push(row) + this.bsm1DiaAll = true } else if (row.bsm === '1' && row.section !== '' && row.section !== null && row.state === 0) { - this.bsm1 = false + row.bsm1 = false } - if (row.bsm === '1' && row.inspectionItem === '鐔旀帴鎹熻��' && this.sampleList.length > 1 && row.state === 1) { + if (row.bsm === '1' && row.inspectionItem === '鍏夌氦鎺ュご鎹熻��' && this.sampleList.length > 1 && row.state === 1&&!this.isBsm2Val2) { this.bsm2 = true this.bsm1Dia = true if (this.bsm2Val2.length === 0) { @@ -1500,9 +1611,9 @@ this.computationalPairing(this.sampleList.length) this.bsm2Val2 = this.HaveJson(this.bsm2Val3) } - } else if (row.bsm === '1' && row.inspectionItem === '鐔旀帴鎹熻��' && row.state === 1 && this.sampleList.length > 1) { + } else if (row.bsm === '1' && row.inspectionItem === '鍏夌氦鎺ュご鎹熻��' && row.state === 1 && this.sampleList.length > 1) { this.bsm2 = false - } else if (row.bsm === '1' && row.inspectionItem === '鐔旀帴鎹熻��' && this.sampleList.length < 2) { + } else if (row.bsm === '1' && row.inspectionItem === '鍏夌氦鎺ュご鎹熻��' && this.sampleList.length < 2) { this.$message.error('鏍峰搧鏁伴噺涓嶈冻澶熻繘琛岄厤瀵规搷浣�') row.state = row.state == 1 ? 0 : 1 this.$refs.productTable.toggleRowSelection(row, false) @@ -1528,6 +1639,10 @@ } return item }) + if (row.inspectionItem === '娓╁害寰幆') { + this.circulateShow = true; + return + } this.getProNum() }, permute(nums) { @@ -1749,6 +1864,7 @@ } }, handleAll(e) { + console.log('鍏ㄩ��') if (e.length > 0) { this.productList.map(m => { m.state = 1 @@ -1761,17 +1877,19 @@ }) } this.bsmRow3 = []; + this.bsm1DiaList = [] this.productList.forEach(p => { if (p.bsm === '1' && p.section !== '' && p.section !== null && p.state === 1) { if (p.section.indexOf('[') > -1) { - this.bsmRow = this.HaveJson(p) + p.bsmRow = this.HaveJson(p) } - this.bsm1 = true - this.bsm1Dia = true + p.bsm1 = true + this.bsm1DiaList.push(p) + this.bsm1DiaAll = true } else if (p.bsm === '1' && p.section !== '' && p.section !== null && p.state === 0) { - this.bsm1 = false + p.bsm1 = false } - if (p.bsm === '1' && p.inspectionItem === '鐔旀帴鎹熻��' && this.sampleList.length > 1 && p.state === 1) { + if (p.bsm === '1' && p.inspectionItem === '鍏夌氦鎺ュご鎹熻��' && this.sampleList.length > 1 && p.state === 1&&!this.isBsm2Val2) { this.bsm2 = true this.bsm1Dia = true if (this.bsm2Val2.length === 0) { @@ -1779,9 +1897,9 @@ this.computationalPairing(this.sampleList.length) this.bsm2Val2 = this.HaveJson(this.bsm2Val3) } - } else if (p.bsm === '1' && p.inspectionItem === '鐔旀帴鎹熻��' && p.state === 1 && this.sampleList.length > 1) { + } else if (p.bsm === '1' && p.inspectionItem === '鍏夌氦鎺ュご鎹熻��' && p.state === 1 && this.sampleList.length > 1) { this.bsm2 = false - } else if (p.bsm === '1' && p.inspectionItem === '鐔旀帴鎹熻��' && this.sampleList.length < 2) { + } else if (p.bsm === '1' && p.inspectionItem === '鍏夌氦鎺ュご鎹熻��' && this.sampleList.length < 2) { this.$message.error('鏍峰搧鏁伴噺涓嶈冻澶熻繘琛岄厤瀵规搷浣�') this.$refs.productTable.clearSelection() return @@ -1968,12 +2086,40 @@ } } }, - beforeClose(done) { - if (this.bsm1) { - if (this.bsm1Val === null || this.bsm1Val === '') { - this.$message.error('鐗规畩椤圭洰蹇呴』澶勭悊') - return + upBsmAll (item) { + let sections = JSON.parse(item.bsmRow.section); + let asks = JSON.parse(item.bsmRow.ask); + let tells = JSON.parse(item.bsmRow.tell); + let manHours = JSON.parse(item.bsmRow.manHour); + let prices = JSON.parse(item.bsmRow.price); + for (var a in sections) { + if (item.bsm1Val === sections[a]) { + this.productList.forEach(p => { + if (p.id === item.bsmRow.id) { + p.section = sections[a] + p.ask = asks[a] + p.tell = tells[a] + p.manHour = manHours[a] + p.price = prices[a] + } + }) + break } + } + }, + beforeClose(done) { + // if (this.bsm1) { + // if (this.bsm1Val === null || this.bsm1Val === '') { + // this.$message.error('鐗规畩椤圭洰蹇呴』澶勭悊') + // return + // } + // } + if (this.bsm1DiaList.length > 0) { + this.bsm1DiaList.forEach(item => { + if (!item.bsm1Val) { + throw this.$message.error('鐗规畩椤圭洰蹇呴』澶勭悊') + } + }) } if (this.bsm2) { if (this.bsm2Val2.length === 0) { @@ -1996,6 +2142,7 @@ return } } + this.isBsm2Val2 = true; } // if(this.bsm3){ // if(!this.bsm3Val){ -- Gitblit v1.9.3