From 6b2a7d926442ab8340e3ced4cabcdfbfc1e2ec52 Mon Sep 17 00:00:00 2001 From: 13693261870 <252740454@qq.com> Date: 星期四, 06 四月 2023 16:25:27 +0800 Subject: [PATCH] 1 --- src/main/java/com/lf/server/service/all/BaseQueryService.java | 39 +++++++++++++++++++++++++++++++-------- 1 files changed, 31 insertions(+), 8 deletions(-) diff --git a/src/main/java/com/lf/server/service/all/BaseQueryService.java b/src/main/java/com/lf/server/service/all/BaseQueryService.java index f1ce04b..86a5f3c 100644 --- a/src/main/java/com/lf/server/service/all/BaseQueryService.java +++ b/src/main/java/com/lf/server/service/all/BaseQueryService.java @@ -3,6 +3,7 @@ import com.baomidou.mybatisplus.annotation.TableName; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.lf.server.entity.all.RedisCacheKey; +import com.lf.server.entity.all.StaticData; import com.lf.server.entity.ctrl.IdNameEntity; import com.lf.server.entity.ctrl.KeyValueEntity; import com.lf.server.entity.ctrl.TabEntity; @@ -18,10 +19,7 @@ import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; -import java.util.Arrays; -import java.util.HashMap; -import java.util.List; -import java.util.Map; +import java.util.*; import java.util.concurrent.TimeUnit; /** @@ -67,7 +65,7 @@ String express = str.substring(start + 1, end).trim().toLowerCase(); String value = str.substring(end + 1).trim(); - addWrapper(wrapper, field, express, getObjectVal(value)); + addWrapper(wrapper, field, express, getObjectVal(express, value)); } } @@ -77,13 +75,15 @@ * @param val 鍊� * @return 瀵硅薄 */ - private Object getObjectVal(String val) { + private Object getObjectVal(String express, String val) { if (StringHelper.isInteger(val)) { return Long.parseLong(val); } - if (StringHelper.isNumeric(val)) { return Double.parseDouble(val); + } + if (StaticData.IN.equals(express)) { + return val; } return val.replace("'", ""); @@ -127,7 +127,11 @@ wrapper.le(field, val); break; case "in": - wrapper.in(field, Arrays.asList(val.toString().split(","))); + if (val.toString().contains(StaticData.SINGLE_QUOTES)) { + wrapper.in(field, getStringList(val.toString())); + } else { + wrapper.in(field, getIntegerList(val.toString())); + } break; default: break; @@ -135,6 +139,25 @@ } /** + * 鑾峰彇瀛楃涓插垪琛� + */ + private List<String> getStringList(String val) { + return Arrays.asList(val.replace(StaticData.SINGLE_QUOTES, "").split(StaticData.COMMA)); + } + + /** + * 鑾峰彇鏁存暟鍒楄〃 + */ + private List<Integer> getIntegerList(String val) { + List<Integer> list = new ArrayList<>(); + for (String str : val.split(StaticData.COMMA)) { + list.add(Integer.parseInt(str)); + } + + return list; + } + + /** * 娣诲姞绌洪棿杩囨护鏉′欢 * * @param basicMapper 鐖禡apper -- Gitblit v1.9.3