(improvement)(headless) metric list support filter by hasCollect (#613)

Co-authored-by: jolunoluo
This commit is contained in:
LXW
2024-01-10 14:12:39 +08:00
committed by GitHub
parent 61da52650c
commit 9c8039c499
2 changed files with 7 additions and 3 deletions

View File

@@ -18,4 +18,5 @@ public class PageSchemaItemReq extends PageBaseReq {
private Integer status;
private String key;
private List<Long> ids;
private boolean hasCollect;
}

View File

@@ -182,14 +182,17 @@ public class MetricServiceImpl implements MetricService {
List<Long> modelIds = modelResps.stream().map(ModelResp::getId).collect(Collectors.toList());
pageMetricReq.getModelIds().addAll(modelIds);
metricFilter.setModelIds(pageMetricReq.getModelIds());
List<CollectDO> collectList = collectService.getCollectList(user.getName());
List<Long> collectIds = collectList.stream().map(CollectDO::getCollectId).collect(Collectors.toList());
if (pageMetricReq.isHasCollect()) {
metricFilter.setIds(collectIds);
}
PageInfo<MetricDO> metricDOPageInfo = PageHelper.startPage(pageMetricReq.getCurrent(),
pageMetricReq.getPageSize())
.doSelectPageInfo(() -> queryMetric(metricFilter));
PageInfo<MetricResp> pageInfo = new PageInfo<>();
BeanUtils.copyProperties(metricDOPageInfo, pageInfo);
List<CollectDO> collectList = collectService.getCollectList(user.getName());
List<Long> collect = collectList.stream().map(CollectDO::getCollectId).collect(Collectors.toList());
List<MetricResp> metricResps = convertList(metricDOPageInfo.getList(), collect);
List<MetricResp> metricResps = convertList(metricDOPageInfo.getList(), collectIds);
fillAdminRes(metricResps, user);
pageInfo.setList(metricResps);
return pageInfo;