From 66e5fe718384639f45881a1eec822564418f75ef Mon Sep 17 00:00:00 2001 From: value <z1292839451@163.com> Date: 星期二, 28 五月 2024 18:01:42 +0800 Subject: [PATCH] 修改光纤配置 --- src/components/do/b1-ins-order/fiberoptic-config.vue | 246 ++++++++++++++++++++++++++++++++++++------------- 1 files changed, 180 insertions(+), 66 deletions(-) diff --git a/src/components/do/b1-ins-order/fiberoptic-config.vue b/src/components/do/b1-ins-order/fiberoptic-config.vue index dc83943..3be7c9f 100644 --- a/src/components/do/b1-ins-order/fiberoptic-config.vue +++ b/src/components/do/b1-ins-order/fiberoptic-config.vue @@ -39,17 +39,19 @@ </div> <div class="search-item"> <label style="width: 70px;">妫�娴嬮噺</label> - <el-input v-model="packageInfo.num3" placeholder="璇疯緭鍏�" size="small" @change="upNum" :disabled="packageInfo.radio===0"></el-input> + <el-input v-model="packageInfo.num3" placeholder="璇疯緭鍏�" size="small" @change="upNum" + :disabled="packageInfo.radio===0"></el-input> </div> </div> - <el-table ref="table0" :data="bushing" tooltip-effect="dark" style="width: 100%" height="203px" - size="small" @selection-change="handleSelectionChange1"> + <el-table ref="table0" :data="bushing" tooltip-effect="dark" style="width: 100%" height="203px" size="small" + @selection-change="handleSelectionChange1"> <el-table-column type="selection" width="45"> </el-table-column> <el-table-column label="绠¤壊鏍�" show-overflow-tooltip> <template slot-scope="scope"> <el-select v-model="scope.row.color" size="mini"> - <el-option v-for="(color,i) in colors" :key="i" :label="color.lable" :value="color.value"></el-option> + <el-option v-for="(color,i) in colors" :key="i" :label="color.lable" + :value="color.value"></el-option> </el-select> </template> </el-table-column> @@ -91,56 +93,65 @@ <el-row :gutter="10"> <el-col :span="12"> <div class="grid-content"> - <h5>鍏夌氦甯�<el-button size="mini" type="primary" class="btns">鐢熸垚鍏夌氦甯�</el-button></h5> + <h5>鍏夌氦甯� + <el-button size="mini" type="primary" class="btns" @click="addFibers" + :disabled="miresModel===null||miresStandard===null">鐢熸垚鍏夌氦甯�</el-button> + <el-button size="mini" class="btns" @click="clearFibers" :disabled="selectBushing.length === 0">娓呴櫎</el-button> + </h5> <div style="display: flex;align-items: center;justify-content: space-between;margin:4px 0 6px 0;padding: 0 12px;box-sizing: border-box;"> <div class="search-item" style="width: 50%;margin-right: 16px;"> <label style="width: 80px;">绾ゅ甫绫诲瀷</label> - <el-select v-model="tape.value" placeholder="璇烽�夋嫨" size="small" style="width: 100%;" :disabled="selectBushing.length===0"> - <el-option v-for="item in options" :key="item.value" :label="item.label" :value="item.value"> + <el-select v-model="miresModel" placeholder="璇烽�夋嫨" size="small" style="width: 100%;" + :disabled="bushing.length===0"> + <el-option v-for="(item,a) in miresModels" :key="a" :label="item.label" :value="item.value"> </el-option> </el-select> </div> <div class="search-item" style="width: 50%;"> <label style="width: 80px;">鍙傝�冩爣鍑�</label> - <el-select v-model="tape.value" placeholder="璇烽�夋嫨" size="small" style="width: 100%;"> - <el-option v-for="item in options" :key="item.value" :label="item.label" :value="item.value"> + <el-select v-model="miresStandard" placeholder="璇烽�夋嫨" size="small" style="width: 100%;" + :disabled="miresModel===null" @focus="selectsStandardMethodByFLSSM2()" + @change="(value)=>methodChange2(value)"> + <el-option v-for="item in miresStandards" :key="item.id" :label="item.code" :value="item.id"> </el-option> </el-select> </div> </div> - <el-table ref="table2" :data="tableData" tooltip-effect="dark" style="width: 100%" height="270px" - size="small" @selection-change="handleSelectionChange"> + <el-table ref="table2" :data="fibersList" tooltip-effect="dark" style="width: 100%" height="270px" + size="small" @selection-change="handleSelectionChange" highlight-current-row> <el-table-column type="selection" width="55"> </el-table-column> - <el-table-column label="鍏夌氦甯︾紪鍙�" show-overflow-tooltip> - <template slot-scope="scope">{{ scope.row.date }}</template> + <el-table-column prop="code" label="鍏夌氦甯︾紪鍙�" show-overflow-tooltip align="center"> </el-table-column> - <el-table-column prop="name" label="鍏夌氦甯﹁鏍�" show-overflow-tooltip> + <el-table-column prop="model" label="鍏夌氦甯﹁鏍�" show-overflow-tooltip align="center"> </el-table-column> - <el-table-column prop="address" label="鍙傝�冩爣鍑�" show-overflow-tooltip> + <el-table-column prop="standard" label="鍙傝�冩爣鍑�" show-overflow-tooltip align="center"> </el-table-column> - <el-table-column prop="address" label="鍏夌氦妫�娴嬮噺" show-overflow-tooltip> + <el-table-column prop="num" label="鍏夌氦妫�娴嬮噺" show-overflow-tooltip align="center"> </el-table-column> </el-table> </div> </el-col> <el-col :span="12"> <div class="grid-content"> - <h5>鍏夌氦<el-button size="mini" type="primary" class="btns" @click="addFiber" :disabled="mireModel===null||mireStandard===null">鍏夌氦閰嶈壊</el-button></h5> + <h5>鍏夌氦<el-button size="mini" type="primary" class="btns" @click="addFiber" + :disabled="mireModel===null||mireStandard===null">鍏夌氦閰嶈壊</el-button></h5> <div style="display: flex;align-items: center;justify-content: space-between;margin: 4px 0 6px 0;padding: 0 12px;box-sizing: border-box;"> <div class="search-item" style="width: 50%;margin-right: 16px;"> <label style="width: 80px;">鍏夌氦绫诲瀷</label> - <el-select v-model="mireModel" placeholder="璇烽�夋嫨" size="small" style="width: 100%;" :disabled="selectBushing.length===0"> + <el-select v-model="mireModel" placeholder="璇烽�夋嫨" size="small" style="width: 100%;" + :disabled="bushing.length===0"> <el-option v-for="(item,a) in mireModels" :key="a" :label="item.label" :value="item.value"> </el-option> </el-select> </div> <div class="search-item" style="width: 50%;"> <label style="width: 80px;">鍙傝�冩爣鍑�</label> - <el-select v-model="mireStandard" placeholder="璇烽�夋嫨" size="small" style="width: 100%;" :disabled="mireModel===null" - @focus="selectsStandardMethodByFLSSM()" @change="(value)=>methodChange(value)"> + <el-select v-model="mireStandard" placeholder="璇烽�夋嫨" size="small" style="width: 100%;" + :disabled="mireModel===null" @focus="selectsStandardMethodByFLSSM()" + @change="(value)=>methodChange(value)"> <el-option v-for="item in mireStandards" :key="item.id" :label="item.code" :value="item.id"> </el-option> </el-select> @@ -155,7 +166,8 @@ <el-table-column prop="color" label="鍏夌氦鑹叉爣" width="120"> <template slot-scope="scope"> <el-select v-model="scope.row.color" size="mini"> - <el-option v-for="(color,i) in colors" :key="i" :label="color.lable" :value="color.value"></el-option> + <el-option v-for="(color,i) in colors" :key="i" :label="color.lable" + :value="color.value"></el-option> </el-select> </template> </el-table-column> @@ -197,67 +209,68 @@ mireModel: null, mireStandard: [], mireStandards: null, + miresModels: [], + miresModel: null, + miresStandard: [], + miresStandards: null, selectBushing: [], productList: [], - fiberList: [] + productList2: [], + fiberList: [], + fibersList: [], + selectFibers: [] } }, mounted() { - this.$parent.sampleIds.forEach(a=>{ + this.$parent.sampleIds.forEach(a => { for (var i = 0; i < this.$parent.sampleList.length; i++) { if (this.$parent.sampleList[i].id == a) { this.sample.push(this.$parent.sampleList[i]) - this.models+=(','+this.$parent.sampleList[i].model) + this.models += (',' + this.$parent.sampleList[i].model) break } } }) - this.models = this.models.replace(',','') + this.models = this.models.replace(',', '') this.getTypeDicts1() - this.getTypeDicts2() this.getStandTreeBySampleType() + this.getStandTreeBySampleType2() }, methods: { - save() {}, - handleSelectionChange(val) {}, - handleSelectionChange1(val){ + handleSelectionChange(val) { + this.selectFibers = val + }, + handleSelectionChange1(val) { this.selectBushing = val }, - outConfig(){ + outConfig() { this.$parent.configShow = false }, getTypeDicts1() { - this.$axios.post(this.$api.enums.selectEnumByCategory, { - category: "鑹叉爣" - }).then(res => { + this.$axios.post(this.$api.enums.selectEnumByCategory, { + category: "鑹叉爣" + }).then(res => { this.colors = res.data - }) + }) }, - getTypeDicts2() { - this.$axios.post(this.$api.enums.selectEnumByCategory, { - category: "绾胯姱" - }).then(res => { - this.wires = res.data - }) - }, - upNum(){ - if(this.packageInfo.radio === 0){ + upNum() { + if (this.packageInfo.radio === 0) { this.packageInfo.num3 = this.packageInfo.num2 } - if(parseInt(this.packageInfo.num2) < parseInt(this.packageInfo.num3)){ + if (parseInt(this.packageInfo.num2) < parseInt(this.packageInfo.num3)) { this.packageInfo.num3 = this.packageInfo.num2 } - if(this.packageInfo.num1!==null&&this.packageInfo.num1!=='' - &&this.packageInfo.num2!==null&&this.packageInfo.num2!=='' - &&this.packageInfo.num3!=null&&this.packageInfo.num3!==''){ + if (this.packageInfo.num1 !== null && this.packageInfo.num1 !== '' && + this.packageInfo.num2 !== null && this.packageInfo.num2 !== '' && + this.packageInfo.num3 != null && this.packageInfo.num3 !== '') { let colors2 = [] - if(this.packageInfo.num1 / this.colors.length > 1){ + if (this.packageInfo.num1 / this.colors.length > 1) { let num = this.packageInfo.num1 / this.colors.length - if(this.packageInfo.num1 % this.colors.length > 0) num+=1 + if (this.packageInfo.num1 % this.colors.length > 0) num += 1 for (var i = 0; i < num; i++) { colors2 = colors2.concat(this.colors) } - }else{ + } else { colors2 = colors2.concat(this.colors) } this.bushing = [] @@ -272,14 +285,17 @@ } this.bushing.push(bushing) } - }else{ + } else { this.bushing = [] } }, - getStandTreeBySampleType(){ - this.$axios.get(this.$api.standardTree.getStandTreeBySampleType).then(res=>{ + getStandTreeBySampleType() { + this.$axios.post(this.$api.standardTree.getStandTreeBySampleType, { + laboratory: '閫氫俊浜у搧瀹為獙瀹�', + sampleType: '鍏夌氦' + }).then(res => { this.mireModels = [] - res.data.forEach(a=>{ + res.data.forEach(a => { this.mireModels.push({ label: a.model, value: a.sample + ' - ' + a.model @@ -287,15 +303,38 @@ }) }) }, + getStandTreeBySampleType2() { + this.$axios.post(this.$api.standardTree.getStandTreeBySampleType, { + laboratory: '閫氫俊浜у搧瀹為獙瀹�', + sampleType: '鍏夌氦甯�' + }).then(res => { + this.miresModels = [] + res.data.forEach(a => { + this.miresModels.push({ + label: a.model, + value: a.sample + ' - ' + a.model + }) + }) + }) + }, selectsStandardMethodByFLSSM() { + this.mireStandards = [] this.$axios.post(this.$api.standardTree.selectsStandardMethodByFLSSM, { tree: '涓ぉ绉戞妧妫�娴嬩腑蹇� - 閫氫俊浜у搧瀹為獙瀹� - 鍏夌氦 - ' + this.mireModel }).then(res => { this.mireStandards = res.data.standardMethodList }) }, + selectsStandardMethodByFLSSM2() { + this.miresStandards = [] + this.$axios.post(this.$api.standardTree.selectsStandardMethodByFLSSM, { + tree: '涓ぉ绉戞妧妫�娴嬩腑蹇� - 閫氫俊浜у搧瀹為獙瀹� - 鍏夌氦甯� - ' + this.miresModel + }).then(res => { + this.miresStandards = res.data.standardMethodList + }) + }, methodChange(val) { - if(val===null||val==='')return + if (val === null || val === '') return this.$axios.post(this.$api.standardTree.selectStandardProductList, { model: this.mireModel.split(' - ')[1], standardMethodListId: val, @@ -316,36 +355,111 @@ }, 200) }) }, - addFiber(){ + methodChange2(val) { + if (val === null || val === '') return + this.$axios.post(this.$api.standardTree.selectStandardProductList, { + model: this.miresModel.split(' - ')[1], + standardMethodListId: val, + factory: '' + }, { + headers: { + 'Content-Type': 'application/json' + } + }).then(res => { + res.data.forEach(a => { + a.state = 0 + }) + this.productList2 = res.data + setTimeout(() => { + this.productList2.forEach(a => { + if (a.state == 1) this.toggleSelection(a) + }) + }, 200) + }) + }, + addFiber() { let colors2 = [] - if(this.packageInfo.num1 / this.colors.length > 1){ + if (this.packageInfo.num1 / this.colors.length > 1) { let num = this.packageInfo.num1 / this.colors.length - if(this.packageInfo.num1 % this.colors.length > 0) num+=1 + if (this.packageInfo.num1 % this.colors.length > 0) num += 1 for (var i = 0; i < num; i++) { colors2 = colors2.concat(this.colors) } - }else{ + } else { colors2 = colors2.concat(this.colors) } this.fiberList = [] let model = this.mireModel.split(' - ')[1] - let standard = this.mireStandards.find(a=>a.id == this.mireStandard).code - this.selectBushing.forEach(a=>{ - for (var i = 0; i < a.num3; i++) { - if(this.packageInfo.ismiers){ - - }else{ + let standard = this.mireStandards.find(a => a.id == this.mireStandard).code + if (this.packageInfo.ismiers) { + /* if(this.selectFibers.length === 0){ + this.$message.error('鏈�夋嫨鍏夌氦甯�') + return + } */ + // this.selectFibers.forEach(a => { + this.fibersList.forEach(a => { + for (var i = 0; i < parseInt(a.num); i++) { let fiber = { bushColor: a.color, color: colors2[i].label, model: model, - standard: standard + standard: standard, + product: this.productList } a.fiber.push(fiber) this.fiberList.push(fiber) } + }) + } else { + // this.selectBushing.forEach(a => { + this.bushing.forEach(a => { + for (var i = 0; i < parseInt(a.num3); i++) { + let fiber = { + bushColor: a.color, + color: colors2[i].label, + model: model, + standard: standard, + product: this.productList + } + a.fiber.push(fiber) + this.fiberList.push(fiber) + } + }) + } + }, + addFibers() { + this.fibersList = [] + let model = this.miresModel.split(' - ')[1] + let standard = this.miresStandards.find(a => a.id == this.miresStandard).code + this.packageInfo.ismiers = true + this.fiberList = [] + this.bushing.forEach(a => { + // this.selectBushing.forEach(a => { + a.fiber = [] + for (var i = 0; i < parseInt(a.num3); i++) { + let fibers = { + code: null, + color: a.color, + model: model, + standard: standard, + num: a.num3, + product: this.HaveJson(this.productList2), + fiber: [] + } + a.fibers.push(fibers) + this.fibersList.push(fibers) } }) + }, + clearFibers(){ + this.packageInfo.ismiers = false + this.fibersList = [] + this.bushing.forEach(a=>{ + a.fibers = [] + }) + }, + save(){ + console.log(this.bushing); } } } -- Gitblit v1.9.3