diff --git a/jero-boot/jero-boot-module-system/src/main/java/com/jero/modules/system/controller/SysUserController.java b/jero-boot/jero-boot-module-system/src/main/java/com/jero/modules/system/controller/SysUserController.java index 9d8a7a787..4a67f32ad 100644 --- a/jero-boot/jero-boot-module-system/src/main/java/com/jero/modules/system/controller/SysUserController.java +++ b/jero-boot/jero-boot-module-system/src/main/java/com/jero/modules/system/controller/SysUserController.java @@ -21,6 +21,7 @@ import com.jero.common.system.util.JwtUtil; import com.jero.common.system.vo.LoginUser; import com.jero.common.system.vo.SysDepartTreeModel; import com.jero.common.system.vo.SysDepartUserTreeModel; +import com.jero.common.system.vo.SysUserTreeModel; import com.jero.common.util.ImportExcelUtil; import com.jero.common.util.PasswordUtil; import com.jero.common.util.RedisUtil; @@ -63,6 +64,7 @@ import java.io.IOException; import java.util.*; import java.util.stream.Collectors; + /** *

* 用户表 前端控制器 @@ -1533,7 +1535,53 @@ public class SysUserController { result.setSuccess(true); return result; } + /** + * 查询数据 查出所有部门及其用户 + * + * @return + */ + @ApiOperation(value = "用户管理-查出所有部门及其用户") + @RequestMapping(value = "/queryUserTreeList", method = RequestMethod.GET) + public Result> queryUserTreeList(String cut) { + Result> result = new Result<>(); + List dutList = new ArrayList<>(); + List departTreeModelList = sysDepartService.queryTreeList(cut); + for (SysDepartTreeModel sdtm: departTreeModelList) { + dutList.addAll(findChildNode(sdtm)); + } + result.setResult(dutList); + result.setSuccess(true); + return result; + } + private List findChildNode(SysDepartTreeModel sdtModel) { + List resList = new ArrayList<>(); + DepartUserTree dut = new DepartUserTree(); + dut.setId(sdtModel.getId()); + dut.setName(sdtModel.getDepartName()); + dut.setParentId(sdtModel.getParentId()); + dut.setType("Depart"); + resList.add(dut); + + List departIds = new ArrayList<>(); + departIds.add(sdtModel.getId()); + List sysUserList = sysUserService.getUserListByDepIds(departIds); + for (SysUser user: sysUserList) { + DepartUserTree dut1 = new DepartUserTree(); + dut1.setId(user.getId()); + dut1.setName(user.getUsername()); + dut1.setParentId(sdtModel.getId()); + dut1.setType("User"); + resList.add(dut1); + } + + if (sdtModel.getChildren() != null && sdtModel.getChildren().size() > 0) { + for (SysDepartTreeModel sdtModel1 : sdtModel.getChildren()) { + resList.addAll(findChildNode(sdtModel1)); + } + } + return resList; + } @AutoLog(value = "文档库推送部门和人员的模糊搜索") @ApiOperation(value="文档库推送部门和人员的模糊搜索", notes="文档库推送部门和人员的模糊搜索") diff --git a/jero-boot/jero-boot-module-system/src/main/java/com/jero/modules/system/entity/DepartUserTree.java b/jero-boot/jero-boot-module-system/src/main/java/com/jero/modules/system/entity/DepartUserTree.java new file mode 100644 index 000000000..f7a27c471 --- /dev/null +++ b/jero-boot/jero-boot-module-system/src/main/java/com/jero/modules/system/entity/DepartUserTree.java @@ -0,0 +1,50 @@ +package com.jero.modules.system.entity; + +public class DepartUserTree { + private String id; + private String parentId; + private String name; + private String type; + + public String getId() { + return id; + } + + public void setId(String id) { + this.id = id; + } + + public String getParentId() { + return parentId; + } + + public void setParentId(String parentId) { + this.parentId = parentId; + } + + public String getName() { + return name; + } + + public void setName(String name) { + this.name = name; + } + + public String getType() { + return type; + } + + public void setType(String type) { + this.type = type; + } + + @Override + public String toString() { + return "DepartUserTree{" + + "id='" + id + '\'' + + ", parentId='" + parentId + '\'' + + ", name='" + name + '\'' + + ", type='" + type + '\'' + + '}'; + } +}