提交 139952b1 authored 作者: junjie's avatar junjie

feat(fix):自定义数据集选择字段顺序优化,按照用户点击顺序

上级 d8830e17
...@@ -3,11 +3,13 @@ package io.dataease.service.dataset; ...@@ -3,11 +3,13 @@ package io.dataease.service.dataset;
import io.dataease.base.domain.DatasetTableField; import io.dataease.base.domain.DatasetTableField;
import io.dataease.base.domain.DatasetTableFieldExample; import io.dataease.base.domain.DatasetTableFieldExample;
import io.dataease.base.mapper.DatasetTableFieldMapper; import io.dataease.base.mapper.DatasetTableFieldMapper;
import org.apache.commons.collections4.CollectionUtils;
import org.apache.commons.lang3.ObjectUtils; import org.apache.commons.lang3.ObjectUtils;
import org.apache.commons.lang3.StringUtils; import org.apache.commons.lang3.StringUtils;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import javax.annotation.Resource; import javax.annotation.Resource;
import java.util.ArrayList;
import java.util.List; import java.util.List;
import java.util.UUID; import java.util.UUID;
...@@ -61,6 +63,16 @@ public class DataSetTableFieldsService { ...@@ -61,6 +63,16 @@ public class DataSetTableFieldsService {
return datasetTableFieldMapper.selectByExample(datasetTableFieldExample); return datasetTableFieldMapper.selectByExample(datasetTableFieldExample);
} }
public List<DatasetTableField> getListByIdsEach(List<String> ids) {
List<DatasetTableField> list = new ArrayList<>();
if (CollectionUtils.isNotEmpty(ids)) {
ids.forEach(id -> {
list.add(datasetTableFieldMapper.selectByPrimaryKey(id));
});
}
return list;
}
public List<DatasetTableField> getFieldsByTableId(String id) { public List<DatasetTableField> getFieldsByTableId(String id) {
DatasetTableFieldExample datasetTableFieldExample = new DatasetTableFieldExample(); DatasetTableFieldExample datasetTableFieldExample = new DatasetTableFieldExample();
datasetTableFieldExample.createCriteria().andTableIdEqualTo(id); datasetTableFieldExample.createCriteria().andTableIdEqualTo(id);
......
...@@ -477,7 +477,7 @@ public class DataSetTableService { ...@@ -477,7 +477,7 @@ public class DataSetTableService {
Map<String, String[]> customInfo = new TreeMap<>(); Map<String, String[]> customInfo = new TreeMap<>();
dataTableInfoDTO.getList().forEach(ele -> { dataTableInfoDTO.getList().forEach(ele -> {
String table = DorisTableUtils.dorisName(ele.getTableId()); String table = DorisTableUtils.dorisName(ele.getTableId());
List<DatasetTableField> fields = dataSetTableFieldsService.getListByIds(ele.getCheckedFields()); List<DatasetTableField> fields = dataSetTableFieldsService.getListByIdsEach(ele.getCheckedFields());
String[] array = fields.stream().map(f -> table + "." + f.getDataeaseName() + " AS " + DorisTableUtils.dorisFieldName(ele.getTableId() + "_" + f.getDataeaseName())).toArray(String[]::new); String[] array = fields.stream().map(f -> table + "." + f.getDataeaseName() + " AS " + DorisTableUtils.dorisFieldName(ele.getTableId() + "_" + f.getDataeaseName())).toArray(String[]::new);
customInfo.put(table, array); customInfo.put(table, array);
}); });
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论