From 6effba69a0ecebfd2ec6e4361f9e0ce53864aac9 Mon Sep 17 00:00:00 2001 From: GraceWalk Date: Tue, 13 Sep 2022 14:22:50 +0800 Subject: [PATCH] =?UTF-8?q?feat:=20=E8=A1=A5=E5=85=85=20ReBalance=20?= =?UTF-8?q?=E5=92=8C=20Topic=20=E9=83=A8=E5=88=86=E6=9D=83=E9=99=90?= =?UTF-8?q?=E9=A1=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../CardBar/LoadRebalanceCardBar.tsx | 18 +++++++++++------- .../src/pages/CommonConfig.tsx | 7 +++++++ 2 files changed, 18 insertions(+), 7 deletions(-) diff --git a/km-console/packages/layout-clusters-fe/src/components/CardBar/LoadRebalanceCardBar.tsx b/km-console/packages/layout-clusters-fe/src/components/CardBar/LoadRebalanceCardBar.tsx index f98b5844..0b022a26 100644 --- a/km-console/packages/layout-clusters-fe/src/components/CardBar/LoadRebalanceCardBar.tsx +++ b/km-console/packages/layout-clusters-fe/src/components/CardBar/LoadRebalanceCardBar.tsx @@ -1,12 +1,13 @@ import React, { useState, useEffect } from 'react'; import { useParams } from 'react-router-dom'; import CardBar from './index'; -import { IconFont, Tag, Utils, Tooltip, Popover } from 'knowdesign'; +import { IconFont, Tag, Utils, Tooltip, Popover, AppContainer } from 'knowdesign'; import api from '@src/api'; import StateChart from './StateChart'; import ClusterNorms from '@src/pages/LoadRebalance/ClusterNorms'; import { QuestionCircleOutlined } from '@ant-design/icons'; import moment from 'moment'; +import { ClustersPermissionMap } from '@src/pages/CommonConfig'; const transUnitTimePro = (ms: number, num = 0) => { if (!ms) return ''; @@ -23,6 +24,7 @@ const transUnitTimePro = (ms: number, num = 0) => { }; const LoadRebalanceCardBar = (props: any) => { + const [global] = AppContainer.useGlobalValue(); const { clusterId } = useParams<{ clusterId: string; }>(); @@ -53,12 +55,14 @@ const LoadRebalanceCardBar = (props: any) => { return (
State - setNormsVisible(true)} - type="icon-shezhi" - > + {global.hasPermission(ClustersPermissionMap.REBALANCE_SETTING) && ( + setNormsVisible(true)} + type="icon-shezhi" + > + )}
); }, diff --git a/km-console/packages/layout-clusters-fe/src/pages/CommonConfig.tsx b/km-console/packages/layout-clusters-fe/src/pages/CommonConfig.tsx index 6aa8e5eb..8e37edf3 100644 --- a/km-console/packages/layout-clusters-fe/src/pages/CommonConfig.tsx +++ b/km-console/packages/layout-clusters-fe/src/pages/CommonConfig.tsx @@ -6,11 +6,16 @@ import { goLogin } from '@src/constants/axiosConfig'; // 权限对应表 export enum ClustersPermissionMap { CLUSTERS_MANAGE = '多集群管理', + CLUSTERS_MANAGE_VIEW = '多集群管理查看', // Cluster CLUSTER_ADD = '接入集群', CLUSTER_DEL = '删除集群', CLUSTER_CHANGE_HEALTHY = 'Cluster-修改健康规则', CLUSTER_CHANGE_INFO = 'Cluster-修改集群信息', + // LoadReBalance + REBALANCE_CYCLE = 'Cluster-LoadReBalance-周期均衡', + REBALANCE_IMMEDIATE = 'Cluster-LoadReBalance-立即均衡', + REBALANCE_SETTING = 'Cluster-LoadReBalance-设置集群规格', // Broker BROKER_CHANGE_CONFIG = 'Broker-修改Broker配置', // Topic @@ -19,6 +24,8 @@ export enum ClustersPermissionMap { TOPIC_DEL = 'Topic-删除Topic', TOPIC_EXPOND = 'Topic-扩分区', TOPIC_ADD = 'Topic-新增Topic', + TOPIC_MOVE_REPLICA = 'Topic-迁移副本', + TOPIC_CHANGE_REPLICA = 'Topic-扩缩副本', // Consumers CONSUMERS_RESET_OFFSET = 'Consumers-重置Offset', // Test