diff --git a/backend/src/main/java/io/dataease/service/dataset/DataSetTableService.java b/backend/src/main/java/io/dataease/service/dataset/DataSetTableService.java index 76ec446d36..523b8e987c 100644 --- a/backend/src/main/java/io/dataease/service/dataset/DataSetTableService.java +++ b/backend/src/main/java/io/dataease/service/dataset/DataSetTableService.java @@ -952,9 +952,10 @@ public class DataSetTableService { List sqlVariableNames = new ArrayList<>(); datasetTables.forEach(datasetTable -> { if (StringUtils.isNotEmpty(datasetTable.getSqlVariableDetails())) { - List sqlVariables = new Gson().fromJson(datasetTable.getSqlVariableDetails(), new TypeToken>() {}.getType()); + List sqlVariables = new Gson().fromJson(datasetTable.getSqlVariableDetails(), new TypeToken>() { + }.getType()); for (SqlVariableDetails sqlVariable : sqlVariables) { - if(!sqlVariableNames.contains(sqlVariable.getVariableName())){ + if (!sqlVariableNames.contains(sqlVariable.getVariableName())) { sqlVariableNames.add(sqlVariable.getVariableName()); sqlVariableDetails.add(sqlVariable); } @@ -1023,7 +1024,7 @@ public class DataSetTableService { if (fromItem instanceof SubSelect) { SelectBody selectBody = ((SubSelect) fromItem).getSelectBody(); SubSelect subSelect = new SubSelect(); - Select subSelectTmp = (Select)CCJSqlParserUtil.parse(removeVariables(selectBody.toString())); + Select subSelectTmp = (Select) CCJSqlParserUtil.parse(removeVariables(selectBody.toString())); PlainSelect subPlainSelect = ((PlainSelect) subSelectTmp.getSelectBody()); subSelect.setSelectBody(subPlainSelect); subSelect.setAlias(new Alias(fromItem.getAlias().toString())); @@ -1805,7 +1806,7 @@ public class DataSetTableService { DataTableInfoDTO dataTableInfoDTO = new Gson().fromJson(dataSetTableRequest.getInfo(), DataTableInfoDTO.class); Map sqlMap = getUnionSQLDoris(dataTableInfoDTO); - String sql = (String) sqlMap.get("sql"); + String sql = new String(java.util.Base64.getDecoder().decode((String) sqlMap.get("sql"))); List fieldList = (List) sqlMap.get("field"); List join = (List) sqlMap.get("join"); @@ -2603,60 +2604,60 @@ public class DataSetTableService { @Override public void visit(Between between) { - if(hasVarible(between.getBetweenExpressionStart().toString()) || hasVarible(between.getBetweenExpressionEnd().toString())){ + if (hasVarible(between.getBetweenExpressionStart().toString()) || hasVarible(between.getBetweenExpressionEnd().toString())) { getBuffer().append(SubstitutedSql); - }else { + } else { getBuffer().append(between.getLeftExpression()).append(" BETWEEN ").append(between.getBetweenExpressionStart()).append(" AND ").append(between.getBetweenExpressionEnd()); } } @Override public void visit(MinorThan minorThan) { - if(hasVarible(minorThan.getLeftExpression().toString()) || hasVarible(minorThan.getRightExpression().toString())){ + if (hasVarible(minorThan.getLeftExpression().toString()) || hasVarible(minorThan.getRightExpression().toString())) { getBuffer().append(SubstitutedSql); return; } getBuffer().append(minorThan.getLeftExpression()); getBuffer().append(" < "); - getBuffer().append( minorThan.getRightExpression()); + getBuffer().append(minorThan.getRightExpression()); } @Override public void visit(MinorThanEquals minorThan) { - if(hasVarible(minorThan.getLeftExpression().toString()) || hasVarible(minorThan.getRightExpression().toString())){ + if (hasVarible(minorThan.getLeftExpression().toString()) || hasVarible(minorThan.getRightExpression().toString())) { getBuffer().append(SubstitutedSql); return; } getBuffer().append(minorThan.getLeftExpression()); getBuffer().append(" <= "); - getBuffer().append( minorThan.getRightExpression()); + getBuffer().append(minorThan.getRightExpression()); } @Override public void visit(GreaterThanEquals minorThan) { - if(hasVarible(minorThan.getLeftExpression().toString()) || hasVarible(minorThan.getRightExpression().toString())){ + if (hasVarible(minorThan.getLeftExpression().toString()) || hasVarible(minorThan.getRightExpression().toString())) { getBuffer().append(SubstitutedSql); return; } getBuffer().append(minorThan.getLeftExpression()); getBuffer().append(" >= "); - getBuffer().append( minorThan.getRightExpression()); + getBuffer().append(minorThan.getRightExpression()); } @Override public void visit(GreaterThan greaterThan) { - if(hasVarible(greaterThan.getLeftExpression().toString()) || hasVarible(greaterThan.getRightExpression().toString())){ + if (hasVarible(greaterThan.getLeftExpression().toString()) || hasVarible(greaterThan.getRightExpression().toString())) { getBuffer().append(SubstitutedSql); return; } getBuffer().append(greaterThan.getLeftExpression()); getBuffer().append(" > "); - getBuffer().append( greaterThan.getRightExpression()); + getBuffer().append(greaterThan.getRightExpression()); } @Override public void visit(ExpressionList expressionList) { - for (Iterator iter = expressionList.getExpressions().iterator(); iter.hasNext();) { + for (Iterator iter = expressionList.getExpressions().iterator(); iter.hasNext(); ) { Expression expression = iter.next(); expression.accept(this); if (iter.hasNext()) { @@ -2732,7 +2733,9 @@ public class DataSetTableService { try { BinaryExpression leftBinaryExpression = (BinaryExpression) expr.getLeftExpression(); hasSubBinaryExpression = leftBinaryExpression.getLeftExpression() instanceof BinaryExpression; - } catch (Exception e) {e.printStackTrace();} + } catch (Exception e) { + e.printStackTrace(); + } if (expr.getLeftExpression() instanceof BinaryExpression && !hasSubBinaryExpression && hasVarible(expr.getLeftExpression().toString())) { getBuffer().append(SubstitutedSql); @@ -2750,7 +2753,7 @@ public class DataSetTableService { } if (expr.getRightExpression() instanceof BinaryExpression && !hasSubBinaryExpression && hasVarible(expr.getRightExpression().toString())) { getBuffer().append(SubstitutedSql); - } else { + } else { expr.getRightExpression().accept(this); } }