|
@@ -208,7 +208,7 @@ func (this *SysDepartmentController) ListDepartment() {
|
|
return
|
|
return
|
|
}
|
|
}
|
|
departmentGroup := make(map[int][]*system.SysGroupList)
|
|
departmentGroup := make(map[int][]*system.SysGroupList)
|
|
- groupTeam := make(map[int][]*system.SysTeamList)
|
|
|
|
|
|
+ groupTeam := make(map[int][]*system.SysGroupList)
|
|
for _, v := range groups {
|
|
for _, v := range groups {
|
|
if departmentGroup[v.DepartmentId] == nil {
|
|
if departmentGroup[v.DepartmentId] == nil {
|
|
departmentGroup[v.DepartmentId] = make([]*system.SysGroupList, 0)
|
|
departmentGroup[v.DepartmentId] = make([]*system.SysGroupList, 0)
|
|
@@ -218,28 +218,33 @@ func (this *SysDepartmentController) ListDepartment() {
|
|
}
|
|
}
|
|
if v.ParentId > 0 {
|
|
if v.ParentId > 0 {
|
|
if groupTeam[v.ParentId] == nil {
|
|
if groupTeam[v.ParentId] == nil {
|
|
- groupTeam[v.ParentId] = make([]*system.SysTeamList, 0)
|
|
|
|
|
|
+ groupTeam[v.ParentId] = make([]*system.SysGroupList, 0)
|
|
}
|
|
}
|
|
- groupTeam[v.ParentId] = append(groupTeam[v.ParentId], &system.SysTeamList{
|
|
|
|
- GroupId: v.GroupId,
|
|
|
|
- ParentId: v.ParentId,
|
|
|
|
- GroupName: v.GroupName,
|
|
|
|
- CreateTime: v.CreateTime,
|
|
|
|
|
|
+ groupTeam[v.ParentId] = append(groupTeam[v.ParentId], &system.SysGroupList{
|
|
|
|
+ GroupId: v.GroupId,
|
|
|
|
+ DepartmentId: v.DepartmentId,
|
|
|
|
+ ParentId: v.ParentId,
|
|
|
|
+ GroupName: v.GroupName,
|
|
|
|
+ CreateTime: v.CreateTime,
|
|
|
|
+ IsGroup: true,
|
|
|
|
+ Child: make([]*system.SysGroupList, 0),
|
|
})
|
|
})
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
|
|
// 数据重组
|
|
// 数据重组
|
|
- for _, groups := range departmentGroup {
|
|
|
|
- for _, g := range groups {
|
|
|
|
- g.IsGroup = true
|
|
|
|
- if groupTeam[g.GroupId] != nil {
|
|
|
|
- g.Child = groupTeam[g.GroupId]
|
|
|
|
- } else {
|
|
|
|
- g.Child = make([]*system.SysTeamList, 0)
|
|
|
|
- }
|
|
|
|
- }
|
|
|
|
|
|
+ for departmentId, groups := range departmentGroup {
|
|
|
|
+ //for _, g := range groups {
|
|
|
|
+ // g.IsGroup = true
|
|
|
|
+ // if groupTeam[g.GroupId] != nil {
|
|
|
|
+ // g.Child = groupTeam[g.GroupId]
|
|
|
|
+ // } else {
|
|
|
|
+ // g.Child = make([]*system.SysTeamList, 0)
|
|
|
|
+ // }
|
|
|
|
+ //}
|
|
|
|
+ departmentGroup[departmentId] = buildTree(groups, groupTeam)
|
|
}
|
|
}
|
|
|
|
+
|
|
for _, v := range departments {
|
|
for _, v := range departments {
|
|
v.IsDepartment = true
|
|
v.IsDepartment = true
|
|
if departmentGroup[v.DepartmentId] != nil {
|
|
if departmentGroup[v.DepartmentId] != nil {
|
|
@@ -280,6 +285,18 @@ func (this *SysDepartmentController) ListDepartment() {
|
|
br.Data = resp
|
|
br.Data = resp
|
|
}
|
|
}
|
|
|
|
|
|
|
|
+func buildTree(groups []*system.SysGroupList, groupTeam map[int][]*system.SysGroupList) []*system.SysGroupList {
|
|
|
|
+ for _, g := range groups {
|
|
|
|
+ g.IsGroup = true
|
|
|
|
+ if children, ok := groupTeam[g.GroupId]; ok {
|
|
|
|
+ g.Child = buildTree(children, groupTeam)
|
|
|
|
+ } else {
|
|
|
|
+ g.Child = make([]*system.SysGroupList, 0)
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+ return groups
|
|
|
|
+}
|
|
|
|
+
|
|
// DepartmentUserTree
|
|
// DepartmentUserTree
|
|
// @Title 获取部门及分组用户树
|
|
// @Title 获取部门及分组用户树
|
|
// @Description 获取部门列表接口
|
|
// @Description 获取部门列表接口
|