From ab82ddf55b5c41d495d4a62d849d88d464e5f256 Mon Sep 17 00:00:00 2001 From: lxp <1928192722@qq.com> Date: 星期三, 07 八月 2024 16:03:05 +0800 Subject: [PATCH] modified: src/components/do/b1-ins-order/add.vue modified: src/components/do/b1-ins-order/fiberoptic-config.vue --- src/components/do/b1-ins-order/add.vue | 176 +++++++++++++++++++++++++++++++++++++++++++++++----------- 1 files changed, 141 insertions(+), 35 deletions(-) diff --git a/src/components/do/b1-ins-order/add.vue b/src/components/do/b1-ins-order/add.vue index 5e3a46c..7cdbe6d 100644 --- a/src/components/do/b1-ins-order/add.vue +++ b/src/components/do/b1-ins-order/add.vue @@ -429,9 +429,9 @@ <el-table-column prop="proNum" label="寰呮椤规暟閲�" width="105" align="center"></el-table-column> </el-table> <el-table class="el-table" ref="productTable" :data="productList" height="380px" tooltip-effect="dark" border - @selection-change="selectProduct" style="margin-bottom: 10px;" @select="upProductSelect" :row-key="rowKey" + @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" :reserve-selection="true"></el-table-column> + <el-table-column type="selection" width="65" :selectable="selectable" v-if="active==1"></el-table-column> <el-table-column prop="inspectionItemClass" v-if="PROJECT === '瑁呭鐢电紗'" label="妫�楠岄」鍒嗙被" min-width="140" show-overflow-tooltip></el-table-column> <el-table-column prop="inspectionItemClassEn" v-if="PROJECT === '瑁呭鐢电紗'" label="妫�楠岄」鍒嗙被(EN)" min-width="140" show-overflow-tooltip></el-table-column> <el-table-column prop="inspectionItem" label="妫�楠岄」" min-width="140" show-overflow-tooltip> @@ -623,8 +623,11 @@ <equipConfig :currentId="currentId" v-if="equipConfigShow" :active="active" /> <cableConfig v-if="cableConfigShow" :active="active" /> <!-- 鍗曢�夌壒娈婂�煎鐞嗘--> - <el-dialog title="妫�娴嬪埌鐗规畩椤癸紝璇蜂綔鍑轰互涓嬮�夋嫨" :visible.sync="bsm1Dia" min-width="400px" :show-close="false" - :before-close="beforeClose"> + <el-dialog title="妫�娴嬪埌鐗规畩椤癸紝璇蜂綔鍑轰互涓嬮�夋嫨" :visible.sync="bsm1Dia" + :close-on-press-escape="false" + :close-on-click-modal="false" + min-width="400px" :show-close="false" + :before-close="beforeClose"> <div class="body" style="max-height: 60vh;"> <el-row v-if="bsm1"> <el-col class="search_thing" :span="24" style="height: initial;margin: 5px 0;"> @@ -683,9 +686,16 @@ </el-col> </el-row> --> </div> + <span slot="footer" class="dialog-footer"> + <el-row> + <el-button type="primary" @click="save2" :loading="saveLoad">纭� 瀹�</el-button> + </el-row> + </span> </el-dialog> <!-- 鍏ㄩ�夌壒娈婂�煎鐞嗘--> <el-dialog title="妫�娴嬪埌鐗规畩椤癸紝璇蜂綔鍑轰互涓嬮�夋嫨" :visible.sync="bsm1DiaAll" min-width="400px" :show-close="false" + :close-on-press-escape="false" + :close-on-click-modal="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"> @@ -737,8 +747,15 @@ </el-col> </el-row> </div> + <span slot="footer" class="dialog-footer"> + <el-row> + <el-button type="primary" @click="save1" :loading="saveLoad">纭� 瀹�</el-button> + </el-row> + </span> </el-dialog> - <el-dialog title="鐗规畩鍊煎~鍐�" :visible.sync="bsm3Dia" width="800px" :show-close="false"> + <el-dialog title="鐗规畩鍊煎~鍐�" :visible.sync="bsm3Dia" + :close-on-click-modal="false" :close-on-press-escape="false" + width="800px" :show-close="false"> <el-table :data="editTable" style="width: 100%"> @@ -777,7 +794,9 @@ </el-row> </span> </el-dialog> - <el-dialog title="娓╁害寰幆瑕佹眰濉啓" :visible.sync="circulateShow" width="900px" :before-close="beforeCirculateShowClose" :show-close="false"> + <el-dialog title="娓╁害寰幆瑕佹眰濉啓" :visible.sync="circulateShow" width="900px" + :close-on-click-modal="false" :close-on-press-escape="false" + :before-close="beforeCirculateShowClose" :show-close="false"> <div class="search" style="display: flex;background: transparent;"> <div class="search_thing"> <div class="search_label">淇濇俯鏃堕棿锛�</div> @@ -862,7 +881,9 @@ </span> </el-dialog> <!-- 鐢靛姏璇曢獙瀹�---娓╁崌璇曢獙/鐑惊鐜� --> - <el-dialog :title="temperatureTitle" :visible.sync="temperatureShow" width="260px" :before-close="temperatureShowClose" :show-close="false"> + <el-dialog :title="temperatureTitle" :visible.sync="temperatureShow" + :close-on-click-modal="false" :close-on-press-escape="false" + width="260px" :before-close="temperatureShowClose" :show-close="false"> <div> <div v-if="isShowInput" style="margin-bottom: 6px"> <span>寰幆娆℃暟:</span> @@ -961,7 +982,7 @@ entity: { orderBy: { field: 'id', - order: 'asc' + order: 'desc' } }, isIndex: true, @@ -1219,6 +1240,9 @@ } }) this.circulateShow = false + this.changeProductList0() + this.currentMethod.insProduct = this.productList0 + this.getProNum() }, spliceTemperatureTest () { if (this.temperatureTest.length === 0) { @@ -1375,6 +1399,9 @@ a.manHour = obj.manHour a.price = obj.price a.tell = obj.tell + } + if(a.state == 0&&a.bsmRow){ + a = this.HaveJson(a.bsmRow) } }) }, @@ -1821,7 +1848,8 @@ state, id: this.currentId, companyId:this.addObj.companyId, - laboratory:this.addObj.laboratory + laboratory:this.addObj.laboratory, + company: this.addObj.company }, { headers: { 'Content-Type': 'application/json' @@ -2058,9 +2086,6 @@ }) this.$refs.sampleTable.doLayout() }, - rowKey (row) { - return row.id; - }, selectProduct(val) { this.productListSelected = val this.productIds = [] @@ -2082,9 +2107,14 @@ this.sampleIds.push(row.id) } this.productList = row.insProduct + this.productList0 = JSON.parse(JSON.stringify(this.productList)) setTimeout(() => { this.productList.forEach(a => { - if (a.state == 1) this.toggleSelection(a) + if (a.state == 1) { + this.toggleSelection(a) + }else{ + this.$refs.productTable.toggleRowSelection(a, false); + } }) }, 200) }, @@ -2257,7 +2287,8 @@ name: this.templateName, thing: JSON.stringify({ addObj: this.addObj, - sampleList: this.sampleList + sampleList: this.sampleList, + selectTree:this.selectTree }) }, { headers: { @@ -2282,6 +2313,7 @@ let obj = JSON.parse(res.data) this.addObj = obj.addObj; this.sampleList = obj.sampleList; + this.selectTree = obj.selectTree }) }, delSampleAndProduct() { @@ -2325,10 +2357,12 @@ this.isAskOnlyRead = false } this.getProductLoad = true + let selectTreeList = this.selectTree.split(" - ") + this.addObj.model&&(selectTreeList[selectTreeList.length - 1] = this.addObj.model) this.$axios.post(this.$api.standardTree.selectStandardProductList, { - model: row.model + '-' + row.modelNum, + model: (this.addObj.model?this.addObj.model:row.model) + '-' + row.modelNum, standardMethodListId: val, - factory: this.selectTree, + factory: selectTreeList.join(" - "), }, { headers: { 'Content-Type': 'application/json' @@ -2432,6 +2466,7 @@ }) } else { this.productList.map(m => { + console.log('m----', m) m.state = 0 return m }) @@ -2666,25 +2701,97 @@ } }, 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 + // console.log(1111,item,this.bsm1DiaList) + for (let i =0;i<this.bsm1DiaList.length;i++){ + this.bsm1DiaList[i].bsm1Val = item.bsm1Val + let sections = JSON.parse(this.bsm1DiaList[i].bsmRow.section); + let asks = JSON.parse(this.bsm1DiaList[i].bsmRow.ask); + let tells = JSON.parse(this.bsm1DiaList[i].bsmRow.tell); + let manHours = JSON.parse(this.bsm1DiaList[i].bsmRow.manHour); + let prices = JSON.parse(this.bsm1DiaList[i].bsmRow.price); + for (var a in sections) { + if (this.bsm1DiaList[i].bsm1Val === sections[a]) { + this.productList.forEach(p => { + if (p.id === this.bsm1DiaList[i].bsmRow.id) { + p.section = sections[a] + p.ask = asks[a] + p.tell = tells[a] + p.manHour = manHours[a] + p.price = prices[a] + } + }) + break + } } } + this.changeProductList0() + this.currentMethod.insProduct = this.productList0 + }, + save1 () { + if (this.bsm1DiaList.length > 0) { + this.bsm1DiaList.forEach(item => { + if (!item.bsm1Val) { + throw this.$message.error('鐗规畩椤圭洰蹇呴』澶勭悊') + } + }) + } + if (this.bsm2) { + if (this.bsm2Val2.length === 0) { + this.$message.error('鐗规畩椤圭洰蹇呴』澶勭悊') + return + } + let set = new Set() + for (let i = 0; i < this.bsm2Val2.length; i++) { + let num0 = set.size + set.add(JSON.stringify(this.bsm2Val2[i])) + let num1 = set.size + if (num1 == num0) { + this.$message.error('鍏宠仈椤圭洰涓嶈兘閲嶅') + return + } + set.add(JSON.stringify(this.bsm2Val2[i].reverse())) + let num2 = set.size + if (num1 == num2) { + this.$message.error('鍏宠仈椤圭洰涓嶈兘閲嶅') + return + } + } + this.isBsm2Val2 = true; + } + this.bsm1DiaAll = false + }, + save2 () { + if (this.bsm1DiaList.length > 0) { + this.bsm1DiaList.forEach(item => { + if (!item.bsm1Val) { + throw this.$message.error('鐗规畩椤圭洰蹇呴』澶勭悊') + } + }) + } + if (this.bsm2) { + if (this.bsm2Val2.length === 0) { + this.$message.error('鐗规畩椤圭洰蹇呴』澶勭悊') + return + } + let set = new Set() + for (let i = 0; i < this.bsm2Val2.length; i++) { + let num0 = set.size + set.add(JSON.stringify(this.bsm2Val2[i])) + let num1 = set.size + if (num1 == num0) { + this.$message.error('鍏宠仈椤圭洰涓嶈兘閲嶅') + return + } + set.add(JSON.stringify(this.bsm2Val2[i].reverse())) + let num2 = set.size + if (num1 == num2) { + this.$message.error('鍏宠仈椤圭洰涓嶈兘閲嶅') + return + } + } + this.isBsm2Val2 = true; + } + this.bsm1Dia = false }, beforeClose(done) { // if (this.bsm1) { @@ -2757,9 +2864,8 @@ getTotal() { this.totalArr = [] this.total = 0; - // console.log(this.sampleList) this.sampleList.forEach(item => { - if (item.insProduct && item.insProduct.length > 0) { + if (item.insProduct && item.insProduct.length > 0) { item.insProduct.forEach(a => { this.totalArr.push(a) }) -- Gitblit v1.9.3