From 1b4eec74c56526ec3ba56669fd39a693e1dd56f4 Mon Sep 17 00:00:00 2001 From: zhaokai Date: Wed, 10 Jun 2026 09:03:38 +0800 Subject: [PATCH] =?UTF-8?q?feat(department):=20=E6=B7=BB=E5=8A=A0=E5=85=8D?= =?UTF-8?q?=E6=9D=83=E9=99=90=E7=9A=84=E4=BC=81=E4=B8=9A=E9=83=A8=E9=97=A8?= =?UTF-8?q?=E6=A0=91=E6=9F=A5=E8=AF=A2=E5=8A=9F=E8=83=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .gitignore | 1 + .../basic/info/web/DepartmentController.java | 7 ++++ .../command/query/DepartmentQueryExe.java | 32 +++++++++++++++++++ .../info/service/DepartmentServiceImpl.java | 5 +++ .../basic/info/api/DepartmentServiceI.java | 2 ++ 5 files changed, 47 insertions(+) diff --git a/.gitignore b/.gitignore index bd5934fc..78d1bda3 100644 --- a/.gitignore +++ b/.gitignore @@ -37,3 +37,4 @@ build/ /.idea/ .idea +/start/src/main/resources/templates/ diff --git a/web-adapter/src/main/java/com/zcloud/basic/info/web/DepartmentController.java b/web-adapter/src/main/java/com/zcloud/basic/info/web/DepartmentController.java index 68ea93d0..33524ff4 100644 --- a/web-adapter/src/main/java/com/zcloud/basic/info/web/DepartmentController.java +++ b/web-adapter/src/main/java/com/zcloud/basic/info/web/DepartmentController.java @@ -85,6 +85,13 @@ public class DepartmentController { public MultiResponse listTree(@Validated @RequestBody DepartmentTreeQry qry) { return MultiResponse.of(departmentService.listTree(qry)); } + + @ApiOperation("企业下部门树状所有数据,免token") + @PostMapping("/listTreeNopermission") + public MultiResponse listTreeNopermission(@Validated @RequestBody DepartmentTreeQry qry) { + return MultiResponse.of(departmentService.listTreeNopermission(qry)); + } + @ApiOperation("所有企业下部门树状所有数据") @PostMapping("/listAllTree") public MultiResponse listAllTree() { diff --git a/web-app/src/main/java/com/zcloud/basic/info/command/query/DepartmentQueryExe.java b/web-app/src/main/java/com/zcloud/basic/info/command/query/DepartmentQueryExe.java index cbf1a29a..b42cefa7 100644 --- a/web-app/src/main/java/com/zcloud/basic/info/command/query/DepartmentQueryExe.java +++ b/web-app/src/main/java/com/zcloud/basic/info/command/query/DepartmentQueryExe.java @@ -202,5 +202,37 @@ public class DepartmentQueryExe { } + public Collection listTreeNopermission(DepartmentTreeQry departmentQry) { + if (Objects.isNull(departmentQry.getEqCorpinfoId())) { + throw new RuntimeException("请选择企业"); + } + Map parmas = PageQueryHelper.toHashMap(departmentQry); + List pageResponse = departmentRepository.listTree(parmas); + if (CollUtil.isEmpty(pageResponse)) { + return Collections.emptyList(); + } + List examCenterCOS = departmentCoConvertor.converDOsToInfoCOs(pageResponse); + //补充企业信息 + //补充企业名称 + Map corpinfoMap = corpInfoRepository.getCorpinfoNameByCorpinfoId(examCenterCOS.stream().map(DepartmentTreeInfoCO::getCorpinfoId).collect(Collectors.toList())); + if (CollUtil.isNotEmpty(corpinfoMap)) { + List departmentIds = examCenterCOS.stream().peek(examCenterCO -> { + examCenterCO.setCorpinfoName(corpinfoMap.getOrDefault(examCenterCO.getCorpinfoId(), StringUtils.EMPTY)); + }).map(DepartmentTreeInfoCO :: getId).collect(Collectors.toList()); + Map deptMap = zcloudDepartmentFacade.listFullName(departmentIds); + examCenterCOS.forEach(examCenterCO -> { + examCenterCO.setFullName(deptMap.getOrDefault(examCenterCO.getId(), StringUtils.EMPTY)); + }); + } + //GBS部门根节点父部门是tenantId + if(departmentQry.getEqParentId()!=null){ + return Tools.buildEntityTree(examCenterCOS, "id", "parentId", "childrenList",departmentQry.getEqParentId()); + + }else{ + return Tools.buildEntityTree(examCenterCOS, "id", "parentId", "childrenList",0L); + + } + + } } diff --git a/web-app/src/main/java/com/zcloud/basic/info/service/DepartmentServiceImpl.java b/web-app/src/main/java/com/zcloud/basic/info/service/DepartmentServiceImpl.java index ebb6a3a0..f770907a 100644 --- a/web-app/src/main/java/com/zcloud/basic/info/service/DepartmentServiceImpl.java +++ b/web-app/src/main/java/com/zcloud/basic/info/service/DepartmentServiceImpl.java @@ -101,5 +101,10 @@ public class DepartmentServiceImpl implements DepartmentServiceI { String name = Tools.getTreeFullName(list,"id", "parentId", "name", deptId); return name; } + + @Override + public Collection listTreeNopermission(DepartmentTreeQry qry) { + return departmentQueryExe.listTreeNopermission(qry); + } } diff --git a/web-client/src/main/java/com/zcloud/basic/info/api/DepartmentServiceI.java b/web-client/src/main/java/com/zcloud/basic/info/api/DepartmentServiceI.java index a03e74ee..bdcc42b0 100644 --- a/web-client/src/main/java/com/zcloud/basic/info/api/DepartmentServiceI.java +++ b/web-client/src/main/java/com/zcloud/basic/info/api/DepartmentServiceI.java @@ -44,5 +44,7 @@ public interface DepartmentServiceI { Collection listAllTreeByCorpType(DepartmentTreeQry qry); + + Collection listTreeNopermission(DepartmentTreeQry qry); }