From 1a874fa5f58c97c2cb8b3f38a1a089268f4bf124 Mon Sep 17 00:00:00 2001 From: zouyu <2723363702@qq.com> Date: 星期一, 11 九月 2023 18:05:52 +0800 Subject: [PATCH] modified: src/assets/api/controller.js deleted: src/components/view/standard-table/bom.vue modified: src/components/view/standard-table/material.vue new file: src/components/view/standard-table/product.vue modified: src/components/view/standard-table/target.vue modified: src/components/view/standard-table/technology.vue modified: src/components/view/standard.vue --- src/components/view/standard-table/material.vue | 61 +++++++++++++++++++++++++----- 1 files changed, 50 insertions(+), 11 deletions(-) diff --git a/src/components/view/standard-table/material.vue b/src/components/view/standard-table/material.vue index 7ae1a84..66e3416 100644 --- a/src/components/view/standard-table/material.vue +++ b/src/components/view/standard-table/material.vue @@ -1,12 +1,13 @@ <template> <div class="standard"> <div> - <el-table :data="tableData" max-height="675" style="width: 100%;margin-bottom: 20px;" row-key="rowId" border + <el-table :data="tableData" max-height="675" row-key="rowId" border + @select-all="selectAll" @select="selectTr" ref="multipleTable" @selection-change="handleSelectionChange" default-expand-all :tree-props="{ children: 'children', hasChildren: 'hasChildren' }"> <el-table-column type="selection" width="55"> </el-table-column> - <el-table-column type="index" width="50" label="搴忓彿"> + <el-table-column type="index" width="60" label="搴忓彿"> </el-table-column> <el-table-column prop="father" label="宸ュ簭" sortable width="200px"> <template slot-scope="scope"> @@ -19,7 +20,7 @@ <el-table-column prop="tname" sortable label="宸ヨ壓鍚嶇О"> <template slot-scope="scope"> <el-tag type="success" v-if="scope.row.tname != null">02</el-tag> - <span style="color: black"> + <span style="color: #000000"> {{ scope.row.tname }} </span> </template> @@ -54,16 +55,54 @@ } }, props:['tableData','tableType'], - created() { - console.log(this.tableData,this.tableType) - }, - mounted() { - - }, + created() {}, + mounted() {}, methods: { + // 琛ㄦ牸鏍戝叏閮ㄩ�変腑閰嶇疆 + // 鍏ㄩ��/鍙栨秷閫夋搷浣� + selectAll(val) { + this.isAllSelect = !this.isAllSelect; + let data = this.tableData; + this.toggleSelect(data, this.isAllSelect, "all"); + }, + //閫夋嫨鏌愯 + selectTr(selection, row) { + this.$set(row, "isChecked", !row.isChecked); + this.$nextTick(() => { + this.isAllSelect = row.isChecked; + this.toggleSelect(row, row.isChecked, "tr"); + }); + }, + //閫掑綊瀛愮骇 + toggleSelect(data, flag, type) { + if (type === "all") { + if (data.length > 0) { + data.forEach((item) => { + this.toggleSelection(item, flag); + if (item.children && item.children.length > 0) { + this.toggleSelect(item.children, flag, type); + } + }); + } + } else { + if (data.children && data.children.length > 0) { + data.children.forEach((item) => { + item.isChecked = !item.isChecked; + this.$refs.multipleTable.toggleRowSelection(item, flag); + this.toggleSelect(item, flag, type); + }); + } + } + }, handleSelectionChange(val) { - this.selects = val; - } + this.deleteList = []; + val.forEach((v) => { + if (v.id !== undefined) { + this.deleteList.push(v.id); + } + }); + }, + // 琛ㄦ牸鏍戝叏閮ㄩ�変腑閰嶇疆 缁撴潫 } } </script> -- Gitblit v1.9.3