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/asrs/controller/LocDetlController.java | 2 +- src/main/java/com/zy/common/web/BaseController.java | 41 +++++++++++++++++++++++++++++++++++++---- 2 files changed, 38 insertions(+), 5 deletions(-) diff --git a/src/main/java/com/zy/asrs/controller/LocDetlController.java b/src/main/java/com/zy/asrs/controller/LocDetlController.java index 6b27d3d..e2d368f 100644 --- a/src/main/java/com/zy/asrs/controller/LocDetlController.java +++ b/src/main/java/com/zy/asrs/controller/LocDetlController.java @@ -35,7 +35,7 @@ public R stockOutList(@RequestParam(defaultValue = "1")Integer curr, @RequestParam(defaultValue = "10")Integer limit, @RequestParam Map<String, Object> param){ - return R.ok(locDetlService.getStockOut(toPage(curr, limit, param))); + return R.ok(locDetlService.getStockOut(toPage(curr, limit, param, LocDetl.class))); } @RequestMapping(value = "/locDetl/list/auth") 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