hmy пре 5 месеци
родитељ
комит
a5a51fb162

+ 60 - 60
src/main/java/cn/flowbb/framework/mybatis/core/mapper/BaseMapperX.java

@@ -17,6 +17,7 @@ import com.baomidou.mybatisplus.core.metadata.TableInfo;
 import com.baomidou.mybatisplus.core.toolkit.ClassUtils;
 import com.baomidou.mybatisplus.core.toolkit.CollectionUtils;
 import com.baomidou.mybatisplus.core.toolkit.Constants;
+import com.baomidou.mybatisplus.core.toolkit.Wrappers;
 import com.baomidou.mybatisplus.extension.toolkit.Db;
 import com.baomidou.mybatisplus.extension.toolkit.SqlHelper;
 import com.github.yulichang.base.MPJBaseMapper;
@@ -37,51 +38,6 @@ import cn.flowbb.framework.mybatis.core.util.MyBatisUtils;
  */
 public interface BaseMapperX<T> extends MPJBaseMapper<T> {
 
-	default PageResult<T> selectPage(SortablePageParam pageParam, @Param("ew") Wrapper<T> queryWrapper) {
-
-		return selectPage(pageParam, pageParam.getSortingFields(), queryWrapper);
-	}
-
-	default PageResult<T> selectPage(PageParam pageParam, @Param("ew") Wrapper<T> queryWrapper) {
-		return selectPage(pageParam, null, queryWrapper);
-	}
-
-	default PageResult<T> selectPage(PageParam pageParam, Collection<SortingField> sortingFields,
-			@Param("ew") Wrapper<T> queryWrapper) {
-		// 特殊:不分页,直接查询全部
-		if (PageParam.PAGE_SIZE_NONE.equals(pageParam.getPageSize())) {
-			List<T> list = selectList(queryWrapper);
-			return new PageResult<>(list, (long) list.size());
-		}
-
-		// MyBatis Plus 查询
-		IPage<T> mpPage = MyBatisUtils.buildPage(pageParam, sortingFields);
-		selectPage(mpPage, queryWrapper);
-		// 转换返回
-		return new PageResult<>(mpPage.getRecords(), mpPage.getTotal());
-	}
-
-	default <D> PageResult<D> selectJoinPage(PageParam pageParam, Class<D> clazz, MPJLambdaWrapper<T> lambdaWrapper) {
-		// 特殊:不分页,直接查询全部
-		if (PageParam.PAGE_SIZE_NONE.equals(pageParam.getPageNo())) {
-			List<D> list = selectJoinList(clazz, lambdaWrapper);
-			return new PageResult<>(list, (long) list.size());
-		}
-		// MyBatis Plus Join 查询
-		IPage<D> mpPage = MyBatisUtils.buildPage(pageParam);
-		mpPage = selectJoinPage(mpPage, clazz, lambdaWrapper);
-		// 转换返回
-		return new PageResult<>(mpPage.getRecords(), mpPage.getTotal());
-	}
-
-	default <DTO> PageResult<DTO> selectJoinPage(PageParam pageParam, Class<DTO> resultTypeClass,
-			MPJBaseJoin<T> joinQueryWrapper) {
-		IPage<DTO> mpPage = MyBatisUtils.buildPage(pageParam);
-		selectJoinPage(mpPage, resultTypeClass, joinQueryWrapper);
-		// 转换返回
-		return new PageResult<>(mpPage.getRecords(), mpPage.getTotal());
-	}
-
 	// -按照字段查询-----这是eq得查询
 	default T selectOne(String field, Object value) {
 		return selectOne(new QueryWrapper<T>().eq(field, value));
@@ -198,13 +154,34 @@ public interface BaseMapperX<T> extends MPJBaseMapper<T> {
 
 	// 查询selectCount----------------end----------------------
 
+	// like 查询
+	default List<T> like(String field, Object value) {
+		return selectList(new QueryWrapper<T>().like(field, value));
+	}
+
+	default List<T> likeFirst(String field1, Object value1, String field2, Object value2) {
+		return selectList(new QueryWrapper<T>().like(field2, value2).eq(field2, value2));
+	}
+
+	default List<T> likeFirst(String field1, Object value1, String field2, Collection<?> value2) {
+		return selectList(new QueryWrapper<T>().like(field1, value1).in(field2, value2));
+	}
+
+	default List<T> likeLast(String field1, Object value1, String field2, Object value2) {
+		return selectList(new QueryWrapper<T>().eq(field1, value1).like(field2, value2));
+	}
+
+	default List<T> likeLast(String field1, Collection<?> value1, String field2, Object value2) {
+		return selectList(new QueryWrapper<T>().in(field2, value2).like(field2, value2));
+	}
+
 	// 查询selectList----------------start----------------------
 	default List<T> selectList() {
-		return selectList(new QueryWrapper<>());
+		return selectList(Wrappers.emptyWrapper());
 	}
 
 	default List<T> selectList(String field, Object value) {
-		return selectList(new QueryWrapper<T>().eq(field, value));
+		return selectList();
 	}
 
 	default List<T> selectList(String field, Collection<?> value) {
@@ -313,36 +290,59 @@ public interface BaseMapperX<T> extends MPJBaseMapper<T> {
 		return delete(new QueryWrapper<T>().in(field1, value1).eq(field2, value2).eq(field3, value3));
 	}
 
+	default int deleteAll() {
+
+		return delete(Wrappers.emptyWrapper());
+
+	}
+
 	// 更新操作开始
 	default int update(String field, Object value, String setField, Object setValue) {
 		UpdateWrapper<T> entity = new UpdateWrapper<>();
-		entity.set(setField, setValue);
 		entity.eq(field, value);
+		entity.set(setField, setValue);
 		return update(entity);
 	}
 
-	default int update(String field, Object value, String setField1, Object setValue1, String setField2,
-			Object setValue2) {
+	default int update(String field, Collection<?> value, String setField, Object setValue) {
 		UpdateWrapper<T> entity = new UpdateWrapper<>();
-		entity.set(setField1, setValue1);
-		entity.set(setField2, setValue2);
-		entity.eq(field, value);
+		entity.in(field, value);
+		entity.set(setField, setValue);
 		return update(entity);
 	}
 
-	default int update(String field, Collection<?> value, String setField, Object setValue) {
+	default int update(String field1, Object value1, String field2, Object value2, String setField, Object setValue) {
 		UpdateWrapper<T> entity = new UpdateWrapper<>();
+		entity.eq(field1, value1);
+		entity.eq(field2, value2);
 		entity.set(setField, setValue);
-		entity.in(field, value);
 		return update(entity);
 	}
 
-	default int update(String field, Collection<?> value, String setField1, Object setValue1, String setField2,
-			Object setValue2) {
+	default int update(String field1, Object value1, String field2, Collection<?> value2, String setField,
+			Object setValue) {
 		UpdateWrapper<T> entity = new UpdateWrapper<>();
-		entity.set(setField1, setValue1);
-		entity.set(setField2, setValue2);
-		entity.in(field, value);
+		entity.eq(field1, value1);
+		entity.in(field2, value2);
+		entity.set(setField, setValue);
+		return update(entity);
+	}
+
+	default int update(String field1, Collection<?> value1, String field2, Object value2, String setField,
+			Object setValue) {
+		UpdateWrapper<T> entity = new UpdateWrapper<>();
+		entity.in(field1, value1);
+		entity.eq(field2, value2);
+		entity.set(setField, setValue);
+		return update(entity);
+	}
+
+	default int update(String field1, Collection<?> value1, String field2, Collection<?> value2, String setField,
+			Object setValue) {
+		UpdateWrapper<T> entity = new UpdateWrapper<>();
+		entity.in(field1, value1);
+		entity.in(field2, value2);
+		entity.set(setField, setValue);
 		return update(entity);
 	}
 	// 更新操作结束

+ 53 - 0
src/main/java/cn/flowbb/framework/mybatis/core/mapper/PlusBaseMapperX.java

@@ -9,6 +9,8 @@ import java.util.Map;
 import java.util.Objects;
 import java.util.function.Function;
 import java.util.stream.Collectors;
+
+import org.apache.ibatis.annotations.Param;
 import org.apache.ibatis.logging.Log;
 import org.apache.ibatis.logging.LogFactory;
 import org.apache.ibatis.reflection.property.PropertyNamer;
@@ -22,8 +24,15 @@ import com.baomidou.mybatisplus.core.toolkit.support.ColumnCache;
 import com.baomidou.mybatisplus.core.toolkit.support.LambdaMeta;
 import com.baomidou.mybatisplus.core.toolkit.support.SFunction;
 import com.baomidou.mybatisplus.extension.toolkit.SqlHelper;
+import com.github.yulichang.interfaces.MPJBaseJoin;
 import com.github.yulichang.wrapper.MPJLambdaWrapper;
 
+import cn.flowbb.framework.mybatis.common.pojo.PageParam;
+import cn.flowbb.framework.mybatis.common.pojo.PageResult;
+import cn.flowbb.framework.mybatis.common.pojo.SortablePageParam;
+import cn.flowbb.framework.mybatis.common.pojo.SortingField;
+import cn.flowbb.framework.mybatis.core.util.MyBatisUtils;
+
 /**
  * 对实体类的操作
  * 
@@ -400,4 +409,48 @@ public interface PlusBaseMapperX<T> extends BaseMapperX<T> {
 		return this.selectJoinMapsPage(page, wrapper);
 	}
 
+	default PageResult<T> selectPage(SortablePageParam pageParam, @Param("ew") Wrapper<T> queryWrapper) {
+
+		return selectPage(pageParam, pageParam.getSortingFields(), queryWrapper);
+	}
+
+	default PageResult<T> selectPage(PageParam pageParam, @Param("ew") Wrapper<T> queryWrapper) {
+		return selectPage(pageParam, null, queryWrapper);
+	}
+
+	default PageResult<T> selectPage(PageParam pageParam, Collection<SortingField> sortingFields,
+			@Param("ew") Wrapper<T> queryWrapper) {
+		// 特殊:不分页,直接查询全部
+		if (PageParam.PAGE_SIZE_NONE.equals(pageParam.getPageSize())) {
+			List<T> list = selectList(queryWrapper);
+			return new PageResult<>(list, (long) list.size());
+		}
+
+		// MyBatis Plus 查询
+		IPage<T> mpPage = MyBatisUtils.buildPage(pageParam, sortingFields);
+		selectPage(mpPage, queryWrapper);
+		// 转换返回
+		return new PageResult<>(mpPage.getRecords(), mpPage.getTotal());
+	}
+
+	default <D> PageResult<D> selectJoinPage(PageParam pageParam, Class<D> clazz, MPJLambdaWrapper<T> lambdaWrapper) {
+		// 特殊:不分页,直接查询全部
+		if (PageParam.PAGE_SIZE_NONE.equals(pageParam.getPageNo())) {
+			List<D> list = selectJoinList(clazz, lambdaWrapper);
+			return new PageResult<>(list, (long) list.size());
+		}
+		// MyBatis Plus Join 查询
+		IPage<D> mpPage = MyBatisUtils.buildPage(pageParam);
+		mpPage = selectJoinPage(mpPage, clazz, lambdaWrapper);
+		// 转换返回
+		return new PageResult<>(mpPage.getRecords(), mpPage.getTotal());
+	}
+
+	default <DTO> PageResult<DTO> selectJoinPage(PageParam pageParam, Class<DTO> resultTypeClass,
+			MPJBaseJoin<T> joinQueryWrapper) {
+		IPage<DTO> mpPage = MyBatisUtils.buildPage(pageParam);
+		selectJoinPage(mpPage, resultTypeClass, joinQueryWrapper);
+		// 转换返回
+		return new PageResult<>(mpPage.getRecords(), mpPage.getTotal());
+	}
 }

+ 164 - 31
src/main/java/cn/flowbb/framework/mybatis/core/service/AbstractService.java

@@ -7,7 +7,9 @@ import java.util.Map;
 import com.baomidou.mybatisplus.core.conditions.Wrapper;
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
 import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.core.toolkit.Wrappers;
 import com.baomidou.mybatisplus.core.toolkit.support.SFunction;
 import com.github.yulichang.base.MPJBaseService;
 import com.github.yulichang.wrapper.MPJLambdaWrapper;
@@ -158,34 +160,63 @@ public interface AbstractService<T> extends MPJBaseService<T> {
 	}
 
 	// 查询得到一个结果得值--------------start----------------------------------------------
-	default T getOne(String field, Object value) {
-		return getBaseMapper().selectOne(new QueryWrapper<T>().eq(field, value));
+	// -按照字段查询-----这是eq得查询
+	default T selectOne(String field, Object value) {
+		return getBaseMapper().selectOne(field, value);
 	}
 
-	default T getOne(SFunction<T, ?> field, Object value) {
-		return getBaseMapper().selectOne(new LambdaQueryWrapper<T>().eq(field, value));
+	default T selectOne(String field, Collection<?> value) {
+		return getBaseMapper().selectOne(field, value);
 	}
 
-	default T getOne(String field1, Object value1, String field2, Object value2) {
-		return getBaseMapper().selectOne(new QueryWrapper<T>().eq(field1, value1).eq(field2, value2));
+	default T selectOne(String field1, Object value1, String field2, Object value2) {
+		return getBaseMapper().selectOne(field1, value1, field2, value2);
 	}
 
-	default T getOne(SFunction<T, ?> field1, Object value1, SFunction<T, ?> field2, Object value2) {
-		return getBaseMapper().selectOne(new LambdaQueryWrapper<T>().eq(field1, value1).eq(field2, value2));
+	default T selectOne(String field1, Collection<?> value1, String field2, Collection<?> value2) {
+		return getBaseMapper().selectOne(field1, value1, field2, value2);
 	}
 
-	default T getOne(String field1, Object value1, String field2, Object value2, String field3, Object value3) {
-		return getBaseMapper()
-				.selectOne(new QueryWrapper<T>().eq(field1, value1).eq(field2, value2).eq(field3, value3));
+	default T selectOne(String field1, Object value1, String field2, Collection<?> value2) {
+		return getBaseMapper().selectOne(field1, value1, field2, value2);
 	}
 
-	default T getOne(SFunction<T, ?> field1, Object value1, SFunction<T, ?> field2, Object value2,
-			SFunction<T, ?> field3, Object value3) {
-		return getBaseMapper()
-				.selectOne(new LambdaQueryWrapper<T>().eq(field1, value1).eq(field2, value2).eq(field3, value3));
+	default T selectOne(String field1, Collection<?> value1, String field2, Object value2) {
+		return getBaseMapper().selectOne(field1, value1, field2, value2);
 	}
 
-	// 查询得到一个结果得值--------------end----------------------------------------------
+	default T selectOne(String field1, Object value1, String field2, Object value2, String field3, Object value3) {
+		return getBaseMapper().selectOne(field1, value1, field2, value2, field3, value3);
+	}
+
+	default T selectOne(String field1, Object value1, String field2, Object value2, String field3,
+			Collection<?> value3) {
+		return getBaseMapper().selectOne(field1, value1, field2, value2, field3, value3);
+	}
+
+	default T selectOne(String field1, Object value1, String field2, Collection<?> value2, String field3,
+			Collection<?> value3) {
+		return getBaseMapper().selectOne(field1, value1, field2, value2, field3, value3);
+	}
+
+	default T selectOne(String field1, Collection<?> value1, String field2, Collection<?> value2, String field3,
+			Collection<?> value3) {
+		return getBaseMapper().selectOne(field1, value1, field2, value2, field3, value3);
+	}
+
+	default T selectOne(String field1, Collection<?> value1, String field2, Collection<?> value2, String field3,
+			Object value3) {
+		return getBaseMapper().selectOne(field1, value1, field2, value2, field3, value3);
+	}
+
+	default T selectOne(String field1, Collection<?> value1, String field2, Object value2, String field3,
+			Object value3) {
+		return getBaseMapper().selectOne(field1, value1, field2, value2, field3, value3);
+	}
+
+	// ------selectOne查询从一个条件到三个条件---end--------------------------------------------
+
+	// 查询List
 
 	default List<T> selectList() {
 		return getBaseMapper().selectList();
@@ -195,45 +226,147 @@ public interface AbstractService<T> extends MPJBaseService<T> {
 	default List<T> selectList(T t) {
 		return getBaseMapper().selectList(t);
 	}
-	// 这里是equal操作查询
+
+	// 查询selectList----------------start----------------------
 
 	default List<T> selectList(String field, Object value) {
 		return getBaseMapper().selectList(field, value);
 	}
 
-	default List<T> selectList(String field1, Object value1, String field2, Object value2) {
-		return getBaseMapper().selectList(field1, value1, field2, value2);
-	}
-
-	// 这个是list in 查询
 	default List<T> selectList(String field, Collection<?> value) {
 		return getBaseMapper().selectList(field, value);
 	}
 
+	default List<T> selectList(String field1, Object value1, String field2, Object value2) {
+		return getBaseMapper().selectList(field1, value1, field2, value2);
+	}
+
 	default List<T> selectList(String field1, Collection<?> value1, String field2, Collection<?> value2) {
 		return getBaseMapper().selectList(field1, value1, field2, value2);
 	}
 
-	// 这里是equal和in操作查询
+	default List<T> selectList(String field1, Object value1, String field2, Collection<?> value2) {
+		return getBaseMapper().selectList(field1, value1, field2, value2);
+	}
 
-	default List<T> selectList(String field1, Collection<?> value1, String field2, Object values2) {
-		return getBaseMapper().selectList(field1, value1, field2, values2);
+	default List<T> selectList(String field1, Collection<?> value1, String field2, Object value2) {
+		return getBaseMapper().selectList(field1, value1, field2, value2);
 	}
 
-	default List<T> selectList(String field1, Object value1, String field2, Collection<?> value2) {
+	default List<T> selectList(String field1, Object value1, String field2, Object value2, String field3,
+			Object value3) {
 		return getBaseMapper().selectList(field1, value1, field2, value2);
 	}
-	// 查询selectList----------------end----------------------
+
+	default List<T> selectList(String field1, Object value1, String field2, Object value2, String field3,
+			Collection<?> value3) {
+		return getBaseMapper().selectList(field1, value1, field2, value2, field3, value3);
+	}
+
+	default List<T> selectList(String field1, Object value1, String field2, Collection<?> value2, String field3,
+			Collection<?> value3) {
+		return getBaseMapper().selectList(field1, value1, field2, value2, field3, value3);
+	}
+
+	default List<T> selectList(String field1, Collection<?> value1, String field2, Collection<?> value2, String field3,
+			Collection<?> value3) {
+		return getBaseMapper().selectList(field1, value1, field2, value2, field3, value3);
+	}
+
+	default List<T> selectList(String field1, Collection<?> value1, String field2, Collection<?> value2, String field3,
+			Object value3) {
+		return getBaseMapper().selectList(field1, value1, field2, value2, field3, value3);
+	}
+
+	default List<T> selectList(String field1, Collection<?> value1, String field2, Object value2, String field3,
+			Object value3) {
+		return getBaseMapper().selectList(field1, value1, field2, value2, field3, value3);
+	}
+
 	// 查询selectList----------------end----------------------
 
-	// 查询remove----------------start----------------------
-	default int remove(String field, Object value) {
+	// 删除条件---equal--------------------start--------------------------------
+	default int delete(String field, Object value) {
 		return getBaseMapper().delete(field, value);
 	}
 
-	default int remove(String field, Collection<?> values) {
-		return getBaseMapper().delete(field, values);
+	default int delete(String field, Collection<?> value) {
+		return getBaseMapper().delete(field, value);
+	}
+
+	default int delete(String field1, Object value1, String field2, Object value2) {
+		return getBaseMapper().delete(field1, value1, field2, value2);
+	}
+
+	default int delete(String field1, Collection<?> value1, String field2, Collection<?> value2) {
+		return getBaseMapper().delete(field1, value1, field2, value2);
+	}
+
+	default int delete(String field1, Object value1, String field2, Collection<?> value2) {
+		return getBaseMapper().delete(field1, value1, field2, value2);
+	}
+
+	default int delete(String field1, Collection<?> value1, String field2, Object value2) {
+		return getBaseMapper().delete(field1, value1, field2, value2);
+	}
+
+	default int delete(String field1, Object value1, String field2, Object value2, String field3, Object value3) {
+		return getBaseMapper().delete(field1, value1, field2, value2);
+	}
+
+	default int delete(String field1, Object value1, String field2, Object value2, String field3,
+			Collection<?> value3) {
+		return getBaseMapper().delete(field1, value1, field2, value2, field3, value3);
+	}
+
+	default int delete(String field1, Object value1, String field2, Collection<?> value2, String field3,
+			Collection<?> value3) {
+		return getBaseMapper().delete(field1, value1, field2, value2, field3, value3);
+	}
+
+	default int delete(String field1, Collection<?> value1, String field2, Collection<?> value2, String field3,
+			Collection<?> value3) {
+		return getBaseMapper().delete(field1, value1, field2, value2, field3, value3);
+	}
+
+	default int delete(String field1, Collection<?> value1, String field2, Collection<?> value2, String field3,
+			Object value3) {
+		return getBaseMapper().delete(field1, value1, field2, value2, field3, value3);
+	}
+
+	default int delete(String field1, Collection<?> value1, String field2, Object value2, String field3,
+			Object value3) {
+		return getBaseMapper().delete(field1, value1, field2, value2, field3, value3);
+	}
+
+	default int deleteAll() {
+		return getBaseMapper().deleteAll();
+
+	}
+
+	// 更新操作开始
+	default int update(String field, Object value, String setField, Object setValue) {
+
+		return getBaseMapper().update(field, value, setField, setValue);
+	}
+
+	default int update(String field, Object value, String setField1, Object setValue1, String setField2,
+			Object setValue2) {
+
+		return getBaseMapper().update(field, value, setField1, setValue1, setField2, setValue2);
+	}
+
+	default int update(String field, Collection<?> value, String setField, Object setValue) {
+
+		return getBaseMapper().update(field, value, setField, setValue);
+	}
+
+	default int update(String field, Collection<?> value, String setField1, Object setValue1, String setField2,
+			Object setValue2) {
+
+		return getBaseMapper().update(field, value, setField1, setValue1, setField2, setValue2);
 	}
+	// 更新操作结束
 
 	// 查询remove----------------end----------------------