mirror of
https://github.com/tencentmusic/supersonic.git
synced 2025-12-12 12:37:55 +00:00
(improvement)(headless) Batch Update Metric sensitiveLevel (#1167)
Co-authored-by: lxwcodemonkey
This commit is contained in:
@@ -22,6 +22,9 @@ public class MetaBatchReq {
|
|||||||
* 批量执行分类信息
|
* 批量执行分类信息
|
||||||
*/
|
*/
|
||||||
private EventType type;
|
private EventType type;
|
||||||
|
|
||||||
private List<String> classifications;
|
private List<String> classifications;
|
||||||
|
|
||||||
|
private Integer sensitiveLevel;
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -92,6 +92,15 @@ public class MetricController {
|
|||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@PostMapping("/batchUpdateSensitiveLevel")
|
||||||
|
public Boolean batchUpdateSensitiveLevel(@RequestBody MetaBatchReq metaBatchReq,
|
||||||
|
HttpServletRequest request,
|
||||||
|
HttpServletResponse response) {
|
||||||
|
User user = UserHolder.findUser(request, response);
|
||||||
|
metricService.batchUpdateSensitiveLevel(metaBatchReq, user);
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
@PostMapping("/mockMetricAlias")
|
@PostMapping("/mockMetricAlias")
|
||||||
public List<String> mockMetricAlias(@RequestBody MetricBaseReq metricReq,
|
public List<String> mockMetricAlias(@RequestBody MetricBaseReq metricReq,
|
||||||
HttpServletRequest request,
|
HttpServletRequest request,
|
||||||
|
|||||||
@@ -36,6 +36,8 @@ public interface MetricService {
|
|||||||
|
|
||||||
void batchUpdateClassifications(MetaBatchReq metaBatchReq, User user);
|
void batchUpdateClassifications(MetaBatchReq metaBatchReq, User user);
|
||||||
|
|
||||||
|
void batchUpdateSensitiveLevel(MetaBatchReq metaBatchReq, User user);
|
||||||
|
|
||||||
void deleteMetric(Long id, User user) throws Exception;
|
void deleteMetric(Long id, User user) throws Exception;
|
||||||
|
|
||||||
PageInfo<MetricResp> queryMetricMarket(PageMetricReq pageMetricReq, User user);
|
PageInfo<MetricResp> queryMetricMarket(PageMetricReq pageMetricReq, User user);
|
||||||
|
|||||||
@@ -2,6 +2,7 @@ package com.tencent.supersonic.headless.server.service.impl;
|
|||||||
|
|
||||||
import com.alibaba.fastjson.JSONObject;
|
import com.alibaba.fastjson.JSONObject;
|
||||||
import com.alibaba.fastjson.TypeReference;
|
import com.alibaba.fastjson.TypeReference;
|
||||||
|
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||||
import com.github.pagehelper.PageHelper;
|
import com.github.pagehelper.PageHelper;
|
||||||
import com.github.pagehelper.PageInfo;
|
import com.github.pagehelper.PageInfo;
|
||||||
import com.google.common.collect.Lists;
|
import com.google.common.collect.Lists;
|
||||||
@@ -17,6 +18,7 @@ import com.tencent.supersonic.common.pojo.enums.EventType;
|
|||||||
import com.tencent.supersonic.common.pojo.enums.StatusEnum;
|
import com.tencent.supersonic.common.pojo.enums.StatusEnum;
|
||||||
import com.tencent.supersonic.common.pojo.enums.TypeEnums;
|
import com.tencent.supersonic.common.pojo.enums.TypeEnums;
|
||||||
import com.tencent.supersonic.common.util.BeanMapper;
|
import com.tencent.supersonic.common.util.BeanMapper;
|
||||||
|
import com.tencent.supersonic.headless.server.persistence.mapper.MetricDOMapper;
|
||||||
import com.tencent.supersonic.headless.server.utils.AliasGenerateHelper;
|
import com.tencent.supersonic.headless.server.utils.AliasGenerateHelper;
|
||||||
import com.tencent.supersonic.common.jsqlparser.SqlSelectFunctionHelper;
|
import com.tencent.supersonic.common.jsqlparser.SqlSelectFunctionHelper;
|
||||||
import com.tencent.supersonic.headless.api.pojo.DrillDownDimension;
|
import com.tencent.supersonic.headless.api.pojo.DrillDownDimension;
|
||||||
@@ -89,7 +91,8 @@ import java.util.stream.Collectors;
|
|||||||
|
|
||||||
@Service
|
@Service
|
||||||
@Slf4j
|
@Slf4j
|
||||||
public class MetricServiceImpl implements MetricService {
|
public class MetricServiceImpl extends ServiceImpl<MetricDOMapper, MetricDO>
|
||||||
|
implements MetricService {
|
||||||
|
|
||||||
private MetricRepository metricRepository;
|
private MetricRepository metricRepository;
|
||||||
|
|
||||||
@@ -186,9 +189,7 @@ public class MetricServiceImpl implements MetricService {
|
|||||||
if (CollectionUtils.isEmpty(metaBatchReq.getIds())) {
|
if (CollectionUtils.isEmpty(metaBatchReq.getIds())) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
MetricFilter metricFilter = new MetricFilter();
|
List<MetricDO> metricDOS = getMetrics(metaBatchReq.getIds());
|
||||||
metricFilter.setIds(metaBatchReq.getIds());
|
|
||||||
List<MetricDO> metricDOS = metricRepository.getMetric(metricFilter);
|
|
||||||
if (CollectionUtils.isEmpty(metricDOS)) {
|
if (CollectionUtils.isEmpty(metricDOS)) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
@@ -210,9 +211,7 @@ public class MetricServiceImpl implements MetricService {
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void batchPublish(List<Long> metricIds, User user) {
|
public void batchPublish(List<Long> metricIds, User user) {
|
||||||
MetricFilter metricFilter = new MetricFilter();
|
List<MetricDO> metrics = getMetrics(metricIds);
|
||||||
metricFilter.setIds(metricIds);
|
|
||||||
List<MetricDO> metrics = metricRepository.getMetric(metricFilter);
|
|
||||||
for (MetricDO metricDO : metrics) {
|
for (MetricDO metricDO : metrics) {
|
||||||
metricDO.setUpdatedAt(new Date());
|
metricDO.setUpdatedAt(new Date());
|
||||||
metricDO.setUpdatedBy(user.getName());
|
metricDO.setUpdatedBy(user.getName());
|
||||||
@@ -222,9 +221,7 @@ public class MetricServiceImpl implements MetricService {
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void batchUnPublish(List<Long> metricIds, User user) {
|
public void batchUnPublish(List<Long> metricIds, User user) {
|
||||||
MetricFilter metricFilter = new MetricFilter();
|
List<MetricDO> metrics = getMetrics(metricIds);
|
||||||
metricFilter.setIds(metricIds);
|
|
||||||
List<MetricDO> metrics = metricRepository.getMetric(metricFilter);
|
|
||||||
for (MetricDO metricDO : metrics) {
|
for (MetricDO metricDO : metrics) {
|
||||||
metricDO.setUpdatedAt(new Date());
|
metricDO.setUpdatedAt(new Date());
|
||||||
metricDO.setUpdatedBy(user.getName());
|
metricDO.setUpdatedBy(user.getName());
|
||||||
@@ -234,9 +231,7 @@ public class MetricServiceImpl implements MetricService {
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void batchUpdateClassifications(MetaBatchReq metaBatchReq, User user) {
|
public void batchUpdateClassifications(MetaBatchReq metaBatchReq, User user) {
|
||||||
MetricFilter metricFilter = new MetricFilter();
|
List<MetricDO> metrics = getMetrics(metaBatchReq.getIds());
|
||||||
metricFilter.setIds(metaBatchReq.getIds());
|
|
||||||
List<MetricDO> metrics = metricRepository.getMetric(metricFilter);
|
|
||||||
for (MetricDO metricDO : metrics) {
|
for (MetricDO metricDO : metrics) {
|
||||||
metricDO.setUpdatedAt(new Date());
|
metricDO.setUpdatedAt(new Date());
|
||||||
metricDO.setUpdatedBy(user.getName());
|
metricDO.setUpdatedBy(user.getName());
|
||||||
@@ -267,6 +262,17 @@ public class MetricServiceImpl implements MetricService {
|
|||||||
metricDO.setClassifications(classifications);
|
metricDO.setClassifications(classifications);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void batchUpdateSensitiveLevel(MetaBatchReq metaBatchReq, User user) {
|
||||||
|
List<MetricDO> metrics = getMetrics(metaBatchReq.getIds());
|
||||||
|
for (MetricDO metricDO : metrics) {
|
||||||
|
metricDO.setUpdatedAt(new Date());
|
||||||
|
metricDO.setUpdatedBy(user.getName());
|
||||||
|
metricDO.setSensitiveLevel(metaBatchReq.getSensitiveLevel());
|
||||||
|
}
|
||||||
|
updateBatchById(metrics);
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void deleteMetric(Long id, User user) {
|
public void deleteMetric(Long id, User user) {
|
||||||
MetricDO metricDO = metricRepository.getMetricById(id);
|
MetricDO metricDO = metricRepository.getMetricById(id);
|
||||||
@@ -349,6 +355,15 @@ public class MetricServiceImpl implements MetricService {
|
|||||||
return metricRepository.getMetric(metricFilter);
|
return metricRepository.getMetric(metricFilter);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private List<MetricDO> getMetrics(List<Long> ids) {
|
||||||
|
if (CollectionUtils.isEmpty(ids)) {
|
||||||
|
return Lists.newArrayList();
|
||||||
|
}
|
||||||
|
MetricFilter metricFilter = new MetricFilter();
|
||||||
|
metricFilter.setIds(ids);
|
||||||
|
return metricRepository.getMetric(metricFilter);
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public List<MetricResp> getMetrics(MetaFilter metaFilter) {
|
public List<MetricResp> getMetrics(MetaFilter metaFilter) {
|
||||||
MetricFilter metricFilter = new MetricFilter();
|
MetricFilter metricFilter = new MetricFilter();
|
||||||
|
|||||||
Reference in New Issue
Block a user