fix(数据集): 过滤组件选择参数传递后,不再额外拼接过滤条件

This commit is contained in:
taojinlong 2022-07-05 13:40:52 +08:00
parent 43782b5fd2
commit 538ac13db6
2 changed files with 16 additions and 1 deletions

View File

@ -5,6 +5,7 @@
<resultMap id="BaseResultMapDTO" type="io.dataease.dto.dataset.DataSetTableDTO"
extends="io.dataease.plugins.common.base.mapper.DatasetTableMapper.BaseResultMap">
<result column="privileges" property="privileges"/>
<result column="sql_variable_details" property="sqlVariableDetails"/>
</resultMap>
@ -16,7 +17,7 @@
<select id="searchOne" resultMap="BaseResultMapDTO">
select
id, `name`, scene_id, data_source_id, `type`, `mode`,`info`, create_by, create_time,
get_auths(id,'dataset',#{userId}) as `privileges`, scene_id as pid
get_auths(id,'dataset',#{userId}) as `privileges`, scene_id as pid, sql_variable_details
from dataset_table
<where>
<if test="id != null">

View File

@ -6,6 +6,7 @@ import com.google.gson.reflect.TypeToken;
import io.dataease.auth.entity.SysUserEntity;
import io.dataease.auth.service.AuthUserService;
import io.dataease.commons.model.PluginViewSetImpl;
import io.dataease.dto.dataset.SqlVariableDetails;
import io.dataease.ext.*;
import io.dataease.commons.constants.CommonConstants;
import io.dataease.commons.constants.JdbcConstants;
@ -645,6 +646,19 @@ public class ChartViewService {
if (request.getIsTree() == null) {
request.setIsTree(false);
}
boolean hasParameters = false;
if (StringUtils.isNotEmpty(table.getSqlVariableDetails())) {
List<SqlVariableDetails> sqlVariables = new Gson().fromJson(table.getSqlVariableDetails(), new TypeToken<List<SqlVariableDetails>>() {}.getType());
for (String parameter : request.getParameters()) {
if (sqlVariables.stream().map(SqlVariableDetails::getVariableName).collect(Collectors.toList()).contains(parameter)) {
hasParameters = true;
}
}
}
if(hasParameters){
continue;
}
if (StringUtils.isNotEmpty(fieldId)) {
String[] fieldIds = fieldId.split(",");
if (request.getIsTree()) {