1234567891011121314151617181920212223242526272829 |
- package services
- import "hongze/hz_crm_api/models/cygx"
- func MakeTree(allNode []*cygx.CygxIndustryMapItems, node *cygx.CygxIndustryMapItems) {
- childs, _ := haveChild(allNode, node) //判断节点是否有子节点并返回
- if len(childs) > 0 {
- node.Children = append(node.Children, childs[0:]...) //添加子节点
- for _, v := range childs { //查询子节点的子节点,并添加到子节点
- _, has := haveChild(allNode, v)
- if has {
- MakeTree(allNode, v) //递归添加节点
- }
- }
- }
- }
- func haveChild(allNode []*cygx.CygxIndustryMapItems, node *cygx.CygxIndustryMapItems) (childs []*cygx.CygxIndustryMapItems, yes bool) {
- for _, v := range allNode {
- if v.ParentId == node.IndustryMapId {
- childs = append(childs, v)
- }
- }
- if len(childs) > 0 {
- yes = true
- }
- return
- }
|