feat: 视图下钻

This commit is contained in:
junjie
2021-08-10 17:00:15 +08:00
parent 18b68616ac
commit affdf3ad00
5 changed files with 12 additions and 13 deletions

View File

@@ -23,5 +23,5 @@ public class ChartViewDTO extends ChartViewWithBLOBs {
private String pid;
private String sql;
private List<ChartDrillRequest> dimensionList;
private boolean drill;
}

View File

@@ -258,7 +258,7 @@ public class ChartViewService {
// 下钻
boolean isDrill = false;
List<ChartDrillRequest> drillRequest = requestList.getDrill();
if (drill.size() > drillRequest.size()) {
if (CollectionUtils.isNotEmpty(drillRequest) && (drill.size() >= drillRequest.size())) {
for (int i = 0; i < drillRequest.size(); i++) {
ChartDrillRequest request = drillRequest.get(i);
for (ChartDimensionDTO dto : request.getDimensionList()) {
@@ -385,7 +385,9 @@ public class ChartViewService {
data = (List<String[]>) cache;
}*/
// 仪表板有参数不实用缓存
if (CollectionUtils.isNotEmpty(requestList.getFilter()) || CollectionUtils.isNotEmpty(requestList.getLinkageFilters())) {
if (CollectionUtils.isNotEmpty(requestList.getFilter())
|| CollectionUtils.isNotEmpty(requestList.getLinkageFilters())
|| CollectionUtils.isNotEmpty(requestList.getDrill())) {
data = datasourceProvider.getData(datasourceRequest);
} else {
try {
@@ -430,10 +432,7 @@ public class ChartViewService {
dto.setData(map);
dto.setSql(datasourceRequest.getQuery());
if (CollectionUtils.isNotEmpty(drillRequest) && !isDrill) {
drillRequest = drillRequest.subList(0, drillRequest.size() - 1);
}
dto.setDimensionList(drillRequest);
dto.setDrill(isDrill);
return dto;
}