From ff087240b3dee29ce4e14ad0836e76b9fdf312cf Mon Sep 17 00:00:00 2001
From: MrShi <1878285526@qq.com>
Date: 星期二, 19 八月 2025 09:28:07 +0800
Subject: [PATCH] Merge branch 'master' of http://139.186.142.91:10010/r/productDev/lianhelihua_sh
---
admin/src/components/common/Tree.vue | 145 +++++++++++++++++++++++++----------------------
1 files changed, 77 insertions(+), 68 deletions(-)
diff --git a/admin/src/components/common/Tree.vue b/admin/src/components/common/Tree.vue
index b522403..da887b6 100644
--- a/admin/src/components/common/Tree.vue
+++ b/admin/src/components/common/Tree.vue
@@ -1,22 +1,24 @@
<template>
- <div class="tree">
- <div v-for="(item, index) of list" :key="index" @click.stop="clickIten(item)">
- <div class="tree_item">
- <i class="el-icon-caret-bottom" :class="{ 'activeColor': item.actived === 1 }" v-show="item.fsStatus === 1 && item.childList.length > 0"></i>
- <i class="el-icon-caret-right color" v-show="item.childList.length > 0 && (item.fsStatus === 0 || !item.fsStatus)"></i>
- <div class="tree_item_label long-title-style" :title="item.name" :class="{ 'activeColor': item.actived === 1 }">{{ item.name }}</div>
- </div>
- <div class="tree_childern" v-show="item.fsStatus === 1">
- <tree
- :list="item.childList"
- :alllist="alllist"
- :defaultProps="defaultProps"
- @callback="callback"
- />
- <!-- @callback="callback" -->
- </div>
- </div>
+ <div class="tree">
+ <div v-for="(item, index) of list" :key="index" @click.stop="clickIten(item)">
+ <div class="tree_item">
+ <i class="el-icon-caret-bottom" :class="{ 'activeColor': item.fsStatus === 1 }" v-show="item.fsStatus === 1 && item.childList && item.childList.length > 0"></i>
+ <i class="el-icon-caret-right color" v-show="item.childList && item.childList.length > 0 && (item.fsStatus === 0 || !item.fsStatus)"></i>
+ <div class="tree_item_label long-title-style" :title="item.name" :class="{ 'activeColor': item.fsDate === 1 && item.childList && item.childList.length === 0 }">{{ item.name }}</div>
+ <!-- <i class="el-icon-caret-bottom" :class="{ 'activeColor': item[defaultProps.status] }" v-show="item[defaultProps.status] && item[defaultProps.children]"></i>-->
+ <!-- <i class="el-icon-caret-right color" v-show="item[defaultProps.children] && !item[defaultProps.status]"></i>-->
+ <!-- <div class="tree_item_label long-title-style" :title="item[defaultProps.name]" :class="{ 'activeColor': item[defaultProps.status] && !item[defaultProps.children] }">{{ item[defaultProps.name] }}</div>-->
+ </div>
+ <div class="tree_childern" v-show="item.fsStatus === 1">
+ <tree
+ :list="item.childList"
+ :defaultProps="defaultProps"
+ @callback="callback"
+ />
+ <!-- @callback="callback" -->
+ </div>
</div>
+ </div>
</template>
<script>
@@ -25,11 +27,6 @@
name: 'tree',
props: {
list: {
- type: Array,
- required: false,
- default: () => []
- },
- alllist: {
type: Array,
required: false,
default: () => []
@@ -58,33 +55,45 @@
}
},
methods: {
- listForList(){
- // console.log('===============================',this.alllist)
- },
// 鐐瑰嚮褰撳墠椤�
clickIten (item) {
- // this.listForList()
+ // item[this.defaultProps.status] = !item[this.defaultProps.status]
+ // this.list.forEach(subItem => {
+ // if ((subItem[this.defaultProps.id] !== item[this.defaultProps.id] && subItem[this.defaultProps.status]) || (this.list.length === 1 && subItem[this.defaultProps.status] === false)) {
+ // subItem[this.defaultProps.status] = false
+ // if (subItem[this.defaultProps.children]) {
+ // this.recursion(subItem[this.defaultProps.children])
+ // }
+ // }
+ // })
+ // if (this.tempItem['id'] === item[this.defaultProps.id]) {
+ // this.tempItem = {
+ // id: null,
+ // name: null,
+ // erpId: null
+ // }
+ // } else {
+ // this.tempItem.id = item[this.defaultProps.id]
+ // this.tempItem.name = item[this.defaultProps.name]
+ // this.tempItem.erpId = item['erpId']
+ // }
+ // item.fsDate === 0 || !item.fsDate ? item.fsDate = 1 : item.fsDate = 0
const fsDate = item.fsDate === 0 || !item.fsDate ? 1 : 0
- this.alllist.forEach(i => {
+ this.list.forEach(i => {
i.fsDate = 0
- i.actived = 0
- this.recursion1(i.childList)
})
item.fsDate = fsDate
- item.actived = 1
if (item.childList.length > 0) {
item.fsStatus === 0 || !item.fsStatus ? item.fsStatus = 1 : item.fsStatus = 0
}
this.$emit('callback', item, item)
},
- recursion1 (children) {
- if (!children || children.length === 0){
- return
- }
+ // 閫掑綊鏂规硶
+ recursion (children) {
children.forEach(item => {
- item.actived = 0
- if (item.childList && item.childList.length > 0) {
- this.recursion1(item.childList)
+ item.fsDate = 0
+ if (item.childList.length > 0) {
+ this.recursion(item.childList)
}
// item[this.defaultProps.status] = false
// if (item[this.defaultProps.children]) {
@@ -107,39 +116,39 @@
<style lang="scss" scoped>
.tree {
- /*width: 100%;*/
- /*height: auto;*/
- /*border-radius: 5px;*/
- /*overflow: hidden;*/
- /*border: 1px solid #eeeeee;*/
- /*box-sizing: border-box;*/
- .tree_childern {
- margin-left: 20px;
+ /*width: 100%;*/
+ /*height: auto;*/
+ /*border-radius: 5px;*/
+ /*overflow: hidden;*/
+ /*border: 1px solid #eeeeee;*/
+ /*box-sizing: border-box;*/
+ .tree_childern {
+ margin-left: 20px;
+ }
+ .activeItem {
+ background: #F4F7FC;
+ }
+ .tree_item {
+ display: flex;
+ align-items: center;
+ height: 48px;
+ cursor: pointer;
+ padding-left: 10px;
+ .tree_item_label {
+ font-size: 14px;
+ font-weight: 400;
+ color: #333333;
+ white-space: nowrap;
}
- .activeItem {
- background: #F4F7FC;
+ i {
+ margin-right: 5px;
}
- .tree_item {
- display: flex;
- align-items: center;
- height: 48px;
- cursor: pointer;
- padding-left: 10px;
- .tree_item_label {
- font-size: 14px;
- font-weight: 400;
- color: #333333;
- white-space: nowrap;
- }
- i {
- margin-right: 5px;
- }
- .color {
- color: #999999 !important;
- }
- .activeColor {
- color: #305ED5 !important;
- }
+ .color {
+ color: #999999 !important;
}
+ .activeColor {
+ color: #305ED5 !important;
+ }
+ }
}
</style>
--
Gitblit v1.9.3