From 1b7e2aa24ff37b77749700f3f8647b7ab6f5a0e6 Mon Sep 17 00:00:00 2001 From: zhanghonghao Date: Mon, 13 Jan 2025 18:09:43 +0800 Subject: [PATCH 1/2] =?UTF-8?q?feat(REQ-3488):=20=E6=B7=BB=E5=8A=A0?= =?UTF-8?q?=E5=AE=A1=E6=89=B9=E4=BA=BA=E5=AD=97=E6=AE=B5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../orgmanax/dto/unit/register/dto/OrgUnitRegisterDTO.java | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/orgmanax-dto/src/main/java/cn/axzo/orgmanax/dto/unit/register/dto/OrgUnitRegisterDTO.java b/orgmanax-dto/src/main/java/cn/axzo/orgmanax/dto/unit/register/dto/OrgUnitRegisterDTO.java index 2f31a76..2ffad47 100644 --- a/orgmanax-dto/src/main/java/cn/axzo/orgmanax/dto/unit/register/dto/OrgUnitRegisterDTO.java +++ b/orgmanax-dto/src/main/java/cn/axzo/orgmanax/dto/unit/register/dto/OrgUnitRegisterDTO.java @@ -49,6 +49,11 @@ public class OrgUnitRegisterDTO implements Serializable { */ private String approvalMsg; + /** + * 审批人 + */ + private Long approver; + /** * 联系人&提交人姓名 */ From 22883d3ed4039565fe334a477a52ef1391cef870 Mon Sep 17 00:00:00 2001 From: songyuanlun Date: Tue, 14 Jan 2025 11:52:02 +0800 Subject: [PATCH 2/2] =?UTF-8?q?feat(REQ-3488):=20=E7=8F=AD=E7=BB=84?= =?UTF-8?q?=E7=B1=BB=E5=88=AB=E8=B0=83=E6=95=B4=E5=B9=B3=E5=8F=B0=E7=8F=AD?= =?UTF-8?q?=E7=BB=84=E6=9F=A5=E8=AF=A2=E9=80=BB=E8=BE=91?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../team/service/dto/ListTeamCategoryReq.java | 14 +++-- .../impl/ProjectTeamCategoryServiceImpl.java | 59 ++++++++++--------- 2 files changed, 40 insertions(+), 33 deletions(-) diff --git a/orgmanax-server/src/main/java/cn/axzo/orgmanax/server/project/team/service/dto/ListTeamCategoryReq.java b/orgmanax-server/src/main/java/cn/axzo/orgmanax/server/project/team/service/dto/ListTeamCategoryReq.java index 05699e4..afc104c 100644 --- a/orgmanax-server/src/main/java/cn/axzo/orgmanax/server/project/team/service/dto/ListTeamCategoryReq.java +++ b/orgmanax-server/src/main/java/cn/axzo/orgmanax/server/project/team/service/dto/ListTeamCategoryReq.java @@ -7,6 +7,7 @@ import cn.axzo.orgmanax.dto.project.team.enums.ValidationEnum; import cn.axzo.orgmanax.dto.project.team.req.PageOrgTeamCategoryReq; import cn.axzo.orgmanax.dto.project.team.req.TreeOrgTeamCategoryReq; import cn.hutool.core.bean.BeanUtil; +import cn.hutool.core.collection.CollUtil; import com.google.common.collect.Sets; import java.util.Objects; import java.util.Set; @@ -15,6 +16,7 @@ import lombok.Data; import lombok.EqualsAndHashCode; import lombok.NoArgsConstructor; import lombok.experimental.SuperBuilder; +import org.apache.commons.lang3.StringUtils; /** * @author syl @@ -70,10 +72,14 @@ public class ListTeamCategoryReq extends PageReqV2 { */ private Set projectTeamIds; - /** - * 平台班组id - */ - private Set platTeamIds; + public boolean isInvalid() { + return CollUtil.isEmpty(orgNodeIds) + && Objects.isNull(workspaceId) + && Objects.isNull(scene) + && StringUtils.isBlank(parentCode) + && CollUtil.isEmpty(categoryTypes) + && CollUtil.isEmpty(categoryCodes); + } public static ListTeamCategoryReq convertListReq(PageOrgTeamCategoryReq req){ ListTeamCategoryReq param = BeanUtil.copyProperties(req, ListTeamCategoryReq.class); diff --git a/orgmanax-server/src/main/java/cn/axzo/orgmanax/server/project/team/service/impl/ProjectTeamCategoryServiceImpl.java b/orgmanax-server/src/main/java/cn/axzo/orgmanax/server/project/team/service/impl/ProjectTeamCategoryServiceImpl.java index 621dd2f..4d890ec 100644 --- a/orgmanax-server/src/main/java/cn/axzo/orgmanax/server/project/team/service/impl/ProjectTeamCategoryServiceImpl.java +++ b/orgmanax-server/src/main/java/cn/axzo/orgmanax/server/project/team/service/impl/ProjectTeamCategoryServiceImpl.java @@ -22,7 +22,6 @@ import cn.hutool.json.JSONUtil; import com.google.common.collect.Lists; import com.google.common.collect.Maps; import com.google.common.collect.Sets; -import java.util.ArrayList; import java.util.HashSet; import java.util.List; import java.util.Map; @@ -63,6 +62,10 @@ public class ProjectTeamCategoryServiceImpl implements ProjectTeamCategoryServic @Override public List treeList(ListTeamCategoryReq param) { Map nodeTeamMap = resolveNodeIds(param); + if (param.isInvalid()) { + log.info("treeList TeamCategory param is empty"); + return Lists.newArrayList(); + } List categoryList = teamCategoryFoundationService.pageAll(param); if (CollUtil.isEmpty(categoryList)) { return Lists.newArrayList(); @@ -113,40 +116,38 @@ public class ProjectTeamCategoryServiceImpl implements ProjectTeamCategoryServic private Map resolveNodeIds(ListTeamCategoryReq param) { boolean hasProjectTeam = CollUtil.isNotEmpty(param.getProjectTeamIds()); - boolean hasPlatTeam = CollUtil.isNotEmpty(param.getPlatTeamIds()); - if (!hasProjectTeam && !hasPlatTeam) { + // 由于profile没有属性,只能通过orggateway查询 teamOuRelation 实现。 后续等待废弃 teamOuRelation 再优化 + //boolean hasPlatTeam = CollUtil.isNotEmpty(param.getPlatTeamIds()); + if (!hasProjectTeam) { return Maps.newHashMap(); } Set projectTeamNodeIds = new HashSet<>(); - Set platTeamNodeIds = new HashSet<>(); - List projectTeams = new ArrayList<>(); - if (hasProjectTeam) { - // todo 通过项目班组id获取组织节点id - projectTeams = queryTeams(param.getProjectTeamIds(), NodeTypeEnum.PROJECT_TEAM); - projectTeamNodeIds = projectTeams.stream() - .map(OrgProjectTeamDTO::getOrganizationalNodeId) - .collect(Collectors.toSet()); - } - if (hasPlatTeam) { - // todo 通过平台班组id获取组织节点id - List platTeams = queryTeams(param.getPlatTeamIds(), NodeTypeEnum.TEAM); - projectTeams.addAll(platTeams); - platTeamNodeIds = platTeams.stream() - .map(OrgProjectTeamDTO::getOrganizationalNodeId) - .collect(Collectors.toSet()); - } + //Set platTeamNodeIds = new HashSet<>(); + // todo 通过项目班组id获取组织节点id + List projectTeams = queryTeams(param.getProjectTeamIds(), NodeTypeEnum.PROJECT_TEAM); + projectTeamNodeIds = projectTeams.stream() + .map(OrgProjectTeamDTO::getOrganizationalNodeId) + .collect(Collectors.toSet()); +// if (hasPlatTeam) { +// // 通过平台班组id获取组织节点id 后续实现 +// List platTeams = queryTeams(param.getPlatTeamIds(), NodeTypeEnum.TEAM); +// projectTeams.addAll(platTeams); +// platTeamNodeIds = platTeams.stream() +// .map(OrgProjectTeamDTO::getOrganizationalNodeId) +// .collect(Collectors.toSet()); +// } - Set teamNodeIds; + Set teamNodeIds = intersectionNodeId(projectTeamNodeIds, param.getOrgNodeIds()); // 拼接 - if (!hasProjectTeam) { - teamNodeIds = intersectionNodeId(platTeamNodeIds, param.getOrgNodeIds()); - } else if (!hasPlatTeam) { - teamNodeIds = intersectionNodeId(projectTeamNodeIds, param.getOrgNodeIds()); - } else { - teamNodeIds = intersectionNodeId(Sets.intersection(projectTeamNodeIds, platTeamNodeIds) - , param.getOrgNodeIds()); - } +// if (!hasProjectTeam) { +// teamNodeIds = intersectionNodeId(platTeamNodeIds, param.getOrgNodeIds()); +// } else if (!hasPlatTeam) { +// teamNodeIds = intersectionNodeId(projectTeamNodeIds, param.getOrgNodeIds()); +// } else { +// teamNodeIds = intersectionNodeId(Sets.intersection(projectTeamNodeIds, platTeamNodeIds) +// , param.getOrgNodeIds()); +// } log.info("resolveNodeIds teamNodeIds = [{}]", JSONUtil.toJsonStr(teamNodeIds)); param.setOrgNodeIds(teamNodeIds);