Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
DiDi
kafka-manager
提交
0a03f41a
K
kafka-manager
项目概览
DiDi
/
kafka-manager
大约 1 年 前同步成功
通知
60
Star
6372
Fork
1229
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
K
kafka-manager
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
体验新版 GitCode,发现更多精彩内容 >>
提交
0a03f41a
编写于
9月 20, 2022
作者:
Z
zengqiao
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
后端增加指标摆放顺序功能
上级
56191939
变更
6
隐藏空白更改
内联
并排
Showing
6 changed file
with
87 addition
and
4 deletion
+87
-4
km-biz/src/main/java/com/xiaojukeji/know/streaming/km/biz/version/impl/VersionControlManagerImpl.java
...eaming/km/biz/version/impl/VersionControlManagerImpl.java
+33
-3
km-common/src/main/java/com/xiaojukeji/know/streaming/km/common/bean/dto/metrices/MetricDetailDTO.java
...treaming/km/common/bean/dto/metrices/MetricDetailDTO.java
+28
-0
km-common/src/main/java/com/xiaojukeji/know/streaming/km/common/bean/dto/metrices/UserMetricConfigDTO.java
...ming/km/common/bean/dto/metrices/UserMetricConfigDTO.java
+4
-0
km-common/src/main/java/com/xiaojukeji/know/streaming/km/common/bean/entity/config/metric/UserMetricConfig.java
...km/common/bean/entity/config/metric/UserMetricConfig.java
+17
-1
km-common/src/main/java/com/xiaojukeji/know/streaming/km/common/bean/vo/config/metric/UserMetricConfigVO.java
...g/km/common/bean/vo/config/metric/UserMetricConfigVO.java
+3
-0
km-common/src/main/java/com/xiaojukeji/know/streaming/km/common/constant/Constant.java
...iaojukeji/know/streaming/km/common/constant/Constant.java
+2
-0
未找到文件。
km-biz/src/main/java/com/xiaojukeji/know/streaming/km/biz/version/impl/VersionControlManagerImpl.java
浏览文件 @
0a03f41a
...
...
@@ -7,12 +7,14 @@ import com.didiglobal.logi.log.LogFactory;
import
com.didiglobal.logi.security.common.dto.config.ConfigDTO
;
import
com.didiglobal.logi.security.service.ConfigService
;
import
com.xiaojukeji.know.streaming.km.biz.version.VersionControlManager
;
import
com.xiaojukeji.know.streaming.km.common.bean.dto.metrices.MetricDetailDTO
;
import
com.xiaojukeji.know.streaming.km.common.bean.dto.metrices.UserMetricConfigDTO
;
import
com.xiaojukeji.know.streaming.km.common.bean.entity.config.metric.UserMetricConfig
;
import
com.xiaojukeji.know.streaming.km.common.bean.entity.result.Result
;
import
com.xiaojukeji.know.streaming.km.common.bean.entity.version.VersionControlItem
;
import
com.xiaojukeji.know.streaming.km.common.bean.vo.config.metric.UserMetricConfigVO
;
import
com.xiaojukeji.know.streaming.km.common.bean.vo.version.VersionItemVO
;
import
com.xiaojukeji.know.streaming.km.common.constant.Constant
;
import
com.xiaojukeji.know.streaming.km.common.enums.version.VersionEnum
;
import
com.xiaojukeji.know.streaming.km.common.utils.ConvertUtil
;
import
com.xiaojukeji.know.streaming.km.common.utils.VersionUtil
;
...
...
@@ -159,6 +161,9 @@ public class VersionControlManagerImpl implements VersionControlManager {
UserMetricConfig
umc
=
userMetricConfigMap
.
get
(
itemType
+
"@"
+
metric
);
userMetricConfigVO
.
setSet
(
null
!=
umc
&&
umc
.
isSet
());
if
(
umc
!=
null
)
{
userMetricConfigVO
.
setRank
(
umc
.
getRank
());
}
userMetricConfigVO
.
setName
(
itemVO
.
getName
());
userMetricConfigVO
.
setType
(
itemVO
.
getType
());
userMetricConfigVO
.
setDesc
(
itemVO
.
getDesc
());
...
...
@@ -178,13 +183,30 @@ public class VersionControlManagerImpl implements VersionControlManager {
@Override
public
Result
<
Void
>
updateUserMetricItem
(
Long
clusterId
,
Integer
type
,
UserMetricConfigDTO
dto
,
String
operator
)
{
Map
<
String
,
Boolean
>
metricsSetMap
=
dto
.
getMetricsSet
();
if
(
null
==
metricsSetMap
||
metricsSetMap
.
isEmpty
()){
//转换metricDetailDTOList
List
<
MetricDetailDTO
>
metricDetailDTOList
=
dto
.
getMetricDetailDTOList
();
Map
<
String
,
MetricDetailDTO
>
metricDetailMap
=
new
HashMap
<>();
if
(
metricDetailDTOList
!=
null
&&
!
metricDetailDTOList
.
isEmpty
())
{
metricDetailMap
=
metricDetailDTOList
.
stream
().
collect
(
Collectors
.
toMap
(
MetricDetailDTO:
:
getMetric
,
Function
.
identity
()));
}
//转换metricsSetMap
if
(
metricsSetMap
!=
null
&&
!
metricsSetMap
.
isEmpty
())
{
for
(
Map
.
Entry
<
String
,
Boolean
>
metricAndShowEntry
:
metricsSetMap
.
entrySet
())
{
if
(
metricDetailMap
.
containsKey
(
metricAndShowEntry
.
getKey
()))
continue
;
metricDetailMap
.
put
(
metricAndShowEntry
.
getKey
(),
new
MetricDetailDTO
(
metricAndShowEntry
.
getKey
(),
metricAndShowEntry
.
getValue
(),
null
));
}
}
if
(
metricDetailMap
.
isEmpty
())
{
return
Result
.
buildSuc
();
}
Set
<
UserMetricConfig
>
userMetricConfigs
=
getUserMetricConfig
(
operator
);
for
(
Map
.
Entry
<
String
,
Boolean
>
metricAndShowEntry
:
metricsSetMap
.
entrySet
()){
UserMetricConfig
userMetricConfig
=
new
UserMetricConfig
(
type
,
metricAndShowEntry
.
getKey
(),
metricAndShowEntry
.
getValue
());
UserMetricConfig
userMetricConfig
=
new
UserMetricConfig
(
type
,
metricAndShowEntry
.
getKey
(),
metricAndShowEntry
.
getValue
()
,
metricDetailMap
.
get
(
metricAndShowEntry
.
getKey
()).
getRank
()
);
userMetricConfigs
.
remove
(
userMetricConfig
);
userMetricConfigs
.
add
(
userMetricConfig
);
}
...
...
@@ -228,7 +250,15 @@ public class VersionControlManagerImpl implements VersionControlManager {
return
defaultMetrics
;
}
return
JSON
.
parseObject
(
value
,
new
TypeReference
<
Set
<
UserMetricConfig
>>(){});
Set
<
UserMetricConfig
>
userMetricConfigs
=
JSON
.
parseObject
(
value
,
new
TypeReference
<
Set
<
UserMetricConfig
>>()
{});
//补充rank不存在情况
for
(
UserMetricConfig
userMetricConfig
:
userMetricConfigs
)
{
if
(
userMetricConfig
.
getRank
()
==
0
)
{
userMetricConfig
.
setRank
(
Constant
.
DEFAULT_METRIC_RANK
);
}
}
return
userMetricConfigs
;
}
public
static
void
main
(
String
[]
args
){
...
...
km-common/src/main/java/com/xiaojukeji/know/streaming/km/common/bean/dto/metrices/MetricDetailDTO.java
0 → 100644
浏览文件 @
0a03f41a
package
com.xiaojukeji.know.streaming.km.common.bean.dto.metrices
;
import
com.xiaojukeji.know.streaming.km.common.bean.dto.BaseDTO
;
import
io.swagger.annotations.ApiModel
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.AllArgsConstructor
;
import
lombok.Data
;
import
lombok.NoArgsConstructor
;
/**
* @author didi
*/
@Data
@NoArgsConstructor
@AllArgsConstructor
@ApiModel
(
description
=
"指标详细属性信息"
)
public
class
MetricDetailDTO
extends
BaseDTO
{
@ApiModelProperty
(
"指标名称"
)
private
String
metric
;
@ApiModelProperty
(
"指标是否显示"
)
private
Boolean
set
;
@ApiModelProperty
(
"指标优先级"
)
private
Integer
rank
;
}
km-common/src/main/java/com/xiaojukeji/know/streaming/km/common/bean/dto/metrices/UserMetricConfigDTO.java
浏览文件 @
0a03f41a
...
...
@@ -7,6 +7,7 @@ import lombok.AllArgsConstructor;
import
lombok.Data
;
import
lombok.NoArgsConstructor
;
import
java.util.List
;
import
java.util.Map
;
...
...
@@ -17,4 +18,7 @@ import java.util.Map;
public
class
UserMetricConfigDTO
extends
BaseDTO
{
@ApiModelProperty
(
"指标展示设置项,key:指标名;value:是否展现(true展现/false不展现)"
)
private
Map
<
String
,
Boolean
>
metricsSet
;
@ApiModelProperty
(
"指标自定义属性列表"
)
private
List
<
MetricDetailDTO
>
metricDetailDTOList
;
}
km-common/src/main/java/com/xiaojukeji/know/streaming/km/common/bean/entity/config/metric/UserMetricConfig.java
浏览文件 @
0a03f41a
package
com.xiaojukeji.know.streaming.km.common.bean.entity.config.metric
;
import
com.xiaojukeji.know.streaming.km.common.constant.Constant
;
import
lombok.AllArgsConstructor
;
import
lombok.Data
;
import
lombok.NoArgsConstructor
;
@Data
@NoArgsConstructor
@AllArgsConstructor
public
class
UserMetricConfig
{
private
int
type
;
...
...
@@ -15,6 +15,22 @@ public class UserMetricConfig {
private
boolean
set
;
private
int
rank
;
public
UserMetricConfig
(
int
type
,
String
metric
,
boolean
set
,
Integer
rank
)
{
this
.
type
=
type
;
this
.
metric
=
metric
;
this
.
set
=
set
;
this
.
rank
=
rank
==
null
?
Constant
.
DEFAULT_METRIC_RANK
:
rank
;
}
public
UserMetricConfig
(
int
type
,
String
metric
,
boolean
set
)
{
this
.
type
=
type
;
this
.
metric
=
metric
;
this
.
set
=
set
;
this
.
rank
=
Constant
.
DEFAULT_METRIC_RANK
;
}
@Override
public
int
hashCode
(){
return
metric
.
hashCode
()
<<
1
+
type
;
...
...
km-common/src/main/java/com/xiaojukeji/know/streaming/km/common/bean/vo/config/metric/UserMetricConfigVO.java
浏览文件 @
0a03f41a
...
...
@@ -14,4 +14,7 @@ import lombok.NoArgsConstructor;
public
class
UserMetricConfigVO
extends
VersionItemVO
{
@ApiModelProperty
(
value
=
"该指标用户是否设置展现"
,
example
=
"true"
)
private
Boolean
set
;
@ApiModelProperty
(
value
=
"该指标展示优先级"
,
example
=
"1"
)
private
Integer
rank
;
}
km-common/src/main/java/com/xiaojukeji/know/streaming/km/common/constant/Constant.java
浏览文件 @
0a03f41a
...
...
@@ -42,6 +42,8 @@ public class Constant {
*/
public
static
final
Integer
DEFAULT_CLUSTER_HEALTH_SCORE
=
90
;
public
static
final
Integer
DEFAULT_METRIC_RANK
=
10000
;
public
static
final
String
DEFAULT_USER_NAME
=
"know-streaming-app"
;
public
static
final
int
INVALID_CODE
=
-
1
;
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录