mirror of
https://github.com/tencentmusic/supersonic.git
synced 2025-12-11 12:07:42 +00:00
[improvement][headless]Introduce DerivedMetricConverter and optimize metric creation in S2VisitsDemo.
This commit is contained in:
@@ -62,22 +62,19 @@ public class DimensionServiceImpl extends ServiceImpl<DimensionDOMapper, Dimensi
|
||||
|
||||
private DataSetService dataSetService;
|
||||
|
||||
private TagMetaService tagMetaService;
|
||||
|
||||
@Autowired
|
||||
private ApplicationEventPublisher eventPublisher;
|
||||
|
||||
public DimensionServiceImpl(DimensionRepository dimensionRepository, ModelService modelService,
|
||||
AliasGenerateHelper aliasGenerateHelper, DatabaseService databaseService,
|
||||
ModelRelaService modelRelaService, DataSetService dataSetService,
|
||||
TagMetaService tagMetaService) {
|
||||
ModelRelaService modelRelaService, DataSetService dataSetService) {
|
||||
this.modelService = modelService;
|
||||
this.dimensionRepository = dimensionRepository;
|
||||
this.aliasGenerateHelper = aliasGenerateHelper;
|
||||
this.databaseService = databaseService;
|
||||
this.modelRelaService = modelRelaService;
|
||||
this.dataSetService = dataSetService;
|
||||
this.tagMetaService = tagMetaService;
|
||||
}
|
||||
|
||||
@Override
|
||||
|
||||
@@ -59,15 +59,12 @@ public class MetricServiceImpl extends ServiceImpl<MetricDOMapper, MetricDO>
|
||||
|
||||
private ApplicationEventPublisher eventPublisher;
|
||||
|
||||
private TagMetaService tagMetaService;
|
||||
|
||||
private ChatLayerService chatLayerService;
|
||||
|
||||
public MetricServiceImpl(MetricRepository metricRepository, ModelService modelService,
|
||||
AliasGenerateHelper aliasGenerateHelper, CollectService collectService,
|
||||
DataSetService dataSetService, ApplicationEventPublisher eventPublisher,
|
||||
DimensionService dimensionService, TagMetaService tagMetaService,
|
||||
@Lazy ChatLayerService chatLayerService) {
|
||||
DimensionService dimensionService, @Lazy ChatLayerService chatLayerService) {
|
||||
this.metricRepository = metricRepository;
|
||||
this.modelService = modelService;
|
||||
this.aliasGenerateHelper = aliasGenerateHelper;
|
||||
@@ -75,7 +72,6 @@ public class MetricServiceImpl extends ServiceImpl<MetricDOMapper, MetricDO>
|
||||
this.collectService = collectService;
|
||||
this.dataSetService = dataSetService;
|
||||
this.dimensionService = dimensionService;
|
||||
this.tagMetaService = tagMetaService;
|
||||
this.chatLayerService = chatLayerService;
|
||||
}
|
||||
|
||||
|
||||
@@ -46,9 +46,9 @@ public class MetricCheckUtils {
|
||||
throw new InvalidArgumentException("指标定义参数不可为空");
|
||||
}
|
||||
expr = typeParams.getExpr();
|
||||
if (CollectionUtils.isEmpty(typeParams.getFields())) {
|
||||
throw new InvalidArgumentException("定义指标的字段列表参数不可为空");
|
||||
}
|
||||
// if (CollectionUtils.isEmpty(typeParams.getFields())) {
|
||||
// throw new InvalidArgumentException("定义指标的字段列表参数不可为空");
|
||||
// }
|
||||
if (!hasAggregateFunction(expr)) {
|
||||
throw new InvalidArgumentException("基于字段来创建指标,表达式中必须包含聚合函数");
|
||||
}
|
||||
|
||||
@@ -70,11 +70,9 @@ public class MetricServiceImplTest {
|
||||
ApplicationEventPublisher eventPublisher = Mockito.mock(ApplicationEventPublisher.class);
|
||||
DataSetService dataSetService = Mockito.mock(DataSetServiceImpl.class);
|
||||
DimensionService dimensionService = Mockito.mock(DimensionService.class);
|
||||
TagMetaService tagMetaService = Mockito.mock(TagMetaService.class);
|
||||
ChatLayerService chatLayerService = Mockito.mock(ChatLayerService.class);
|
||||
return new MetricServiceImpl(metricRepository, modelService, aliasGenerateHelper,
|
||||
collectService, dataSetService, eventPublisher, dimensionService, tagMetaService,
|
||||
chatLayerService);
|
||||
collectService, dataSetService, eventPublisher, dimensionService, chatLayerService);
|
||||
}
|
||||
|
||||
private MetricReq buildMetricReq() {
|
||||
|
||||
Reference in New Issue
Block a user