mirror of
https://gitee.com/mybatis-flex/mybatis-flex.git
synced 2025-12-07 00:58:24 +08:00
!437 为 DistinctQueryColumn 的 queryColumns 属性添加 getter 和 setter
Merge pull request !437 from oc/gitee-issues/I988A6
This commit is contained in:
commit
2060996645
@ -33,18 +33,13 @@ public class DistinctQueryColumn extends QueryColumn implements HasParamsColumn
|
|||||||
this.queryColumns = CollectionUtil.newArrayList(queryColumns);
|
this.queryColumns = CollectionUtil.newArrayList(queryColumns);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
public List<QueryColumn> getQueryColumns() {
|
||||||
public String toSelectSql(List<QueryTable> queryTables, IDialect dialect) {
|
return queryColumns;
|
||||||
if (CollectionUtil.isEmpty(queryTables)) {
|
|
||||||
return SqlConsts.EMPTY;
|
|
||||||
}
|
|
||||||
|
|
||||||
String sql = SqlConsts.DISTINCT + StringUtil.join(SqlConsts.DELIMITER, queryColumns, queryColumn ->
|
|
||||||
queryColumn.toSelectSql(queryTables, dialect));
|
|
||||||
|
|
||||||
return sql + WrapperUtil.buildColumnAlias(alias, dialect);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public void setQueryColumns(List<QueryColumn> queryColumns) {
|
||||||
|
this.queryColumns = queryColumns;
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
String toConditionSql(List<QueryTable> queryTables, IDialect dialect) {
|
String toConditionSql(List<QueryTable> queryTables, IDialect dialect) {
|
||||||
@ -52,9 +47,26 @@ public class DistinctQueryColumn extends QueryColumn implements HasParamsColumn
|
|||||||
return SqlConsts.EMPTY;
|
return SqlConsts.EMPTY;
|
||||||
}
|
}
|
||||||
|
|
||||||
return SqlConsts.DISTINCT + StringUtil.join(SqlConsts.DELIMITER, queryColumns, queryColumn ->
|
return SqlConsts.DISTINCT + StringUtil.join(
|
||||||
queryColumn.toSelectSql(queryTables, dialect));
|
SqlConsts.DELIMITER,
|
||||||
|
queryColumns,
|
||||||
|
queryColumn -> queryColumn.toSelectSql(queryTables, dialect)
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public String toSelectSql(List<QueryTable> queryTables, IDialect dialect) {
|
||||||
|
if (CollectionUtil.isEmpty(queryTables)) {
|
||||||
|
return SqlConsts.EMPTY;
|
||||||
|
}
|
||||||
|
|
||||||
|
String sql = SqlConsts.DISTINCT + StringUtil.join(
|
||||||
|
SqlConsts.DELIMITER,
|
||||||
|
queryColumns,
|
||||||
|
queryColumn -> queryColumn.toSelectSql(queryTables, dialect)
|
||||||
|
);
|
||||||
|
|
||||||
|
return sql + WrapperUtil.buildColumnAlias(alias, dialect);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
@ -62,6 +74,7 @@ public class DistinctQueryColumn extends QueryColumn implements HasParamsColumn
|
|||||||
DistinctQueryColumn clone = (DistinctQueryColumn) super.clone();
|
DistinctQueryColumn clone = (DistinctQueryColumn) super.clone();
|
||||||
// deep clone ...
|
// deep clone ...
|
||||||
clone.queryColumns = CollectionUtil.cloneArrayList(this.queryColumns);
|
clone.queryColumns = CollectionUtil.cloneArrayList(this.queryColumns);
|
||||||
|
|
||||||
return clone;
|
return clone;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -76,6 +89,7 @@ public class DistinctQueryColumn extends QueryColumn implements HasParamsColumn
|
|||||||
for (QueryColumn queryColumn : queryColumns) {
|
for (QueryColumn queryColumn : queryColumns) {
|
||||||
if (queryColumn instanceof HasParamsColumn) {
|
if (queryColumn instanceof HasParamsColumn) {
|
||||||
Object[] paramValues = ((HasParamsColumn) queryColumn).getParamValues();
|
Object[] paramValues = ((HasParamsColumn) queryColumn).getParamValues();
|
||||||
|
|
||||||
params.addAll(Arrays.asList(paramValues));
|
params.addAll(Arrays.asList(paramValues));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user