From bef0978ab26369e2000820fafe76a1494ef7a3f0 Mon Sep 17 00:00:00 2001 From: 王震 <10952869+daywangzhen@user.noreply.gitee.com> Date: 星期三, 13 九月 2023 14:34:50 +0800 Subject: [PATCH] 改bug --- src/components/view/mbom.vue | 124 ++++++++++++++++++++++++++++++---------- 1 files changed, 92 insertions(+), 32 deletions(-) diff --git a/src/components/view/mbom.vue b/src/components/view/mbom.vue index 155fb78..5472b93 100644 --- a/src/components/view/mbom.vue +++ b/src/components/view/mbom.vue @@ -32,7 +32,7 @@ <el-form-item label="宸ュ簭"> <template> <el-select v-model="search.work" - placeholder="璇烽�夋嫨绫诲瀷" + placeholder="璇烽�夋嫨" allow-create filterable @change="workevent" @@ -136,16 +136,21 @@ </div> <div class="thing"> <div class="left"> - <el-input v-model="search.technology" suffix-icon="el-icon-search" placeholder="璇疯緭鍏ユ悳绱㈠唴瀹�" size="small" clearable ></el-input> - <el-tree :data="list" ref="tree" + <el-input v-model="search.technology" @input="query" suffix-icon="el-icon-search" placeholder="璇疯緭鍏ユ悳绱㈠唴瀹�" size="small" clearable ></el-input> + <el-tree + :data="list" ref="tree" + style="height: 500px;overflow-y: auto;" + highlight-current :props="{children: 'children',label: 'name'}" - node-key="id" default-expand-all @node-click="handleNodeClick" > + node-key="name" + default-expand-all + @node-click="handleNodeClick" > <div class="custom-tree-node" slot-scope="{ node, data }"> - <span><i :class="`node_i ${data.code != '[3]'?'el-icon-folder-opened':'el-icon-tickets'}`"></i> + <span><i :class="`node_i ${data.code != '[2]'?'el-icon-folder-opened':'el-icon-tickets'}`"></i> {{data.code}} {{ data.name }}</span> - <el-button type="text" size="mini" @click.stop="remove(node, data)"> + <!-- <el-button type="text" size="mini" @click.stop="remove(node, data)"> <i class="el-icon-delete"></i> - </el-button> + </el-button> --> </div> </el-tree> </div> @@ -181,12 +186,15 @@ export default { data() { return { - search:{}, + search:{ + type: 0, + technology: '' + }, list:[], process:{}, // handleClose:[], checkTreeNode:{ - id:2, + id:'', }, tableData:[], tableapi:[{ @@ -196,12 +204,6 @@ specifications:'', unit:'', }], - search:{ - type:'', - work:'', - craft:'', - - }, addsearch:{}, upData:{}, form:{}, @@ -216,6 +218,22 @@ this.selectAllMbom() }, methods:{ + selectDataList() { + this.list.forEach(a => { + a.code = '[1]' + if (a.children != undefined) { + a.children.forEach(b => { + b.code = '[2]' + if (b.children != undefined) { + b.children.forEach(c => { + c.code = '[3]' + }) + } + }) + } + }) + this.upIndex++ + }, workevent(val){ console.log(val); let idx = this.process.findIndex(el => el.name === val) @@ -235,16 +253,18 @@ }) }, addMbom(data) { - this.$axios.post(this.$api.url.addMbom,data - // { - // name:this.tableapi.name, - // qualityTraceability:this.tableapi.qualityTraceability, - // specifications:this.tableapi.specifications, - // supplier:this.tableapi.supplier, - // techTemId:this.craftapi.id, - // unit:this.tableapi.unit, - // } - , { + this.$axios.post(this.$api.url.addMbom,data,{ + // params:{ + // techTemId:this.craftapi.id, + // mbomModelDto2List:[{ + // name:this.tableapi.name, + // qualityTraceability:this.tableapi.qualityTraceability, + // specifications:this.tableapi.specifications, + // supplier:this.tableapi.supplier, + // unit:this.tableapi.unit, + // }] + // } + }, { headers: { "Content-Type": "application/json" } @@ -271,13 +291,42 @@ this.typeselect = val this.selectAllleft() }, + query() { + this.selectAllleft() + }, //宸﹁竟 selectAllleft() { this.$axios.get(this.$api.url.selectAllleft,{ - params:{type:this.typeselect} + params:{type:this.typeselect, + message:this.search.technology + } }).then(res => { this.list = res.data; console.log(this.list); + this.selectDataList() + this.$nextTick(() => { + this.$refs.tree.setCurrentKey(this.list[0].children[0].name) // 榛樿閫変腑鑺傜偣绗竴涓� + }) + let one=this.list.filter(item=>{ + return item.children.length>0 + })[0] + console.log(one); + let name=one.children[0].id + console.log(name); + this.selectAllMbomStart(name) + this.selectDataList(); + }, { + headers: { + "Content-Type": "application/json" + } + }) + }, + selectAllMbomStart(name) { + this.$axios.get(this.$api.url.selectAllMbom,{ + params:{id:name} + }).then(res => { + this.tableData = res.data; + console.log(this.tableData); }, { headers: { "Content-Type": "application/json" @@ -299,6 +348,7 @@ }, handleNodeClick(data){ this.checkTreeNode = data + console.log(data); console.log(this.checkTreeNode.id); this.selectAllMbom() }, @@ -309,30 +359,34 @@ }) .catch(_ => {}); }, + //鏂板 event(){ this.dialogVisible = true this.chooseTechFath() }, + //娣诲姞琛� Addrow() { if (this.tableapi == undefined) { this.tableapi = new Array(); } let obj = []; - this.tableapi.push(obj); }, skipshow(){ console.log('666'); let data = this.tableapi.at(-1) - // this.addMbom() data.techTemId = this.search.craft - // console.log(this.search.craft); - // console.log(data); - this.addMbom(data) - this.dialogVisible = false }, + //delAllMbom 鎵归噺鍒犻櫎 + delAllMbom() { + this.$axios.post(this.$api.url.delAllMbom,{ + ids:this.delete + }).then(res =>{ + this.selectAllMbom() + }) + }, dels() { this.selects.forEach(a => { for (var b = 0; b < this.tableData.length; b++) { @@ -342,6 +396,12 @@ } } }) + let cc = this.selects.map(el => { + return el.id + }) + this.delete = cc.join(',') + console.log(this.delete); + this.delAllMbom() this.$message.success('鍒犻櫎瀹屾垚') }, handleSelectionChange(val) { -- Gitblit v1.9.3