forked from github/dataease
Merge branch 'dev' of github.com:dataease/dataease into dev
This commit is contained in:
commit
845e3d32bd
@ -296,9 +296,13 @@ public class DorisQueryProvider extends QueryProvider {
|
|||||||
originField = calcFieldRegex(x.getOriginName(), tableObj);
|
originField = calcFieldRegex(x.getOriginName(), tableObj);
|
||||||
} else if (ObjectUtils.isNotEmpty(x.getExtField()) && x.getExtField() == 1) {
|
} else if (ObjectUtils.isNotEmpty(x.getExtField()) && x.getExtField() == 1) {
|
||||||
originField = String.format(DorisConstants.KEYWORD_FIX, tableObj.getTableAlias(), x.getDataeaseName());
|
originField = String.format(DorisConstants.KEYWORD_FIX, tableObj.getTableAlias(), x.getDataeaseName());
|
||||||
|
} else {
|
||||||
|
if (x.getDeType() == 2 || x.getDeType() == 3) {
|
||||||
|
originField = String.format(DorisConstants.CAST, String.format(DorisConstants.KEYWORD_FIX, tableObj.getTableAlias(), x.getDataeaseName()), DorisConstants.DEFAULT_FLOAT_FORMAT);
|
||||||
} else {
|
} else {
|
||||||
originField = String.format(DorisConstants.KEYWORD_FIX, tableObj.getTableAlias(), x.getDataeaseName());
|
originField = String.format(DorisConstants.KEYWORD_FIX, tableObj.getTableAlias(), x.getDataeaseName());
|
||||||
}
|
}
|
||||||
|
}
|
||||||
String fieldAlias = String.format(SQLConstants.FIELD_ALIAS_X_PREFIX, i);
|
String fieldAlias = String.format(SQLConstants.FIELD_ALIAS_X_PREFIX, i);
|
||||||
// 处理横轴字段
|
// 处理横轴字段
|
||||||
xFields.add(getXFields(x, originField, fieldAlias));
|
xFields.add(getXFields(x, originField, fieldAlias));
|
||||||
|
@ -296,9 +296,13 @@ public class MysqlQueryProvider extends QueryProvider {
|
|||||||
originField = calcFieldRegex(x.getOriginName(), tableObj);
|
originField = calcFieldRegex(x.getOriginName(), tableObj);
|
||||||
} else if (ObjectUtils.isNotEmpty(x.getExtField()) && x.getExtField() == 1) {
|
} else if (ObjectUtils.isNotEmpty(x.getExtField()) && x.getExtField() == 1) {
|
||||||
originField = String.format(MysqlConstants.KEYWORD_FIX, tableObj.getTableAlias(), x.getDataeaseName());
|
originField = String.format(MysqlConstants.KEYWORD_FIX, tableObj.getTableAlias(), x.getDataeaseName());
|
||||||
|
} else {
|
||||||
|
if (x.getDeType() == 2 || x.getDeType() == 3) {
|
||||||
|
originField = String.format(MysqlConstants.CAST, String.format(MysqlConstants.KEYWORD_FIX, tableObj.getTableAlias(), x.getDataeaseName()), MysqlConstants.DEFAULT_FLOAT_FORMAT);
|
||||||
} else {
|
} else {
|
||||||
originField = String.format(MysqlConstants.KEYWORD_FIX, tableObj.getTableAlias(), x.getDataeaseName());
|
originField = String.format(MysqlConstants.KEYWORD_FIX, tableObj.getTableAlias(), x.getDataeaseName());
|
||||||
}
|
}
|
||||||
|
}
|
||||||
String fieldAlias = String.format(SQLConstants.FIELD_ALIAS_X_PREFIX, i);
|
String fieldAlias = String.format(SQLConstants.FIELD_ALIAS_X_PREFIX, i);
|
||||||
// 处理横轴字段
|
// 处理横轴字段
|
||||||
xFields.add(getXFields(x, originField, fieldAlias));
|
xFields.add(getXFields(x, originField, fieldAlias));
|
||||||
|
@ -325,9 +325,13 @@ public class CKQueryProvider extends QueryProvider {
|
|||||||
originField = calcFieldRegex(x.getOriginName(), tableObj);
|
originField = calcFieldRegex(x.getOriginName(), tableObj);
|
||||||
} else if (ObjectUtils.isNotEmpty(x.getExtField()) && x.getExtField() == 1) {
|
} else if (ObjectUtils.isNotEmpty(x.getExtField()) && x.getExtField() == 1) {
|
||||||
originField = String.format(CKConstants.KEYWORD_FIX, tableObj.getTableAlias(), x.getOriginName());
|
originField = String.format(CKConstants.KEYWORD_FIX, tableObj.getTableAlias(), x.getOriginName());
|
||||||
|
} else {
|
||||||
|
if (x.getDeType() == 2 || x.getDeType() == 3) {
|
||||||
|
originField = String.format(CKConstants.toDecimal, String.format(CKConstants.KEYWORD_FIX, tableObj.getTableAlias(), x.getOriginName()));
|
||||||
} else {
|
} else {
|
||||||
originField = String.format(CKConstants.KEYWORD_FIX, tableObj.getTableAlias(), x.getOriginName());
|
originField = String.format(CKConstants.KEYWORD_FIX, tableObj.getTableAlias(), x.getOriginName());
|
||||||
}
|
}
|
||||||
|
}
|
||||||
String fieldAlias = String.format(SQLConstants.FIELD_ALIAS_X_PREFIX, i);
|
String fieldAlias = String.format(SQLConstants.FIELD_ALIAS_X_PREFIX, i);
|
||||||
// 处理横轴字段
|
// 处理横轴字段
|
||||||
xFields.add(getXFields(x, originField, fieldAlias));
|
xFields.add(getXFields(x, originField, fieldAlias));
|
||||||
|
@ -299,9 +299,14 @@ public class Db2QueryProvider extends QueryProvider {
|
|||||||
originField = calcFieldRegex(x.getOriginName(), tableObj);
|
originField = calcFieldRegex(x.getOriginName(), tableObj);
|
||||||
} else if (ObjectUtils.isNotEmpty(x.getExtField()) && x.getExtField() == 1) {
|
} else if (ObjectUtils.isNotEmpty(x.getExtField()) && x.getExtField() == 1) {
|
||||||
originField = String.format(Db2Constants.KEYWORD_FIX, tableObj.getTableAlias(), x.getOriginName());
|
originField = String.format(Db2Constants.KEYWORD_FIX, tableObj.getTableAlias(), x.getOriginName());
|
||||||
|
} else {
|
||||||
|
if (x.getDeType() == 2 || x.getDeType() == 3) {
|
||||||
|
originField = String.format(Db2Constants.CAST, String.format(Db2Constants.KEYWORD_FIX, tableObj.getTableAlias(), x.getOriginName()), Db2Constants.DEFAULT_FLOAT_FORMAT);
|
||||||
} else {
|
} else {
|
||||||
originField = String.format(Db2Constants.KEYWORD_FIX, tableObj.getTableAlias(), x.getOriginName());
|
originField = String.format(Db2Constants.KEYWORD_FIX, tableObj.getTableAlias(), x.getOriginName());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
}
|
||||||
String fieldAlias = String.format(SQLConstants.FIELD_ALIAS_X_PREFIX, i);
|
String fieldAlias = String.format(SQLConstants.FIELD_ALIAS_X_PREFIX, i);
|
||||||
// 处理横轴字段
|
// 处理横轴字段
|
||||||
xFields.add(getXFields(x, originField, fieldAlias));
|
xFields.add(getXFields(x, originField, fieldAlias));
|
||||||
|
@ -285,9 +285,13 @@ public class HiveQueryProvider extends QueryProvider {
|
|||||||
originField = calcFieldRegex(x.getOriginName(), tableObj);
|
originField = calcFieldRegex(x.getOriginName(), tableObj);
|
||||||
} else if (ObjectUtils.isNotEmpty(x.getExtField()) && x.getExtField() == 1) {
|
} else if (ObjectUtils.isNotEmpty(x.getExtField()) && x.getExtField() == 1) {
|
||||||
originField = String.format(HiveConstants.KEYWORD_FIX, tableObj.getTableAlias(), x.getOriginName());
|
originField = String.format(HiveConstants.KEYWORD_FIX, tableObj.getTableAlias(), x.getOriginName());
|
||||||
|
} else {
|
||||||
|
if (x.getDeType() == 2 || x.getDeType() == 3) {
|
||||||
|
originField = String.format(HiveConstants.CAST, String.format(HiveConstants.KEYWORD_FIX, tableObj.getTableAlias(), x.getOriginName()), HiveConstants.DEFAULT_FLOAT_FORMAT);
|
||||||
} else {
|
} else {
|
||||||
originField = String.format(HiveConstants.KEYWORD_FIX, tableObj.getTableAlias(), x.getOriginName());
|
originField = String.format(HiveConstants.KEYWORD_FIX, tableObj.getTableAlias(), x.getOriginName());
|
||||||
}
|
}
|
||||||
|
}
|
||||||
String fieldAlias = String.format(SQLConstants.FIELD_ALIAS_X_PREFIX, i);
|
String fieldAlias = String.format(SQLConstants.FIELD_ALIAS_X_PREFIX, i);
|
||||||
// 处理横轴字段
|
// 处理横轴字段
|
||||||
xFields.add(getXFields(x, originField, fieldAlias));
|
xFields.add(getXFields(x, originField, fieldAlias));
|
||||||
|
@ -282,9 +282,13 @@ public class ImpalaQueryProvider extends QueryProvider {
|
|||||||
originField = calcFieldRegex(x.getOriginName(), tableObj);
|
originField = calcFieldRegex(x.getOriginName(), tableObj);
|
||||||
} else if (ObjectUtils.isNotEmpty(x.getExtField()) && x.getExtField() == 1) {
|
} else if (ObjectUtils.isNotEmpty(x.getExtField()) && x.getExtField() == 1) {
|
||||||
originField = String.format(ImpalaConstants.KEYWORD_FIX, tableObj.getTableAlias(), x.getOriginName());
|
originField = String.format(ImpalaConstants.KEYWORD_FIX, tableObj.getTableAlias(), x.getOriginName());
|
||||||
|
} else {
|
||||||
|
if (x.getDeType() == 2 || x.getDeType() == 3) {
|
||||||
|
originField = String.format(ImpalaConstants.CAST, String.format(ImpalaConstants.KEYWORD_FIX, tableObj.getTableAlias(), x.getOriginName()), ImpalaConstants.DEFAULT_FLOAT_FORMAT);
|
||||||
} else {
|
} else {
|
||||||
originField = String.format(ImpalaConstants.KEYWORD_FIX, tableObj.getTableAlias(), x.getOriginName());
|
originField = String.format(ImpalaConstants.KEYWORD_FIX, tableObj.getTableAlias(), x.getOriginName());
|
||||||
}
|
}
|
||||||
|
}
|
||||||
String fieldAlias = String.format(SQLConstants.FIELD_ALIAS_X_PREFIX, i);
|
String fieldAlias = String.format(SQLConstants.FIELD_ALIAS_X_PREFIX, i);
|
||||||
// 处理横轴字段
|
// 处理横轴字段
|
||||||
xFields.add(getXFields(x, originField, fieldAlias));
|
xFields.add(getXFields(x, originField, fieldAlias));
|
||||||
|
@ -276,9 +276,13 @@ public class MongoQueryProvider extends QueryProvider {
|
|||||||
originField = calcFieldRegex(x.getOriginName(), tableObj);
|
originField = calcFieldRegex(x.getOriginName(), tableObj);
|
||||||
} else if (ObjectUtils.isNotEmpty(x.getExtField()) && x.getExtField() == DeTypeConstants.DE_TIME) {
|
} else if (ObjectUtils.isNotEmpty(x.getExtField()) && x.getExtField() == DeTypeConstants.DE_TIME) {
|
||||||
originField = String.format(MongoConstants.KEYWORD_FIX, tableObj.getTableAlias(), x.getOriginName());
|
originField = String.format(MongoConstants.KEYWORD_FIX, tableObj.getTableAlias(), x.getOriginName());
|
||||||
|
} else {
|
||||||
|
if (x.getDeType() == 2 || x.getDeType() == 3) {
|
||||||
|
originField = String.format(MongoConstants.toDecimal, String.format(MongoConstants.KEYWORD_FIX, tableObj.getTableAlias(), x.getOriginName()));
|
||||||
} else {
|
} else {
|
||||||
originField = String.format(MongoConstants.KEYWORD_FIX, tableObj.getTableAlias(), x.getOriginName());
|
originField = String.format(MongoConstants.KEYWORD_FIX, tableObj.getTableAlias(), x.getOriginName());
|
||||||
}
|
}
|
||||||
|
}
|
||||||
String fieldAlias = String.format(SQLConstants.FIELD_ALIAS_X_PREFIX, i);
|
String fieldAlias = String.format(SQLConstants.FIELD_ALIAS_X_PREFIX, i);
|
||||||
// 处理横轴字段
|
// 处理横轴字段
|
||||||
xFields.add(getXFields(x, originField, fieldAlias));
|
xFields.add(getXFields(x, originField, fieldAlias));
|
||||||
|
@ -11,6 +11,7 @@ import io.dataease.dto.chart.ChartFieldCustomFilterDTO;
|
|||||||
import io.dataease.dto.chart.ChartViewFieldDTO;
|
import io.dataease.dto.chart.ChartViewFieldDTO;
|
||||||
import io.dataease.dto.sqlObj.SQLObj;
|
import io.dataease.dto.sqlObj.SQLObj;
|
||||||
import io.dataease.plugins.common.constants.MySQLConstants;
|
import io.dataease.plugins.common.constants.MySQLConstants;
|
||||||
|
import io.dataease.plugins.common.constants.engine.MysqlConstants;
|
||||||
import io.dataease.provider.QueryProvider;
|
import io.dataease.provider.QueryProvider;
|
||||||
import io.dataease.plugins.common.constants.SQLConstants;
|
import io.dataease.plugins.common.constants.SQLConstants;
|
||||||
import org.apache.commons.collections4.CollectionUtils;
|
import org.apache.commons.collections4.CollectionUtils;
|
||||||
@ -293,9 +294,13 @@ public class MysqlQueryProvider extends QueryProvider {
|
|||||||
originField = calcFieldRegex(x.getOriginName(), tableObj);
|
originField = calcFieldRegex(x.getOriginName(), tableObj);
|
||||||
} else if (ObjectUtils.isNotEmpty(x.getExtField()) && x.getExtField() == 1) {
|
} else if (ObjectUtils.isNotEmpty(x.getExtField()) && x.getExtField() == 1) {
|
||||||
originField = String.format(MySQLConstants.KEYWORD_FIX, tableObj.getTableAlias(), x.getOriginName());
|
originField = String.format(MySQLConstants.KEYWORD_FIX, tableObj.getTableAlias(), x.getOriginName());
|
||||||
|
} else {
|
||||||
|
if (x.getDeType() == 2 || x.getDeType() == 3) {
|
||||||
|
originField = String.format(MySQLConstants.CAST, String.format(MySQLConstants.KEYWORD_FIX, tableObj.getTableAlias(), x.getOriginName()), MysqlConstants.DEFAULT_FLOAT_FORMAT);
|
||||||
} else {
|
} else {
|
||||||
originField = String.format(MySQLConstants.KEYWORD_FIX, tableObj.getTableAlias(), x.getOriginName());
|
originField = String.format(MySQLConstants.KEYWORD_FIX, tableObj.getTableAlias(), x.getOriginName());
|
||||||
}
|
}
|
||||||
|
}
|
||||||
String fieldAlias = String.format(SQLConstants.FIELD_ALIAS_X_PREFIX, i);
|
String fieldAlias = String.format(SQLConstants.FIELD_ALIAS_X_PREFIX, i);
|
||||||
// 处理横轴字段
|
// 处理横轴字段
|
||||||
xFields.add(getXFields(x, originField, fieldAlias));
|
xFields.add(getXFields(x, originField, fieldAlias));
|
||||||
|
@ -340,9 +340,13 @@ public class OracleQueryProvider extends QueryProvider {
|
|||||||
originField = calcFieldRegex(x.getOriginName(), tableObj);
|
originField = calcFieldRegex(x.getOriginName(), tableObj);
|
||||||
} else if (ObjectUtils.isNotEmpty(x.getExtField()) && x.getExtField() == 1) {
|
} else if (ObjectUtils.isNotEmpty(x.getExtField()) && x.getExtField() == 1) {
|
||||||
originField = String.format(OracleConstants.KEYWORD_FIX, tableObj.getTableAlias(), x.getOriginName());
|
originField = String.format(OracleConstants.KEYWORD_FIX, tableObj.getTableAlias(), x.getOriginName());
|
||||||
|
} else {
|
||||||
|
if (x.getDeType() == 2 || x.getDeType() == 3) {
|
||||||
|
originField = String.format(OracleConstants.CAST, String.format(OracleConstants.KEYWORD_FIX, tableObj.getTableAlias(), x.getOriginName()), OracleConstants.DEFAULT_FLOAT_FORMAT);
|
||||||
} else {
|
} else {
|
||||||
originField = String.format(OracleConstants.KEYWORD_FIX, tableObj.getTableAlias(), x.getOriginName());
|
originField = String.format(OracleConstants.KEYWORD_FIX, tableObj.getTableAlias(), x.getOriginName());
|
||||||
}
|
}
|
||||||
|
}
|
||||||
String fieldAlias = String.format(OracleConstants.ALIAS_FIX, String.format(SQLConstants.FIELD_ALIAS_X_PREFIX, i));
|
String fieldAlias = String.format(OracleConstants.ALIAS_FIX, String.format(SQLConstants.FIELD_ALIAS_X_PREFIX, i));
|
||||||
// 处理横轴字段
|
// 处理横轴字段
|
||||||
xFields.add(getXFields(x, originField, fieldAlias));
|
xFields.add(getXFields(x, originField, fieldAlias));
|
||||||
|
@ -314,9 +314,13 @@ public class PgQueryProvider extends QueryProvider {
|
|||||||
originField = calcFieldRegex(x.getOriginName(), tableObj);
|
originField = calcFieldRegex(x.getOriginName(), tableObj);
|
||||||
} else if (ObjectUtils.isNotEmpty(x.getExtField()) && x.getExtField() == 1) {
|
} else if (ObjectUtils.isNotEmpty(x.getExtField()) && x.getExtField() == 1) {
|
||||||
originField = String.format(PgConstants.KEYWORD_FIX, tableObj.getTableAlias(), x.getOriginName());
|
originField = String.format(PgConstants.KEYWORD_FIX, tableObj.getTableAlias(), x.getOriginName());
|
||||||
|
} else {
|
||||||
|
if (x.getDeType() == 2 || x.getDeType() == 3) {
|
||||||
|
originField = String.format(PgConstants.CAST, String.format(PgConstants.KEYWORD_FIX, tableObj.getTableAlias(), x.getOriginName()), PgConstants.DEFAULT_FLOAT_FORMAT);
|
||||||
} else {
|
} else {
|
||||||
originField = String.format(PgConstants.KEYWORD_FIX, tableObj.getTableAlias(), x.getOriginName());
|
originField = String.format(PgConstants.KEYWORD_FIX, tableObj.getTableAlias(), x.getOriginName());
|
||||||
}
|
}
|
||||||
|
}
|
||||||
String fieldAlias = String.format(SQLConstants.FIELD_ALIAS_X_PREFIX, i);
|
String fieldAlias = String.format(SQLConstants.FIELD_ALIAS_X_PREFIX, i);
|
||||||
// 处理横轴字段
|
// 处理横轴字段
|
||||||
xFields.add(getXFields(x, originField, fieldAlias));
|
xFields.add(getXFields(x, originField, fieldAlias));
|
||||||
|
@ -312,9 +312,13 @@ public class SqlserverQueryProvider extends QueryProvider {
|
|||||||
originField = calcFieldRegex(x.getOriginName(), tableObj);
|
originField = calcFieldRegex(x.getOriginName(), tableObj);
|
||||||
} else if (ObjectUtils.isNotEmpty(x.getExtField()) && x.getExtField() == 1) {
|
} else if (ObjectUtils.isNotEmpty(x.getExtField()) && x.getExtField() == 1) {
|
||||||
originField = String.format(SqlServerSQLConstants.KEYWORD_FIX, tableObj.getTableAlias(), x.getOriginName());
|
originField = String.format(SqlServerSQLConstants.KEYWORD_FIX, tableObj.getTableAlias(), x.getOriginName());
|
||||||
|
} else {
|
||||||
|
if (x.getDeType() == 2 || x.getDeType() == 3) {
|
||||||
|
originField = String.format(SqlServerSQLConstants.CONVERT, SqlServerSQLConstants.DEFAULT_FLOAT_FORMAT, String.format(SqlServerSQLConstants.KEYWORD_FIX, tableObj.getTableAlias(), x.getOriginName()));
|
||||||
} else {
|
} else {
|
||||||
originField = String.format(SqlServerSQLConstants.KEYWORD_FIX, tableObj.getTableAlias(), x.getOriginName());
|
originField = String.format(SqlServerSQLConstants.KEYWORD_FIX, tableObj.getTableAlias(), x.getOriginName());
|
||||||
}
|
}
|
||||||
|
}
|
||||||
String fieldAlias = String.format(SQLConstants.FIELD_ALIAS_X_PREFIX, i);
|
String fieldAlias = String.format(SQLConstants.FIELD_ALIAS_X_PREFIX, i);
|
||||||
// 处理横轴字段
|
// 处理横轴字段
|
||||||
xFields.add(getXFields(x, originField, fieldAlias));
|
xFields.add(getXFields(x, originField, fieldAlias));
|
||||||
|
@ -784,6 +784,7 @@ public class ChartViewService {
|
|||||||
PluginViewParam pluginViewParam = new PluginViewParam();
|
PluginViewParam pluginViewParam = new PluginViewParam();
|
||||||
PluginViewSet pluginViewSet = BeanUtils.copyBean(new PluginViewSet(), table);
|
PluginViewSet pluginViewSet = BeanUtils.copyBean(new PluginViewSet(), table);
|
||||||
pluginViewSet.setDsType(ds.getType());
|
pluginViewSet.setDsType(ds.getType());
|
||||||
|
pluginViewSet.setTabelId(table.getId());
|
||||||
PluginViewLimit pluginViewLimit = BeanUtils.copyBean(new PluginViewLimit(), view);
|
PluginViewLimit pluginViewLimit = BeanUtils.copyBean(new PluginViewLimit(), view);
|
||||||
|
|
||||||
|
|
||||||
|
@ -93,6 +93,11 @@ public class ViewPluginBaseServiceImpl implements ViewPluginBaseService {
|
|||||||
public PluginViewSQL getTableObj(PluginViewSet pluginViewSet) {
|
public PluginViewSQL getTableObj(PluginViewSet pluginViewSet) {
|
||||||
String tableName = null;
|
String tableName = null;
|
||||||
DataTableInfoDTO dataTableInfoDTO = new Gson().fromJson(pluginViewSet.getInfo(), DataTableInfoDTO.class);
|
DataTableInfoDTO dataTableInfoDTO = new Gson().fromJson(pluginViewSet.getInfo(), DataTableInfoDTO.class);
|
||||||
|
if (ObjectUtils.isNotEmpty(pluginViewSet.getMode()) && 1 == pluginViewSet.getMode()) {
|
||||||
|
|
||||||
|
tableName = "ds_" + pluginViewSet.getTabelId().replaceAll("-", "_");
|
||||||
|
|
||||||
|
}else {
|
||||||
switch (pluginViewSet.getType()) {
|
switch (pluginViewSet.getType()) {
|
||||||
case "db":
|
case "db":
|
||||||
tableName = dataTableInfoDTO.getTable();
|
tableName = dataTableInfoDTO.getTable();
|
||||||
@ -113,9 +118,10 @@ public class ViewPluginBaseServiceImpl implements ViewPluginBaseService {
|
|||||||
tableName = (String) sqlMap.get("sql");
|
tableName = (String) sqlMap.get("sql");
|
||||||
break;
|
break;
|
||||||
default:
|
default:
|
||||||
|
tableName = dataTableInfoDTO.getTable();
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
}
|
||||||
String keyword = ConstantsUtil.constantsValue(pluginViewSet.getDsType(), "KEYWORD_TABLE");
|
String keyword = ConstantsUtil.constantsValue(pluginViewSet.getDsType(), "KEYWORD_TABLE");
|
||||||
String tabelName = (tableName.startsWith("(") && tableName.endsWith(")")) ? tableName : String.format(keyword, tableName);
|
String tabelName = (tableName.startsWith("(") && tableName.endsWith(")")) ? tableName : String.format(keyword, tableName);
|
||||||
String tabelAlias = String.format(TABLE_ALIAS_PREFIX, 0);
|
String tabelAlias = String.format(TABLE_ALIAS_PREFIX, 0);
|
||||||
|
@ -260,6 +260,43 @@ const data = {
|
|||||||
}
|
}
|
||||||
for (let index = 0; index < state.componentData.length; index++) {
|
for (let index = 0; index < state.componentData.length; index++) {
|
||||||
const element = state.componentData[index]
|
const element = state.componentData[index]
|
||||||
|
if (element.type && element.type === 'de-tabs') {
|
||||||
|
for (let idx = 0; idx < element.options.tabList.length; idx++) {
|
||||||
|
const ele = element.options.tabList[idx].content
|
||||||
|
if (!ele.type || ele.type !== 'view') continue
|
||||||
|
|
||||||
|
const currentFilters = []
|
||||||
|
|
||||||
|
data.dimensionList.forEach(dimension => {
|
||||||
|
const sourceInfo = viewId + '#' + dimension.id
|
||||||
|
// 获取所有目标联动信息
|
||||||
|
const targetInfoList = trackInfo[sourceInfo] || []
|
||||||
|
targetInfoList.forEach(targetInfo => {
|
||||||
|
const targetInfoArray = targetInfo.split('#')
|
||||||
|
const targetViewId = targetInfoArray[0] // 目标视图
|
||||||
|
if (ele.propValue.viewId === targetViewId) { // 如果目标视图 和 当前循环组件id相等 则进行条件增减
|
||||||
|
const targetFieldId = targetInfoArray[1] // 目标视图列ID
|
||||||
|
const condition = new Condition('', targetFieldId, 'eq', [dimension.value], [targetViewId])
|
||||||
|
condition.sourceViewId = viewId
|
||||||
|
let j = currentFilters.length
|
||||||
|
while (j--) {
|
||||||
|
const filter = currentFilters[j]
|
||||||
|
// 兼容性准备 viewIds 只会存放一个值
|
||||||
|
if (targetFieldId === filter.fieldId && filter.viewIds.includes(targetViewId)) {
|
||||||
|
currentFilters.splice(j, 1)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
// 不存在该条件 且 条件有效 直接保存该条件
|
||||||
|
// !filterExist && vValid && currentFilters.push(condition)
|
||||||
|
currentFilters.push(condition)
|
||||||
|
}
|
||||||
|
})
|
||||||
|
})
|
||||||
|
|
||||||
|
ele.linkageFilters = currentFilters
|
||||||
|
}
|
||||||
|
state.componentData[index] = element
|
||||||
|
}
|
||||||
if (!element.type || element.type !== 'view') continue
|
if (!element.type || element.type !== 'view') continue
|
||||||
// const currentFilters = element.linkageFilters || [] // 当前联动filter
|
// const currentFilters = element.linkageFilters || [] // 当前联动filter
|
||||||
// 联动的视图情况历史条件
|
// 联动的视图情况历史条件
|
||||||
|
Loading…
Reference in New Issue
Block a user