forked from github/dataease
feat: 视图支持计算字段
This commit is contained in:
parent
30435e00cf
commit
b5e4aea1dc
@ -533,7 +533,7 @@ public class DataSetTableService {
|
||||
.checked(Boolean.TRUE).build();
|
||||
List<DatasetTableField> fields = dataSetTableFieldsService.list(datasetTableField);
|
||||
if (CollectionUtils.isNotEmpty(extFields)) {
|
||||
fields.addAll(extFields);
|
||||
fields = extFields;
|
||||
}
|
||||
if (CollectionUtils.isEmpty(fields)) {
|
||||
map.put("fields", fields);
|
||||
@ -628,7 +628,6 @@ public class DataSetTableService {
|
||||
datasourceRequest.setQuery(
|
||||
qp.createQueryTableWithPage(table, fields, page, pageSize, realSize, false, ds, customFilter));
|
||||
map.put("sql", datasourceRequest.getQuery());
|
||||
logger.error(datasourceRequest.getQuery());
|
||||
try {
|
||||
data.addAll(jdbcProvider.getData(datasourceRequest));
|
||||
} catch (Exception e) {
|
||||
@ -944,7 +943,8 @@ public class DataSetTableService {
|
||||
List<SqlVariableDetails> sqlVariableDetails = new ArrayList<>();
|
||||
datasetTables.forEach(datasetTable -> {
|
||||
if (StringUtils.isNotEmpty(datasetTable.getSqlVariableDetails())) {
|
||||
sqlVariableDetails.addAll(new Gson().fromJson(datasetTable.getSqlVariableDetails(), new TypeToken<List<SqlVariableDetails>>() {}.getType()));
|
||||
sqlVariableDetails.addAll(new Gson().fromJson(datasetTable.getSqlVariableDetails(), new TypeToken<List<SqlVariableDetails>>() {
|
||||
}.getType()));
|
||||
}
|
||||
|
||||
});
|
||||
@ -959,7 +959,8 @@ public class DataSetTableService {
|
||||
Matcher matcher = pattern.matcher(sql);
|
||||
while (matcher.find()) {
|
||||
SqlVariableDetails defaultsSqlVariableDetail = null;
|
||||
List<SqlVariableDetails> defaultsSqlVariableDetails = new Gson().fromJson(sqlVariableDetails, new TypeToken<List<SqlVariableDetails>>() {}.getType());
|
||||
List<SqlVariableDetails> defaultsSqlVariableDetails = new Gson().fromJson(sqlVariableDetails, new TypeToken<List<SqlVariableDetails>>() {
|
||||
}.getType());
|
||||
for (SqlVariableDetails sqlVariableDetail : defaultsSqlVariableDetails) {
|
||||
if (matcher.group().substring(2, matcher.group().length() - 1).equalsIgnoreCase(sqlVariableDetail.getVariableName())) {
|
||||
defaultsSqlVariableDetail = sqlVariableDetail;
|
||||
@ -2627,6 +2628,7 @@ public class DataSetTableService {
|
||||
};
|
||||
return expressionDeParser;
|
||||
}
|
||||
|
||||
static private boolean hasVarible(String sql) {
|
||||
return sql.contains(SubstitutedParams);
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user