|
@@ -20,30 +20,38 @@ import java.util.function.Function;
|
|
|
*/
|
|
|
public interface IServicePlus<T, K> extends IService<T> {
|
|
|
|
|
|
- K getVoById(Serializable id, CopyOptions copyOptions, Class<K> kClass);
|
|
|
-
|
|
|
- default K getVoById(Serializable id, CopyOptions copyOptions) {
|
|
|
- return getVoById(id, copyOptions, null);
|
|
|
- }
|
|
|
+ /**
|
|
|
+ * @param id 主键id
|
|
|
+ * @param copyOptions copy条件
|
|
|
+ * @return K对象
|
|
|
+ */
|
|
|
+ K getVoById(Serializable id, CopyOptions copyOptions);
|
|
|
|
|
|
default K getVoById(Serializable id) {
|
|
|
return getVoById(id, new CopyOptions());
|
|
|
}
|
|
|
|
|
|
+ /**
|
|
|
+ * @param convertor 自定义转换器
|
|
|
+ */
|
|
|
default K getVoById(Serializable id, Function<T, K> convertor) {
|
|
|
return convertor.apply(getById(id));
|
|
|
}
|
|
|
|
|
|
- List<K> listVoByIds(Collection<? extends Serializable> idList, CopyOptions copyOptions, Class<K> kClass);
|
|
|
-
|
|
|
- default List<K> listVoByIds(Collection<? extends Serializable> idList, CopyOptions copyOptions) {
|
|
|
- return listVoByIds(idList, copyOptions, null);
|
|
|
- }
|
|
|
+ /**
|
|
|
+ * @param idList id列表
|
|
|
+ * @param copyOptions copy条件
|
|
|
+ * @return K对象
|
|
|
+ */
|
|
|
+ List<K> listVoByIds(Collection<? extends Serializable> idList, CopyOptions copyOptions);
|
|
|
|
|
|
default List<K> listVoByIds(Collection<? extends Serializable> idList) {
|
|
|
return listVoByIds(idList, new CopyOptions());
|
|
|
}
|
|
|
|
|
|
+ /**
|
|
|
+ * @param convertor 自定义转换器
|
|
|
+ */
|
|
|
default List<K> listVoByIds(Collection<? extends Serializable> idList,
|
|
|
Function<Collection<T>, List<K>> convertor) {
|
|
|
List<T> list = getBaseMapper().selectBatchIds(idList);
|
|
@@ -53,17 +61,20 @@ public interface IServicePlus<T, K> extends IService<T> {
|
|
|
return convertor.apply(list);
|
|
|
}
|
|
|
|
|
|
- List<K> listVoByMap(Map<String, Object> columnMap, CopyOptions copyOptions, Class<K> kClass);
|
|
|
-
|
|
|
- default List<K> listVoByMap(Map<String, Object> columnMap, CopyOptions copyOptions) {
|
|
|
- return listVoByMap(columnMap, copyOptions, null);
|
|
|
- }
|
|
|
+ /**
|
|
|
+ * @param columnMap 表字段 map 对象
|
|
|
+ * @param copyOptions copy条件
|
|
|
+ * @return K对象
|
|
|
+ */
|
|
|
+ List<K> listVoByMap(Map<String, Object> columnMap, CopyOptions copyOptions);
|
|
|
|
|
|
default List<K> listVoByMap(Map<String, Object> columnMap) {
|
|
|
return listVoByMap(columnMap, new CopyOptions());
|
|
|
}
|
|
|
|
|
|
-
|
|
|
+ /**
|
|
|
+ * @param convertor 自定义转换器
|
|
|
+ */
|
|
|
default List<K> listVoByMap(Map<String, Object> columnMap,
|
|
|
Function<Collection<T>, List<K>> convertor) {
|
|
|
List<T> list = getBaseMapper().selectByMap(columnMap);
|
|
@@ -73,30 +84,38 @@ public interface IServicePlus<T, K> extends IService<T> {
|
|
|
return convertor.apply(list);
|
|
|
}
|
|
|
|
|
|
- K getVoOne(Wrapper<T> queryWrapper, CopyOptions copyOptions, Class<K> kClass);
|
|
|
-
|
|
|
- default K getVoOne(Wrapper<T> queryWrapper, CopyOptions copyOptions) {
|
|
|
- return getVoOne(queryWrapper, copyOptions, null);
|
|
|
- }
|
|
|
+ /**
|
|
|
+ * @param queryWrapper 查询条件
|
|
|
+ * @param copyOptions copy条件
|
|
|
+ * @return K对象
|
|
|
+ */
|
|
|
+ K getVoOne(Wrapper<T> queryWrapper, CopyOptions copyOptions);
|
|
|
|
|
|
default K getVoOne(Wrapper<T> queryWrapper) {
|
|
|
return getVoOne(queryWrapper, new CopyOptions());
|
|
|
}
|
|
|
|
|
|
+ /**
|
|
|
+ * @param convertor 自定义转换器
|
|
|
+ */
|
|
|
default K getVoOne(Wrapper<T> queryWrapper, Function<T, K> convertor) {
|
|
|
return convertor.apply(getOne(queryWrapper, true));
|
|
|
}
|
|
|
|
|
|
- List<K> listVo(Wrapper<T> queryWrapper, CopyOptions copyOptions, Class<K> kClass);
|
|
|
-
|
|
|
- default List<K> listVo(Wrapper<T> queryWrapper, CopyOptions copyOptions) {
|
|
|
- return listVo(queryWrapper, copyOptions, null);
|
|
|
- }
|
|
|
+ /**
|
|
|
+ * @param queryWrapper 查询条件
|
|
|
+ * @param copyOptions copy条件
|
|
|
+ * @return K对象
|
|
|
+ */
|
|
|
+ List<K> listVo(Wrapper<T> queryWrapper, CopyOptions copyOptions);
|
|
|
|
|
|
default List<K> listVo(Wrapper<T> queryWrapper) {
|
|
|
return listVo(queryWrapper, new CopyOptions());
|
|
|
}
|
|
|
|
|
|
+ /**
|
|
|
+ * @param convertor 自定义转换器
|
|
|
+ */
|
|
|
default List<K> listVo(Wrapper<T> queryWrapper, Function<Collection<T>, List<K>> convertor) {
|
|
|
List<T> list = getBaseMapper().selectList(queryWrapper);
|
|
|
if (list == null) {
|
|
@@ -109,20 +128,28 @@ public interface IServicePlus<T, K> extends IService<T> {
|
|
|
return listVo(Wrappers.emptyWrapper());
|
|
|
}
|
|
|
|
|
|
+ /**
|
|
|
+ * @param convertor 自定义转换器
|
|
|
+ */
|
|
|
default List<K> listVo(Function<Collection<T>, List<K>> convertor) {
|
|
|
return listVo(Wrappers.emptyWrapper(), convertor);
|
|
|
}
|
|
|
|
|
|
- PagePlus<T, K> pageVo(PagePlus<T, K> page, Wrapper<T> queryWrapper, CopyOptions copyOptions, Class<K> kClass);
|
|
|
-
|
|
|
- default PagePlus<T, K> pageVo(PagePlus<T, K> page, Wrapper<T> queryWrapper, CopyOptions copyOptions) {
|
|
|
- return pageVo(page, queryWrapper, copyOptions, null);
|
|
|
- }
|
|
|
+ /**
|
|
|
+ * @param page 分页对象
|
|
|
+ * @param queryWrapper 查询条件
|
|
|
+ * @param copyOptions copy条件
|
|
|
+ * @return K对象
|
|
|
+ */
|
|
|
+ PagePlus<T, K> pageVo(PagePlus<T, K> page, Wrapper<T> queryWrapper, CopyOptions copyOptions);
|
|
|
|
|
|
default PagePlus<T, K> pageVo(PagePlus<T, K> page, Wrapper<T> queryWrapper) {
|
|
|
return pageVo(page, queryWrapper, new CopyOptions());
|
|
|
}
|
|
|
|
|
|
+ /**
|
|
|
+ * @param convertor 自定义转换器
|
|
|
+ */
|
|
|
default PagePlus<T, K> pageVo(PagePlus<T, K> page, Wrapper<T> queryWrapper,
|
|
|
Function<Collection<T>, List<K>> convertor) {
|
|
|
PagePlus<T, K> result = getBaseMapper().selectPage(page, queryWrapper);
|
|
@@ -133,6 +160,9 @@ public interface IServicePlus<T, K> extends IService<T> {
|
|
|
return pageVo(page, Wrappers.emptyWrapper());
|
|
|
}
|
|
|
|
|
|
+ /**
|
|
|
+ * @param convertor 自定义转换器
|
|
|
+ */
|
|
|
default PagePlus<T, K> pageVo(PagePlus<T, K> page, Function<Collection<T>, List<K>> convertor) {
|
|
|
return pageVo(page, Wrappers.emptyWrapper(), convertor);
|
|
|
}
|