Skip to content

Commit a623acd

Browse files
committed
fix: 优化通用查询注解解析器
1 parent 9f25925 commit a623acd

File tree

1 file changed

+6
-3
lines changed
  • continew-admin-common/src/main/java/top/charles7c/cnadmin/common/util/helper

1 file changed

+6
-3
lines changed

continew-admin-common/src/main/java/top/charles7c/cnadmin/common/util/helper/QueryHelper.java

Lines changed: 6 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -142,7 +142,8 @@ private static <R> void parse(Query queryAnnotation, String fieldName, Object fi
142142
String property = queryAnnotation.property();
143143
fieldName = StrUtil.blankToDefault(property, fieldName);
144144
String columnName = StrUtil.toUnderlineCase(fieldName);
145-
switch (queryAnnotation.type()) {
145+
Query.Type queryType = queryAnnotation.type();
146+
switch (queryType) {
146147
case EQUAL:
147148
queryWrapper.eq(columnName, fieldValue);
148149
break;
@@ -163,7 +164,9 @@ private static <R> void parse(Query queryAnnotation, String fieldName, Object fi
163164
break;
164165
case BETWEEN:
165166
List<Object> between = new ArrayList<>((List<Object>)fieldValue);
166-
queryWrapper.between(columnName, between.get(0), between.get(1));
167+
if (between.size() >= 2) {
168+
queryWrapper.between(columnName, between.get(0), between.get(1));
169+
}
167170
break;
168171
case LEFT_LIKE:
169172
queryWrapper.likeLeft(columnName, fieldValue);
@@ -191,7 +194,7 @@ private static <R> void parse(Query queryAnnotation, String fieldName, Object fi
191194
queryWrapper.isNotNull(columnName);
192195
break;
193196
default:
194-
break;
197+
throw new IllegalArgumentException(String.format("暂不支持 [%s] 查询类型", queryType));
195198
}
196199
}
197200
}

0 commit comments

Comments
 (0)