mirror of
https://github.com/tencentmusic/supersonic.git
synced 2025-12-11 03:58:14 +00:00
(improvement)(headless) metric list support filter by hasCollect (#613)
Co-authored-by: jolunoluo
This commit is contained in:
@@ -18,4 +18,5 @@ public class PageSchemaItemReq extends PageBaseReq {
|
|||||||
private Integer status;
|
private Integer status;
|
||||||
private String key;
|
private String key;
|
||||||
private List<Long> ids;
|
private List<Long> ids;
|
||||||
|
private boolean hasCollect;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -182,14 +182,17 @@ public class MetricServiceImpl implements MetricService {
|
|||||||
List<Long> modelIds = modelResps.stream().map(ModelResp::getId).collect(Collectors.toList());
|
List<Long> modelIds = modelResps.stream().map(ModelResp::getId).collect(Collectors.toList());
|
||||||
pageMetricReq.getModelIds().addAll(modelIds);
|
pageMetricReq.getModelIds().addAll(modelIds);
|
||||||
metricFilter.setModelIds(pageMetricReq.getModelIds());
|
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(),
|
PageInfo<MetricDO> metricDOPageInfo = PageHelper.startPage(pageMetricReq.getCurrent(),
|
||||||
pageMetricReq.getPageSize())
|
pageMetricReq.getPageSize())
|
||||||
.doSelectPageInfo(() -> queryMetric(metricFilter));
|
.doSelectPageInfo(() -> queryMetric(metricFilter));
|
||||||
PageInfo<MetricResp> pageInfo = new PageInfo<>();
|
PageInfo<MetricResp> pageInfo = new PageInfo<>();
|
||||||
BeanUtils.copyProperties(metricDOPageInfo, pageInfo);
|
BeanUtils.copyProperties(metricDOPageInfo, pageInfo);
|
||||||
List<CollectDO> collectList = collectService.getCollectList(user.getName());
|
List<MetricResp> metricResps = convertList(metricDOPageInfo.getList(), collectIds);
|
||||||
List<Long> collect = collectList.stream().map(CollectDO::getCollectId).collect(Collectors.toList());
|
|
||||||
List<MetricResp> metricResps = convertList(metricDOPageInfo.getList(), collect);
|
|
||||||
fillAdminRes(metricResps, user);
|
fillAdminRes(metricResps, user);
|
||||||
pageInfo.setList(metricResps);
|
pageInfo.setList(metricResps);
|
||||||
return pageInfo;
|
return pageInfo;
|
||||||
|
|||||||
Reference in New Issue
Block a user