From 928c9d244ffde8c53fbb1e1abe3ce4f0e73ecff4 Mon Sep 17 00:00:00 2001 From: luxiaotao1123 <t1341870251@163.com> Date: 星期一, 22 六月 2020 14:06:27 +0800 Subject: [PATCH] 全文搜索 --- src/main/java/com/zy/common/web/BaseController.java | 41 +++++++++++++++++++++++++++++++++++++---- 1 files changed, 37 insertions(+), 4 deletions(-) diff --git a/src/main/java/com/zy/common/web/BaseController.java b/src/main/java/com/zy/common/web/BaseController.java index c206865..8c880d1 100644 --- a/src/main/java/com/zy/common/web/BaseController.java +++ b/src/main/java/com/zy/common/web/BaseController.java @@ -49,13 +49,46 @@ return ""; } - protected <T> Page<T> toPage(Integer pageNumber, Integer pageSize, Map<String, Object> param){ + /** + * 鍒嗛〉缁勮 + * @param pageNumber + * @param pageSize + * @param map + * @param cls + * @param <T> + * @return + */ + protected <T> Page<T> toPage(Integer pageNumber, Integer pageSize, Map<String, Object> map, Class<T> cls){ + // 鍒嗛〉绱㈠紩鍜屽崟椤垫暟閲忕粍瑁� pageNumber = Optional.ofNullable(pageNumber).orElse(1); pageSize = Optional.ofNullable(pageSize).orElse(10); Page<T> page = new Page<>(pageNumber, pageSize); - param.put("pageNumber", pageNumber); - param.put("pageSize", pageSize); - page.setCondition(param); + map.put("pageNumber", pageNumber); + map.put("pageSize", pageSize); + + // 鍏ㄥ瓧娈垫ā绯婃悳绱� todo + if (!Cools.isEmpty(map.get("condition"))) { + Set<String> columns = new HashSet<>(); + for (Field field :Cools.getAllFields(cls)){ + if (Modifier.isFinal(field.getModifiers()) + || Modifier.isStatic(field.getModifiers()) + || Modifier.isTransient(field.getModifiers())){ + continue; + } + String column = null; + if (field.isAnnotationPresent(TableField.class)) { + column = field.getAnnotation(TableField.class).value(); + } + if (Cools.isEmpty(column)) { + column = field.getName(); + } + if (!map.keySet().contains(column)) { + columns.add(column); + } + } + columns.forEach(col->map.put(col, map.get("condition"))); + } + page.setCondition(map); return page; } -- Gitblit v1.9.1