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 a2cc80839..ff58464ac 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 @@ -1371,10 +1371,11 @@ public class SysUserController { */ @ApiOperation(value = "树形") @RequestMapping(value = "/queryDepartUserTreeList", method = RequestMethod.GET) - public Result> queryDepartUserTreeList() { + public Result> queryDepartUserTreeList(String departId) { Result> result = new Result<>(); try { - List departTreeModelList = sysDepartService.queryTreeList(); + List departTreeModelList = sysDepartService.queryTreeListByDepartId(departId); + List departUserTreeModelList = new ArrayList<>(); departTreeModelList.forEach(item->{ //复制 diff --git a/jero-boot/jero-boot-module-system/src/main/java/com/jero/modules/system/service/ISysDepartService.java b/jero-boot/jero-boot-module-system/src/main/java/com/jero/modules/system/service/ISysDepartService.java index f3ceb8923..29298c12e 100644 --- a/jero-boot/jero-boot-module-system/src/main/java/com/jero/modules/system/service/ISysDepartService.java +++ b/jero-boot/jero-boot-module-system/src/main/java/com/jero/modules/system/service/ISysDepartService.java @@ -28,6 +28,8 @@ public interface ISysDepartService extends IService{ */ List queryTreeList(); + List queryTreeListByDepartId(String departId); + /** * 查询所有部门DepartId信息,并分节点进行显示 * @return diff --git a/jero-boot/jero-boot-module-system/src/main/java/com/jero/modules/system/service/impl/SysDepartServiceImpl.java b/jero-boot/jero-boot-module-system/src/main/java/com/jero/modules/system/service/impl/SysDepartServiceImpl.java index 115c0da5a..20f2b5224 100644 --- a/jero-boot/jero-boot-module-system/src/main/java/com/jero/modules/system/service/impl/SysDepartServiceImpl.java +++ b/jero-boot/jero-boot-module-system/src/main/java/com/jero/modules/system/service/impl/SysDepartServiceImpl.java @@ -23,6 +23,8 @@ import org.springframework.transaction.annotation.Transactional; import java.util.*; +import static com.jero.modules.system.util.FindsDepartsChildrenUtil.convertSysDepartToSysDepartTreeModel; + /** *

* 部门表 服务实现类 @@ -86,6 +88,31 @@ public class SysDepartServiceImpl extends ServiceImpl queryTreeListByDepartId(String departId) { + LambdaQueryWrapper query = new LambdaQueryWrapper(); + if (StringUtils.isBlank(departId)) { + query.isNull(SysDepart::getParentId); + } else { + query.eq(SysDepart::getParentId, departId); + } + query.eq(SysDepart::getDelFlag, CommonConstant.DEL_FLAG_0.toString()); + query.orderByAsc(SysDepart::getDepartOrder); + List list = this.list(query); + // 调用wrapTreeDataToTreeList方法生成树状数据 + List listResult = new ArrayList<>(); + for (int i = 0; i < list.size(); i++) { + SysDepart depart = list.get(i); + SysDepartTreeModel sysDepartTreeModel = new SysDepartTreeModel(); + // 将sysDepart转换为sysDepartTreeModel + convertSysDepartToSysDepartTreeModel(depart, sysDepartTreeModel); + listResult.add(sysDepartTreeModel); + } + return listResult; + } + @Cacheable(value = CacheConstant.SYS_DEPART_IDS_CACHE) @Override public List queryDepartIdTreeList() { @@ -297,7 +324,7 @@ public class SysDepartServiceImpl extends ServiceImpl