From 88a5f5ef66fd9be3835f80cb81c8399b831da341 Mon Sep 17 00:00:00 2001 From: 13693261870 <252740454@qq.com> Date: 星期一, 10 四月 2023 17:24:14 +0800 Subject: [PATCH] 1 --- src/main/java/com/lf/server/service/all/BaseQueryService.java | 51 +++++++++++++++++++++++++++++++++++++++------------ 1 files changed, 39 insertions(+), 12 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 89a4217..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,9 +19,7 @@ import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; -import java.util.HashMap; -import java.util.List; -import java.util.Map; +import java.util.*; import java.util.concurrent.TimeUnit; /** @@ -38,7 +37,7 @@ /** * 琛ㄥ悕Map */ - private static Map<String, String> tabMap = new HashMap<String, String>(3); + private static Map<String, String> tabMap = new HashMap<>(3); /** * 娣诲姞杩囨护鏉′欢 @@ -66,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)); } } @@ -76,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("'", ""); @@ -125,9 +126,35 @@ case "<=": wrapper.le(field, val); break; + case "in": + if (val.toString().contains(StaticData.SINGLE_QUOTES)) { + wrapper.in(field, getStringList(val.toString())); + } else { + wrapper.in(field, getIntegerList(val.toString())); + } + break; default: break; } + } + + /** + * 鑾峰彇瀛楃涓插垪琛� + */ + 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; } /** @@ -229,28 +256,28 @@ @Override public List<IdNameEntity> selectUserFuzzy(String name) { - name = StringHelper.getLikeStr(name); + name = StringHelper.getLikeUpperStr(name); return baseQueryMapper.selectUserFuzzy(name); } @Override public List<IdNameEntity> selectDepFuzzy(String name) { - name = StringHelper.getLikeStr(name); + name = StringHelper.getLikeUpperStr(name); return baseQueryMapper.selectDepFuzzy(name); } @Override public Integer selectTabsForCount(String tab, String field) { - tab = StringHelper.getLikeStr(tab); + tab = StringHelper.getLikeUpperStr(tab); return baseQueryMapper.selectTabsForCount(tab, field); } @Override public List<TabEntity> selectTabsByPage(String tab, String field, String filters, Integer limit, Integer offset) { - tab = StringHelper.getLikeStr(tab); + tab = StringHelper.getLikeUpperStr(tab); return baseQueryMapper.selectTabsByPage(tab, field, filters, limit, offset); } @@ -277,7 +304,7 @@ @Override public List<KeyValueEntity> selectDirTypes(String name) { - name = StringHelper.getLikeStr(name); + name = StringHelper.getLikeUpperStr(name); return baseQueryMapper.selectDirTypes(name); } -- Gitblit v1.9.3