From e5c6d00438e8f612cd97988a2593f7f6109de881 Mon Sep 17 00:00:00 2001 From: zengqiao Date: Thu, 9 Feb 2023 16:56:36 +0800 Subject: [PATCH] =?UTF-8?q?[Feature]MM2=E7=AE=A1=E7=90=86-=E8=A1=A5?= =?UTF-8?q?=E5=85=85=E9=9B=86=E7=BE=A4Group=E5=88=97=E8=A1=A8=E4=BF=A1?= =?UTF-8?q?=E6=81=AF(#894)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../streaming/km/biz/group/GroupManager.java | 2 +- .../dto/cluster/ClusterGroupsOverviewDTO.java | 19 -------- .../km/core/service/group/GroupService.java | 1 + .../service/group/impl/GroupServiceImpl.java | 8 ++++ .../v3/cluster/ClusterGroupsController.java | 48 ++++--------------- 5 files changed, 20 insertions(+), 58 deletions(-) delete mode 100644 km-common/src/main/java/com/xiaojukeji/know/streaming/km/common/bean/dto/cluster/ClusterGroupsOverviewDTO.java diff --git a/km-biz/src/main/java/com/xiaojukeji/know/streaming/km/biz/group/GroupManager.java b/km-biz/src/main/java/com/xiaojukeji/know/streaming/km/biz/group/GroupManager.java index a3686c03..5a6d3ac6 100644 --- a/km-biz/src/main/java/com/xiaojukeji/know/streaming/km/biz/group/GroupManager.java +++ b/km-biz/src/main/java/com/xiaojukeji/know/streaming/km/biz/group/GroupManager.java @@ -39,5 +39,5 @@ public interface GroupManager { Result resetGroupOffsets(GroupOffsetResetDTO dto, String operator) throws Exception; - List getGroupTopicOverviewVOList (Long clusterPhyId, List groupMemberPOList); + List getGroupTopicOverviewVOList(Long clusterPhyId, List groupMemberPOList); } diff --git a/km-common/src/main/java/com/xiaojukeji/know/streaming/km/common/bean/dto/cluster/ClusterGroupsOverviewDTO.java b/km-common/src/main/java/com/xiaojukeji/know/streaming/km/common/bean/dto/cluster/ClusterGroupsOverviewDTO.java deleted file mode 100644 index 13d13b52..00000000 --- a/km-common/src/main/java/com/xiaojukeji/know/streaming/km/common/bean/dto/cluster/ClusterGroupsOverviewDTO.java +++ /dev/null @@ -1,19 +0,0 @@ -package com.xiaojukeji.know.streaming.km.common.bean.dto.cluster; - -import com.xiaojukeji.know.streaming.km.common.bean.dto.pagination.PaginationMulFuzzySearchDTO; -import io.swagger.annotations.ApiModelProperty; -import lombok.Data; - - -/** - * @author zengqiao - * @date 22/02/24 - */ -@Data -public class ClusterGroupsOverviewDTO extends PaginationMulFuzzySearchDTO { - @ApiModelProperty("查找该Topic") - private String topicName; - - @ApiModelProperty("查找该Group") - private String groupName; -} diff --git a/km-core/src/main/java/com/xiaojukeji/know/streaming/km/core/service/group/GroupService.java b/km-core/src/main/java/com/xiaojukeji/know/streaming/km/core/service/group/GroupService.java index 3f56a0b3..47317c80 100644 --- a/km-core/src/main/java/com/xiaojukeji/know/streaming/km/core/service/group/GroupService.java +++ b/km-core/src/main/java/com/xiaojukeji/know/streaming/km/core/service/group/GroupService.java @@ -58,6 +58,7 @@ public interface GroupService { /** * DB-GroupTopic相关接口 */ + List listGroupByCluster(Long clusterPhyId); List listGroupByTopic(Long clusterPhyId, String topicName); PaginationResult pagingGroupMembers(Long clusterPhyId, diff --git a/km-core/src/main/java/com/xiaojukeji/know/streaming/km/core/service/group/impl/GroupServiceImpl.java b/km-core/src/main/java/com/xiaojukeji/know/streaming/km/core/service/group/impl/GroupServiceImpl.java index c80652ee..15dc2108 100644 --- a/km-core/src/main/java/com/xiaojukeji/know/streaming/km/core/service/group/impl/GroupServiceImpl.java +++ b/km-core/src/main/java/com/xiaojukeji/know/streaming/km/core/service/group/impl/GroupServiceImpl.java @@ -224,6 +224,14 @@ public class GroupServiceImpl extends BaseKafkaVersionControlService implements return GroupStateEnum.getByState(poList.get(0).getState()); } + @Override + public List listGroupByCluster(Long clusterPhyId) { + LambdaQueryWrapper lambdaQueryWrapper = new LambdaQueryWrapper<>(); + lambdaQueryWrapper.eq(GroupMemberPO::getClusterPhyId, clusterPhyId); + + return groupMemberDAO.selectList(lambdaQueryWrapper); + } + @Override public List listGroupByTopic(Long clusterPhyId, String topicName) { LambdaQueryWrapper lambdaQueryWrapper = new LambdaQueryWrapper<>(); diff --git a/km-rest/src/main/java/com/xiaojukeji/know/streaming/km/rest/api/v3/cluster/ClusterGroupsController.java b/km-rest/src/main/java/com/xiaojukeji/know/streaming/km/rest/api/v3/cluster/ClusterGroupsController.java index b035ea02..7159dca9 100644 --- a/km-rest/src/main/java/com/xiaojukeji/know/streaming/km/rest/api/v3/cluster/ClusterGroupsController.java +++ b/km-rest/src/main/java/com/xiaojukeji/know/streaming/km/rest/api/v3/cluster/ClusterGroupsController.java @@ -2,21 +2,20 @@ package com.xiaojukeji.know.streaming.km.rest.api.v3.cluster; import com.xiaojukeji.know.streaming.km.biz.group.GroupManager; import com.xiaojukeji.know.streaming.km.common.bean.dto.cluster.ClusterGroupSummaryDTO; -import com.xiaojukeji.know.streaming.km.common.bean.dto.cluster.ClusterGroupsOverviewDTO; import com.xiaojukeji.know.streaming.km.common.bean.dto.metrices.MetricGroupPartitionDTO; import com.xiaojukeji.know.streaming.km.common.bean.dto.pagination.PaginationBaseDTO; -import com.xiaojukeji.know.streaming.km.common.bean.dto.pagination.field.PaginationFuzzySearchFieldDTO; import com.xiaojukeji.know.streaming.km.common.bean.entity.result.PaginationResult; import com.xiaojukeji.know.streaming.km.common.bean.entity.result.Result; import com.xiaojukeji.know.streaming.km.common.bean.entity.topic.TopicPartitionKS; import com.xiaojukeji.know.streaming.km.common.bean.vo.group.GroupOverviewVO; +import com.xiaojukeji.know.streaming.km.common.bean.vo.group.GroupTopicBasicVO; import com.xiaojukeji.know.streaming.km.common.bean.vo.metrics.line.MetricMultiLinesVO; import com.xiaojukeji.know.streaming.km.common.bean.vo.group.GroupTopicOverviewVO; import com.xiaojukeji.know.streaming.km.common.constant.ApiPrefix; import com.xiaojukeji.know.streaming.km.common.constant.Constant; -import com.xiaojukeji.know.streaming.km.common.utils.Tuple; -import com.xiaojukeji.know.streaming.km.common.utils.ValidateUtils; +import com.xiaojukeji.know.streaming.km.common.utils.ConvertUtil; import com.xiaojukeji.know.streaming.km.core.service.group.GroupMetricService; +import com.xiaojukeji.know.streaming.km.core.service.group.GroupService; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import org.springframework.beans.factory.annotation.Autowired; @@ -37,24 +36,17 @@ public class ClusterGroupsController { @Autowired private GroupManager groupManager; + @Autowired + private GroupService groupService; + @Autowired private GroupMetricService groupMetricService; - @Deprecated - @ApiOperation(value = "集群Groups信息列表", notes = "废弃, 下一个版本删除") - @PostMapping(value = "clusters/{clusterPhyId}/groups-overview") + @ApiOperation(value = "集群Groups信息列表") + @GetMapping(value = "clusters/{clusterPhyId}/groups-basic") @ResponseBody - public PaginationResult getClusterPhyGroupsOverview(@PathVariable Long clusterPhyId, - @RequestBody ClusterGroupsOverviewDTO dto) { - Tuple searchKeyTuple = this.getSearchKeyWords(dto); - return groupManager.pagingGroupMembers( - clusterPhyId, - dto.getTopicName(), - dto.getGroupName(), - searchKeyTuple.getV1(), - searchKeyTuple.getV2(), - dto - ); + public Result> getGroupsBasic(@PathVariable Long clusterPhyId) { + return Result.buildSuc(ConvertUtil.list2List(groupService.listGroupByCluster(clusterPhyId), GroupTopicBasicVO.class)); } @ApiOperation(value = "集群Groups信息列表") @@ -90,24 +82,4 @@ public class ClusterGroupsController { } /**************************************************** private method ****************************************************/ - - @Deprecated - private Tuple getSearchKeyWords(ClusterGroupsOverviewDTO dto) { - if (ValidateUtils.isEmptyList(dto.getFuzzySearchDTOList())) { - return new Tuple<>("", ""); - } - - String searchTopicName = ""; - String searchGroupName = ""; - for (PaginationFuzzySearchFieldDTO searchFieldDTO: dto.getFuzzySearchDTOList()) { - if (searchFieldDTO.getFieldName().equals("topicName")) { - searchTopicName = searchFieldDTO.getFieldValue(); - } - if (searchFieldDTO.getFieldName().equals("groupName")) { - searchGroupName = searchFieldDTO.getFieldValue(); - } - } - - return new Tuple<>(searchTopicName, searchGroupName); - } }