diff --git a/service-department/src/main/java/ink/wgink/service/department/service/impl/DepartmentServiceImpl.java b/service-department/src/main/java/ink/wgink/service/department/service/impl/DepartmentServiceImpl.java index a6b9f25d..8f054f43 100644 --- a/service-department/src/main/java/ink/wgink/service/department/service/impl/DepartmentServiceImpl.java +++ b/service-department/src/main/java/ink/wgink/service/department/service/impl/DepartmentServiceImpl.java @@ -27,6 +27,7 @@ import ink.wgink.service.department.pojo.vos.*; import ink.wgink.service.department.service.IDepartmentAdjustmentService; import ink.wgink.service.department.service.IDepartmentService; import ink.wgink.service.department.service.IDepartmentUserService; +import ink.wgink.util.ArrayListUtil; import ink.wgink.util.UUIDUtil; import ink.wgink.util.map.HashMapUtil; import ink.wgink.util.string.WStringUtil; @@ -345,7 +346,13 @@ public class DepartmentServiceImpl extends DefaultBaseService implements IDepart params.put("departmentParentId", departmentParentId); } params.put("departmentType", departmentType); - return departmentDao.listZTree(params); + List sourceZTreeDTO = departmentDao.listZTree(params); + List zTreeDTOs = ArrayListUtil.deepClone(sourceZTreeDTO, ZTreeDTO.class); + for (ZTreeDTO zTreeDTO : zTreeDTOs) { + Integer subCount = departmentDao.countByParentId(zTreeDTO.getId()); + setZTreeInfo(zTreeDTO, subCount); + } + return zTreeDTOs; } @Override