feat(fix):自定义数据集选择字段顺序优化,按照用户点击顺序
This commit is contained in:
parent
d8830e1753
commit
139952b110
@ -3,11 +3,13 @@ package io.dataease.service.dataset;
|
||||
import io.dataease.base.domain.DatasetTableField;
|
||||
import io.dataease.base.domain.DatasetTableFieldExample;
|
||||
import io.dataease.base.mapper.DatasetTableFieldMapper;
|
||||
import org.apache.commons.collections4.CollectionUtils;
|
||||
import org.apache.commons.lang3.ObjectUtils;
|
||||
import org.apache.commons.lang3.StringUtils;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
import javax.annotation.Resource;
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
import java.util.UUID;
|
||||
|
||||
@ -61,6 +63,16 @@ public class DataSetTableFieldsService {
|
||||
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) {
|
||||
DatasetTableFieldExample datasetTableFieldExample = new DatasetTableFieldExample();
|
||||
datasetTableFieldExample.createCriteria().andTableIdEqualTo(id);
|
||||
|
||||
@ -477,7 +477,7 @@ public class DataSetTableService {
|
||||
Map<String, String[]> customInfo = new TreeMap<>();
|
||||
dataTableInfoDTO.getList().forEach(ele -> {
|
||||
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);
|
||||
customInfo.put(table, array);
|
||||
});
|
||||
|
||||
Loading…
Reference in New Issue
Block a user