From 6b3bc832de25acdb2be418ad7626e9b6e234adde Mon Sep 17 00:00:00 2001 From: Charles7c Date: Tue, 19 Nov 2024 20:20:31 +0800 Subject: [PATCH] =?UTF-8?q?fix(data/mp):=20=E4=BF=AE=E5=A4=8D=20Query=20?= =?UTF-8?q?=E8=8C=83=E5=9B=B4=E6=9F=A5=E8=AF=A2=E6=95=B0=E7=BB=84=E7=B1=BB?= =?UTF-8?q?=E5=9E=8B=E6=95=B0=E6=8D=AE=E8=A7=A3=E6=9E=90=E9=94=99=E8=AF=AF?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../starter/data/mp/util/QueryWrapperHelper.java | 12 +++++------- 1 file changed, 5 insertions(+), 7 deletions(-) diff --git a/continew-starter-data/continew-starter-data-mp/src/main/java/top/continew/starter/data/mp/util/QueryWrapperHelper.java b/continew-starter-data/continew-starter-data-mp/src/main/java/top/continew/starter/data/mp/util/QueryWrapperHelper.java index 75c6986a..1059a1bc 100644 --- a/continew-starter-data/continew-starter-data-mp/src/main/java/top/continew/starter/data/mp/util/QueryWrapperHelper.java +++ b/continew-starter-data/continew-starter-data-mp/src/main/java/top/continew/starter/data/mp/util/QueryWrapperHelper.java @@ -33,10 +33,7 @@ import top.continew.starter.data.core.enums.QueryType; import top.continew.starter.data.core.util.SqlInjectionUtils; import java.lang.reflect.Field; -import java.util.ArrayList; -import java.util.Collection; -import java.util.Collections; -import java.util.List; +import java.util.*; import java.util.function.Consumer; /** @@ -193,8 +190,9 @@ public class QueryWrapperHelper { case LT -> consumers.add(q -> q.lt(columnName, fieldValue)); case LE -> consumers.add(q -> q.le(columnName, fieldValue)); case BETWEEN -> { + // 数组转集合 List between = new ArrayList<>(ArrayUtil.isArray(fieldValue) - ? CollUtil.toList(fieldValue) + ? List.of((Object[])fieldValue) : (List)fieldValue); ValidationUtils.throwIf(between.size() != 2, "[{}] 必须是一个范围", columnName); consumers.add(q -> q.between(columnName, between.get(0), between.get(1))); @@ -205,13 +203,13 @@ public class QueryWrapperHelper { case IN -> { ValidationUtils.throwIfEmpty(fieldValue, "[{}] 不能为空", columnName); consumers.add(q -> q.in(columnName, ArrayUtil.isArray(fieldValue) - ? CollUtil.toList(fieldValue) + ? List.of((Object[])fieldValue) : (Collection)fieldValue)); } case NOT_IN -> { ValidationUtils.throwIfEmpty(fieldValue, "[{}] 不能为空", columnName); consumers.add(q -> q.notIn(columnName, ArrayUtil.isArray(fieldValue) - ? CollUtil.toList(fieldValue) + ? List.of((Object[])fieldValue) : (Collection)fieldValue)); } case IS_NULL -> consumers.add(q -> q.isNull(columnName));