feat:设置条件绑定视图

This commit is contained in:
fit2cloud-chenyw
2021-04-19 15:31:03 +08:00
parent 153ac35701
commit 5af4158dc4
8 changed files with 127 additions and 15 deletions

View File

@@ -1,10 +1,12 @@
package io.dataease.controller.panel.api;
import io.dataease.base.domain.ChartView;
import io.dataease.controller.sys.base.BaseGridRequest;
import io.dataease.dto.panel.PanelViewDto;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestMapping;
@@ -20,6 +22,11 @@ public interface ViewApi {
List<PanelViewDto> tree(BaseGridRequest request);
@ApiOperation("根据仪表板Id查询视图")
@PostMapping("/viewsWithIds")
List<ChartView> viewsWithIds(List<String> viewIds);

View File

@@ -1,13 +1,16 @@
package io.dataease.controller.panel.server;
import io.dataease.base.domain.ChartView;
import io.dataease.commons.utils.AuthUtils;
import io.dataease.controller.panel.api.ViewApi;
import io.dataease.controller.sys.base.BaseGridRequest;
import io.dataease.controller.sys.base.ConditionEntity;
import io.dataease.dto.panel.PanelViewDto;
import io.dataease.dto.panel.po.PanelViewPo;
import io.dataease.service.chart.ChartViewService;
import io.dataease.service.panel.PanelViewService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RestController;
@@ -20,6 +23,9 @@ public class ViewServer implements ViewApi {
@Autowired
private PanelViewService panelViewService;
@Autowired
private ChartViewService chartViewService;
/**
* 为什么查两次?
* 因为left join 会导致全表扫描
@@ -40,4 +46,10 @@ public class ViewServer implements ViewApi {
List<PanelViewDto> panelViewDtos = panelViewService.buildTree(groups, views);
return panelViewDtos;
}
@Override
public List<ChartView> viewsWithIds(@RequestBody List<String> viewIds) {
return chartViewService.viewsByIds(viewIds);
}
}

View File

@@ -320,4 +320,10 @@ public class ChartViewService {
}
return map;
}
public List<ChartView> viewsByIds(List<String> viewIds){
ChartViewExample example = new ChartViewExample();
example.createCriteria().andIdIn(viewIds);
return chartViewMapper.selectByExample(example);
}
}