提交 4be52b99 authored 作者: junjie's avatar junjie

feat: S2 Event

上级 85a6f1ae
...@@ -305,10 +305,10 @@ public class ChartViewService { ...@@ -305,10 +305,10 @@ public class ChartViewService {
filterRequest.setFieldId(fId); filterRequest.setFieldId(fId);
DatasetTableField datasetTableField = dataSetTableFieldsService.get(fId); DatasetTableField datasetTableField = dataSetTableFieldsService.get(fId);
if(datasetTableField == null){ if (datasetTableField == null) {
continue; continue;
} }
if(!desensitizationList.contains(datasetTableField.getDataeaseName()) && dataeaseNames.contains(datasetTableField.getDataeaseName())){ if (!desensitizationList.contains(datasetTableField.getDataeaseName()) && dataeaseNames.contains(datasetTableField.getDataeaseName())) {
filterRequest.setDatasetTableField(datasetTableField); filterRequest.setDatasetTableField(datasetTableField);
if (StringUtils.equalsIgnoreCase(datasetTableField.getTableId(), view.getTableId())) { if (StringUtils.equalsIgnoreCase(datasetTableField.getTableId(), view.getTableId())) {
if (CollectionUtils.isNotEmpty(filterRequest.getViewIds())) { if (CollectionUtils.isNotEmpty(filterRequest.getViewIds())) {
...@@ -329,7 +329,7 @@ public class ChartViewService { ...@@ -329,7 +329,7 @@ public class ChartViewService {
if (ObjectUtils.isNotEmpty(requestList.getLinkageFilters())) { if (ObjectUtils.isNotEmpty(requestList.getLinkageFilters())) {
for (ChartExtFilterRequest request : requestList.getLinkageFilters()) { for (ChartExtFilterRequest request : requestList.getLinkageFilters()) {
DatasetTableField datasetTableField = dataSetTableFieldsService.get(request.getFieldId()); DatasetTableField datasetTableField = dataSetTableFieldsService.get(request.getFieldId());
if(!desensitizationList.contains(datasetTableField.getDataeaseName()) && dataeaseNames.contains(datasetTableField.getDataeaseName())){ if (!desensitizationList.contains(datasetTableField.getDataeaseName()) && dataeaseNames.contains(datasetTableField.getDataeaseName())) {
request.setDatasetTableField(datasetTableField); request.setDatasetTableField(datasetTableField);
if (StringUtils.equalsIgnoreCase(datasetTableField.getTableId(), view.getTableId())) { if (StringUtils.equalsIgnoreCase(datasetTableField.getTableId(), view.getTableId())) {
if (CollectionUtils.isNotEmpty(request.getViewIds())) { if (CollectionUtils.isNotEmpty(request.getViewIds())) {
...@@ -814,6 +814,38 @@ public class ChartViewService { ...@@ -814,6 +814,38 @@ public class ChartViewService {
} }
} }
if (StringUtils.containsIgnoreCase(view.getType(), "table")) {
for (int i = 0; i < xAxis.size() + yAxis.size(); i++) {
AxisChartDataAntVDTO axisChartDataDTO = new AxisChartDataAntVDTO();
axisChartDataDTO.setField(a.toString());
axisChartDataDTO.setName(a.toString());
List<ChartDimensionDTO> dimensionList = new ArrayList<>();
List<ChartQuotaDTO> quotaList = new ArrayList<>();
for (int j = 0; j < xAxis.size(); j++) {
ChartDimensionDTO chartDimensionDTO = new ChartDimensionDTO();
chartDimensionDTO.setId(xAxis.get(j).getId());
chartDimensionDTO.setValue(row[j]);
dimensionList.add(chartDimensionDTO);
}
axisChartDataDTO.setDimensionList(dimensionList);
int j = i - xAxis.size();
if (j > -1) {
ChartQuotaDTO chartQuotaDTO = new ChartQuotaDTO();
chartQuotaDTO.setId(yAxis.get(j).getId());
quotaList.add(chartQuotaDTO);
axisChartDataDTO.setQuotaList(quotaList);
try {
axisChartDataDTO.setValue(StringUtils.isEmpty(row[i]) ? null : new BigDecimal(row[i]));
} catch (Exception e) {
axisChartDataDTO.setValue(new BigDecimal(0));
}
}
datas.add(axisChartDataDTO);
}
} else {
for (int i = xAxis.size(); i < xAxis.size() + yAxis.size(); i++) { for (int i = xAxis.size(); i < xAxis.size() + yAxis.size(); i++) {
AxisChartDataAntVDTO axisChartDataDTO = new AxisChartDataAntVDTO(); AxisChartDataAntVDTO axisChartDataDTO = new AxisChartDataAntVDTO();
axisChartDataDTO.setField(a.toString()); axisChartDataDTO.setField(a.toString());
...@@ -840,10 +872,10 @@ public class ChartViewService { ...@@ -840,10 +872,10 @@ public class ChartViewService {
} catch (Exception e) { } catch (Exception e) {
axisChartDataDTO.setValue(new BigDecimal(0)); axisChartDataDTO.setValue(new BigDecimal(0));
} }
axisChartDataDTO.setCategory(yAxis.get(j).getName());
datas.add(axisChartDataDTO); datas.add(axisChartDataDTO);
} }
} }
}
map.put("datas", datas); map.put("datas", datas);
return map; return map;
} }
......
import { TableSheet } from '@antv/s2' import { TableSheet, S2Event } from '@antv/s2'
import { getCustomTheme, getSize } from '@/views/chart/chart/common/common_table' import { getCustomTheme, getSize } from '@/views/chart/chart/common/common_table'
export function baseTableInfo(s2, container, chart, action, tableData) { export function baseTableInfo(s2, container, chart, action, tableData) {
...@@ -47,6 +47,9 @@ export function baseTableInfo(s2, container, chart, action, tableData) { ...@@ -47,6 +47,9 @@ export function baseTableInfo(s2, container, chart, action, tableData) {
} }
s2 = new TableSheet(containerDom, s2DataConfig, s2Options) s2 = new TableSheet(containerDom, s2DataConfig, s2Options)
// click
s2.on(S2Event.DATA_CELL_CLICK, action)
// theme // theme
const customTheme = getCustomTheme(chart) const customTheme = getCustomTheme(chart)
s2.setThemeCfg({ theme: customTheme }) s2.setThemeCfg({ theme: customTheme })
......
...@@ -207,17 +207,44 @@ export default { ...@@ -207,17 +207,44 @@ export default {
}, },
antVAction(param) { antVAction(param) {
console.log(param) const cell = this.myChart.getCell(param.target)
if (this.chart.type === 'treemap') { const meta = cell.getMeta()
this.pointParam = param.data.data console.log(meta)
} else { // if (this.chart.type === 'treemap') {
this.pointParam = param.data // this.pointParam = param.data.data
// } else {
// this.pointParam = param.data
// }
// if (this.trackMenu.length < 2) { // 只有一个事件直接调用
// this.trackClick(this.trackMenu[0])
// } else { // 视图关联多个事件
// this.trackBarStyle.left = param.x + 'px'
// this.trackBarStyle.top = (param.y + 10) + 'px'
// this.$refs.viewTrack.trackButtonClick()
// }
let xAxis = []
if (this.chart.xaxis) {
xAxis = JSON.parse(this.chart.xaxis)
}
let field = {}
if (meta.colIndex < xAxis.length) {
field = xAxis[meta.colIndex]
} }
const dimensionList = []
dimensionList.push({ id: field.id, value: meta.fieldValue })
this.pointParam = {
data: {
dimensionList: dimensionList
}
}
console.log(this.pointParam)
if (this.trackMenu.length < 2) { // 只有一个事件直接调用 if (this.trackMenu.length < 2) { // 只有一个事件直接调用
this.trackClick(this.trackMenu[0]) this.trackClick(this.trackMenu[0])
} else { // 视图关联多个事件 } else { // 视图关联多个事件
this.trackBarStyle.left = param.x + 'px' this.trackBarStyle.left = 50 + 'px'
this.trackBarStyle.top = (param.y + 10) + 'px' this.trackBarStyle.top = (50 + 10) + 'px'
this.$refs.viewTrack.trackButtonClick() this.$refs.viewTrack.trackButtonClick()
} }
}, },
......
...@@ -483,7 +483,7 @@ ...@@ -483,7 +483,7 @@
</div> </div>
</el-row> </el-row>
<el-row <el-row
v-if="view.type && !view.type.includes('table') && !view.type.includes('text') && !view.type.includes('gauge') && view.type !== 'liquid' && view.type !== 'word-cloud'" v-if="view.type && !(view.type.includes('table') && view.render === 'echarts') && !view.type.includes('text') && !view.type.includes('gauge') && view.type !== 'liquid' && view.type !== 'word-cloud'"
class="padding-lr" class="padding-lr"
style="margin-top: 6px;" style="margin-top: 6px;"
> >
...@@ -1325,7 +1325,7 @@ export default { ...@@ -1325,7 +1325,7 @@ export default {
view.customAttr.label.show = true view.customAttr.label.show = true
} }
if (view.type === 'liquid' || if (view.type === 'liquid' ||
view.type.includes('table') || (view.type.includes('table') && view.render === 'echarts') ||
view.type.includes('text') || view.type.includes('text') ||
view.type.includes('gauge')) { view.type.includes('gauge')) {
view.drillFields = [] view.drillFields = []
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论