扩展PageBean参数接口
This commit is contained in:
@@ -2630,7 +2630,8 @@ public interface DataSource extends Resourcable {
|
||||
*
|
||||
* @return 字段值的集合CompletableFuture
|
||||
*/
|
||||
default <T, V extends Serializable> CompletableFuture<List<V>> queryColumnListAsync(final String selectedColumn, final Class<T> clazz, final Flipper flipper, final FilterBean bean) {
|
||||
default <T, V extends Serializable> CompletableFuture<List<V>> queryColumnListAsync(final String selectedColumn, final Class<T> clazz,
|
||||
final Flipper flipper, final FilterBean bean) {
|
||||
return queryColumnListAsync(selectedColumn, clazz, flipper, FilterNodeBean.createFilterNode(bean));
|
||||
}
|
||||
|
||||
@@ -2662,7 +2663,8 @@ public interface DataSource extends Resourcable {
|
||||
*
|
||||
* @return 字段值的集合CompletableFuture
|
||||
*/
|
||||
public <T, V extends Serializable> CompletableFuture<List<V>> queryColumnListAsync(final String selectedColumn, final Class<T> clazz, final Flipper flipper, final FilterNode node);
|
||||
public <T, V extends Serializable> CompletableFuture<List<V>> queryColumnListAsync(final String selectedColumn, final Class<T> clazz,
|
||||
final Flipper flipper, final FilterNode node);
|
||||
|
||||
/**
|
||||
* 查询符合过滤条件记录的某个字段Sheet集合 <br>
|
||||
@@ -2677,10 +2679,30 @@ public interface DataSource extends Resourcable {
|
||||
*
|
||||
* @return 字段值的集合
|
||||
*/
|
||||
default <T, V extends Serializable> Sheet<V> queryColumnSheet(final String selectedColumn, final Class<T> clazz, final Flipper flipper, final FilterBean bean) {
|
||||
default <T, V extends Serializable> Sheet<V> queryColumnSheet(final String selectedColumn, final Class<T> clazz,
|
||||
final Flipper flipper, final FilterBean bean) {
|
||||
return queryColumnSheet(selectedColumn, clazz, flipper, FilterNodeBean.createFilterNode(bean));
|
||||
}
|
||||
|
||||
/**
|
||||
* 查询符合过滤条件记录的某个字段Sheet集合 <br>
|
||||
* 等价SQL: SELECT {selectedColumn} FROM {table} WHERE {filter node} ORDER BY {flipper.sort} LIMIT {flipper.limit} <br>
|
||||
*
|
||||
* @param <T> Entity泛型
|
||||
* @param <V> 字段类型
|
||||
* @param <F> 过滤类型
|
||||
* @param selectedColumn 指定字段
|
||||
* @param clazz Entity类
|
||||
* @param pageBean 过滤翻页条件
|
||||
*
|
||||
* @return 字段值的集合
|
||||
*/
|
||||
default <T, V extends Serializable, F extends FilterBean> Sheet<V> queryColumnSheet(final String selectedColumn, final Class<T> clazz,
|
||||
final PageBean<F> pageBean) {
|
||||
return queryColumnSheet(selectedColumn, clazz, pageBean == null ? null : pageBean.getFlipper(),
|
||||
pageBean == null ? null : FilterNodeBean.createFilterNode(pageBean.getBean()));
|
||||
}
|
||||
|
||||
/**
|
||||
* 查询符合过滤条件记录的某个字段Sheet集合 <br>
|
||||
* 等价SQL: SELECT {selectedColumn} FROM {table} WHERE {filter node} ORDER BY {flipper.sort} LIMIT {flipper.limit} <br>
|
||||
@@ -2694,10 +2716,30 @@ public interface DataSource extends Resourcable {
|
||||
*
|
||||
* @return 字段值的集合CompletableFuture
|
||||
*/
|
||||
default <T, V extends Serializable> CompletableFuture<Sheet<V>> queryColumnSheetAsync(final String selectedColumn, final Class<T> clazz, final Flipper flipper, final FilterBean bean) {
|
||||
default <T, V extends Serializable> CompletableFuture<Sheet<V>> queryColumnSheetAsync(final String selectedColumn, final Class<T> clazz,
|
||||
final Flipper flipper, final FilterBean bean) {
|
||||
return queryColumnSheetAsync(selectedColumn, clazz, flipper, FilterNodeBean.createFilterNode(bean));
|
||||
}
|
||||
|
||||
/**
|
||||
* 查询符合过滤条件记录的某个字段Sheet集合 <br>
|
||||
* 等价SQL: SELECT {selectedColumn} FROM {table} WHERE {filter node} ORDER BY {flipper.sort} LIMIT {flipper.limit} <br>
|
||||
*
|
||||
* @param <T> Entity泛型
|
||||
* @param <V> 字段类型
|
||||
* @param <F> 过滤类型
|
||||
* @param selectedColumn 指定字段
|
||||
* @param clazz Entity类
|
||||
* @param pageBean 过滤翻页条件
|
||||
*
|
||||
* @return 字段值的集合CompletableFuture
|
||||
*/
|
||||
default <T, V extends Serializable, F extends FilterBean> CompletableFuture<Sheet<V>> queryColumnSheetAsync(final String selectedColumn,
|
||||
final Class<T> clazz, final PageBean<F> pageBean) {
|
||||
return queryColumnSheetAsync(selectedColumn, clazz, pageBean == null ? null : pageBean.getFlipper(),
|
||||
pageBean == null ? null : FilterNodeBean.createFilterNode(pageBean.getBean()));
|
||||
}
|
||||
|
||||
/**
|
||||
* 查询符合过滤条件记录的某个字段Sheet集合 <br>
|
||||
* 等价SQL: SELECT {selectedColumn} FROM {table} WHERE {filter bean} ORDER BY {flipper.sort} LIMIT {flipper.limit} <br>
|
||||
@@ -2711,7 +2753,8 @@ public interface DataSource extends Resourcable {
|
||||
*
|
||||
* @return 字段值的集合
|
||||
*/
|
||||
public <T, V extends Serializable> Sheet<V> queryColumnSheet(final String selectedColumn, final Class<T> clazz, final Flipper flipper, final FilterNode node);
|
||||
public <T, V extends Serializable> Sheet<V> queryColumnSheet(final String selectedColumn, final Class<T> clazz,
|
||||
final Flipper flipper, final FilterNode node);
|
||||
|
||||
/**
|
||||
* 查询符合过滤条件记录的某个字段Sheet集合 <br>
|
||||
@@ -2726,7 +2769,8 @@ public interface DataSource extends Resourcable {
|
||||
*
|
||||
* @return 字段值的集合CompletableFuture
|
||||
*/
|
||||
public <T, V extends Serializable> CompletableFuture<Sheet<V>> queryColumnSheetAsync(final String selectedColumn, final Class<T> clazz, final Flipper flipper, final FilterNode node);
|
||||
public <T, V extends Serializable> CompletableFuture<Sheet<V>> queryColumnSheetAsync(final String selectedColumn, final Class<T> clazz,
|
||||
final Flipper flipper, final FilterNode node);
|
||||
|
||||
/**
|
||||
* 查询符合过滤条件记录的List转Map集合, key=主键值, value=Entity对象 <br>
|
||||
@@ -3624,6 +3668,22 @@ public interface DataSource extends Resourcable {
|
||||
return querySheet(clazz, (SelectColumn) null, flipper, FilterNodeBean.createFilterNode(bean));
|
||||
}
|
||||
|
||||
/**
|
||||
* 查询符合过滤条件记录的Sheet集合 <br>
|
||||
* 等价SQL: SELECT * FROM {table} WHERE {filter bean} ORDER BY {flipper.sort} LIMIT {flipper.limit} <br>
|
||||
*
|
||||
* @param <T> Entity泛型
|
||||
* @param <F> 过滤类型
|
||||
* @param clazz Entity类
|
||||
* @param pageBean 过滤翻页条件
|
||||
*
|
||||
* @return Entity的集合
|
||||
*/
|
||||
default <T, F extends FilterBean> Sheet<T> querySheet(final Class<T> clazz, final PageBean<F> pageBean) {
|
||||
return querySheet(clazz, (SelectColumn) null, pageBean == null ? null : pageBean.getFlipper(),
|
||||
pageBean == null ? null : FilterNodeBean.createFilterNode(pageBean.getBean()));
|
||||
}
|
||||
|
||||
/**
|
||||
* 查询符合过滤条件记录的Sheet集合 <br>
|
||||
* 等价SQL: SELECT * FROM {table} WHERE {filter bean} ORDER BY {flipper.sort} LIMIT {flipper.limit} <br>
|
||||
@@ -3639,6 +3699,22 @@ public interface DataSource extends Resourcable {
|
||||
return querySheetAsync(clazz, (SelectColumn) null, flipper, FilterNodeBean.createFilterNode(bean));
|
||||
}
|
||||
|
||||
/**
|
||||
* 查询符合过滤条件记录的Sheet集合 <br>
|
||||
* 等价SQL: SELECT * FROM {table} WHERE {filter bean} ORDER BY {flipper.sort} LIMIT {flipper.limit} <br>
|
||||
*
|
||||
* @param <T> Entity泛型
|
||||
* @param <F> 过滤类型
|
||||
* @param clazz Entity类
|
||||
* @param pageBean 过滤翻页条件
|
||||
*
|
||||
* @return Entity的集合CompletableFuture
|
||||
*/
|
||||
default <T, F extends FilterBean> CompletableFuture<Sheet<T>> querySheetAsync(final Class<T> clazz, final PageBean<F> pageBean) {
|
||||
return querySheetAsync(clazz, (SelectColumn) null, pageBean == null ? null : pageBean.getFlipper(),
|
||||
pageBean == null ? null : FilterNodeBean.createFilterNode(pageBean.getBean()));
|
||||
}
|
||||
|
||||
/**
|
||||
* 查询符合过滤条件记录的Sheet集合 <br>
|
||||
* 等价SQL: SELECT * FROM {table} WHERE {filter node} ORDER BY {flipper.sort} LIMIT {flipper.limit} <br>
|
||||
@@ -3685,6 +3761,23 @@ public interface DataSource extends Resourcable {
|
||||
return querySheet(clazz, selects, flipper, FilterNodeBean.createFilterNode(bean));
|
||||
}
|
||||
|
||||
/**
|
||||
* 查询符合过滤条件记录的Sheet集合 <br>
|
||||
* 等价SQL: SELECT {column1},{column2}, ··· FROM {table} WHERE {filter bean} ORDER BY {flipper.sort} LIMIT {flipper.limit} <br>
|
||||
*
|
||||
* @param <T> Entity泛型
|
||||
* @param <F> 过滤类型
|
||||
* @param clazz Entity类
|
||||
* @param selects 指定字段
|
||||
* @param pageBean 过滤翻页条件
|
||||
*
|
||||
* @return Entity的集合
|
||||
*/
|
||||
default <T, F extends FilterBean> Sheet<T> querySheet(final Class<T> clazz, final SelectColumn selects, final PageBean<F> pageBean) {
|
||||
return querySheet(clazz, selects, pageBean == null ? null : pageBean.getFlipper(),
|
||||
pageBean == null ? null : FilterNodeBean.createFilterNode(pageBean.getBean()));
|
||||
}
|
||||
|
||||
/**
|
||||
* 查询符合过滤条件记录的Sheet集合 <br>
|
||||
* 等价SQL: SELECT {column1},{column2}, ··· FROM {table} WHERE {filter bean} ORDER BY {flipper.sort} LIMIT {flipper.limit} <br>
|
||||
@@ -3701,6 +3794,23 @@ public interface DataSource extends Resourcable {
|
||||
return querySheetAsync(clazz, selects, flipper, FilterNodeBean.createFilterNode(bean));
|
||||
}
|
||||
|
||||
/**
|
||||
* 查询符合过滤条件记录的Sheet集合 <br>
|
||||
* 等价SQL: SELECT {column1},{column2}, ··· FROM {table} WHERE {filter bean} ORDER BY {flipper.sort} LIMIT {flipper.limit} <br>
|
||||
*
|
||||
* @param <T> Entity泛型
|
||||
* @param <F> 过滤类型
|
||||
* @param clazz Entity类
|
||||
* @param selects 指定字段
|
||||
* @param pageBean 过滤翻页条件
|
||||
*
|
||||
* @return Entity的集合CompletableFuture
|
||||
*/
|
||||
default <T, F extends FilterBean> CompletableFuture<Sheet<T>> querySheetAsync(final Class<T> clazz, final SelectColumn selects, final PageBean<F> pageBean) {
|
||||
return querySheetAsync(clazz, selects, pageBean == null ? null : pageBean.getFlipper(),
|
||||
pageBean == null ? null : FilterNodeBean.createFilterNode(pageBean.getBean()));
|
||||
}
|
||||
|
||||
/**
|
||||
* 查询符合过滤条件记录的Sheet集合 <br>
|
||||
* 等价SQL: SELECT {column1},{column2}, ··· FROM {table} WHERE {filter node} ORDER BY {flipper.sort} LIMIT {flipper.limit} <br>
|
||||
|
||||
@@ -10,11 +10,11 @@ import java.util.Map;
|
||||
import java.util.Set;
|
||||
import java.util.concurrent.CompletableFuture;
|
||||
import java.util.stream.Stream;
|
||||
import org.redkale.annotation.ClassDepends;
|
||||
import org.redkale.util.LambdaFunction;
|
||||
import org.redkale.util.LambdaSupplier;
|
||||
import org.redkale.util.SelectColumn;
|
||||
import org.redkale.util.Sheet;
|
||||
import org.redkale.annotation.ClassDepends;
|
||||
|
||||
/**
|
||||
* 类似Mybatis的Mapper接口类, 接口系列和DataSource相似度高 <br>
|
||||
@@ -3204,6 +3204,21 @@ public interface DataSqlMapper<T> {
|
||||
return dataSource().querySheet(entityType(), flipper, bean);
|
||||
}
|
||||
|
||||
/**
|
||||
* 查询符合过滤条件记录的Sheet集合 <br>
|
||||
* 等价SQL: SELECT * FROM {table} WHERE {filter bean} ORDER BY {flipper.sort} LIMIT {flipper.limit} <br>
|
||||
*
|
||||
*
|
||||
*
|
||||
* @param <F> 过滤类型
|
||||
* @param pageBean 过滤翻页条件
|
||||
*
|
||||
* @return Entity的集合
|
||||
*/
|
||||
default <F extends FilterBean> Sheet<T> querySheet(PageBean<F> pageBean) {
|
||||
return dataSource().querySheet(entityType(), pageBean);
|
||||
}
|
||||
|
||||
/**
|
||||
* 查询符合过滤条件记录的Sheet集合 <br>
|
||||
* 等价SQL: SELECT * FROM {table} WHERE {filter bean} ORDER BY {flipper.sort} LIMIT {flipper.limit} <br>
|
||||
@@ -3219,6 +3234,21 @@ public interface DataSqlMapper<T> {
|
||||
return dataSource().querySheetAsync(entityType(), flipper, bean);
|
||||
}
|
||||
|
||||
/**
|
||||
* 查询符合过滤条件记录的Sheet集合 <br>
|
||||
* 等价SQL: SELECT * FROM {table} WHERE {filter bean} ORDER BY {flipper.sort} LIMIT {flipper.limit} <br>
|
||||
*
|
||||
*
|
||||
*
|
||||
* @param <F> 过滤类型
|
||||
* @param pageBean 过滤翻页条件
|
||||
*
|
||||
* @return Entity的集合
|
||||
*/
|
||||
default <F extends FilterBean> CompletableFuture<Sheet<T>> querySheetAsync(PageBean<F> pageBean) {
|
||||
return dataSource().querySheetAsync(entityType(), pageBean);
|
||||
}
|
||||
|
||||
/**
|
||||
* 查询符合过滤条件记录的Sheet集合 <br>
|
||||
* 等价SQL: SELECT * FROM {table} WHERE {filter node} ORDER BY {flipper.sort} LIMIT {flipper.limit} <br>
|
||||
@@ -3265,6 +3295,21 @@ public interface DataSqlMapper<T> {
|
||||
return dataSource().querySheet(entityType(), selects, flipper, bean);
|
||||
}
|
||||
|
||||
/**
|
||||
* 查询符合过滤条件记录的Sheet集合 <br>
|
||||
* 等价SQL: SELECT {column1},{column2}, ··· FROM {table} WHERE {filter bean} ORDER BY {flipper.sort} LIMIT {flipper.limit} <br>
|
||||
*
|
||||
*
|
||||
* @param <F> 过滤类型
|
||||
* @param selects 指定字段
|
||||
* @param pageBean 过滤翻页条件
|
||||
*
|
||||
* @return Entity的集合
|
||||
*/
|
||||
default <F extends FilterBean> Sheet<T> querySheet(SelectColumn selects, PageBean<F> pageBean) {
|
||||
return dataSource().querySheet(entityType(), selects, pageBean);
|
||||
}
|
||||
|
||||
/**
|
||||
* 查询符合过滤条件记录的Sheet集合 <br>
|
||||
* 等价SQL: SELECT {column1},{column2}, ··· FROM {table} WHERE {filter bean} ORDER BY {flipper.sort} LIMIT {flipper.limit} <br>
|
||||
@@ -3281,6 +3326,21 @@ public interface DataSqlMapper<T> {
|
||||
return dataSource().querySheetAsync(entityType(), selects, flipper, bean);
|
||||
}
|
||||
|
||||
/**
|
||||
* 查询符合过滤条件记录的Sheet集合 <br>
|
||||
* 等价SQL: SELECT {column1},{column2}, ··· FROM {table} WHERE {filter bean} ORDER BY {flipper.sort} LIMIT {flipper.limit} <br>
|
||||
*
|
||||
*
|
||||
* @param <F> 过滤类型
|
||||
* @param selects 指定字段
|
||||
* @param pageBean 过滤翻页条件
|
||||
*
|
||||
* @return Entity的集合
|
||||
*/
|
||||
default <F extends FilterBean> CompletableFuture<Sheet<T>> querySheetAsync(SelectColumn selects, PageBean<F> pageBean) {
|
||||
return dataSource().querySheetAsync(entityType(), selects, pageBean);
|
||||
}
|
||||
|
||||
/**
|
||||
* 查询符合过滤条件记录的Sheet集合 <br>
|
||||
* 等价SQL: SELECT {column1},{column2}, ··· FROM {table} WHERE {filter node} ORDER BY {flipper.sort} LIMIT {flipper.limit} <br>
|
||||
|
||||
@@ -7,9 +7,9 @@ import java.io.Serializable;
|
||||
import java.util.*;
|
||||
import java.util.concurrent.CompletableFuture;
|
||||
import java.util.function.*;
|
||||
import org.redkale.annotation.ClassDepends;
|
||||
import static org.redkale.source.DataResultSet.formatColumnValue;
|
||||
import org.redkale.util.*;
|
||||
import org.redkale.annotation.ClassDepends;
|
||||
|
||||
/**
|
||||
*
|
||||
@@ -269,7 +269,7 @@ public interface DataSqlSource extends DataSource {
|
||||
@ClassDepends
|
||||
default <V> CompletableFuture<List<V>> nativeQueryListAsync(Class<V> type, String sql, Map<String, Object> params) {
|
||||
return nativeQueryAsync(sql, rset -> {
|
||||
if (EntityBuilder.isSimpleType(type)) {
|
||||
if (EntityBuilder.isSimpleType(type)) {
|
||||
List<V> list = new ArrayList<>();
|
||||
while (rset.next()) {
|
||||
list.add(rset.wasNull() ? null : (V) formatColumnValue(type, rset.getObject(1)));
|
||||
@@ -387,4 +387,13 @@ public interface DataSqlSource extends DataSource {
|
||||
return nativeQuerySheetAsync(type, sql, flipper, (Map<String, Object>) Copier.copyToMap(bean, Copier.OPTION_SKIP_NULL_VALUE));
|
||||
}
|
||||
|
||||
default <V> Sheet<V> nativeQuerySheet(Class<V> type, String sql, PageBean pageBean) {
|
||||
return nativeQuerySheet(type, sql, pageBean == null ? null : pageBean.getFlipper(),
|
||||
pageBean == null ? null : (Map<String, Object>) Copier.copyToMap(pageBean.getBean(), Copier.OPTION_SKIP_NULL_VALUE));
|
||||
}
|
||||
|
||||
default <V> CompletableFuture<Sheet<V>> nativeQuerySheetAsync(Class<V> type, String sql, PageBean pageBean) {
|
||||
return nativeQuerySheetAsync(type, sql, pageBean == null ? null : pageBean.getFlipper(),
|
||||
pageBean == null ? null : (Map<String, Object>) Copier.copyToMap(pageBean.getBean(), Copier.OPTION_SKIP_NULL_VALUE));
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user