diff --git a/eladmin-generator/src/main/java/me/zhengjie/rest/GeneratorController.java b/eladmin-generator/src/main/java/me/zhengjie/rest/GeneratorController.java index ce6a17d1..62ee485e 100644 --- a/eladmin-generator/src/main/java/me/zhengjie/rest/GeneratorController.java +++ b/eladmin-generator/src/main/java/me/zhengjie/rest/GeneratorController.java @@ -24,6 +24,7 @@ import me.zhengjie.service.GenConfigService; import me.zhengjie.service.GeneratorService; import me.zhengjie.utils.PageUtil; import org.springframework.beans.factory.annotation.Value; +import org.springframework.data.domain.Pageable; import org.springframework.http.HttpStatus; import org.springframework.http.ResponseEntity; import org.springframework.web.bind.annotation.*; @@ -55,10 +56,8 @@ public class GeneratorController { @ApiOperation("查询数据库数据") @GetMapping(value = "/tables") - public ResponseEntity queryTables(@RequestParam(defaultValue = "") String name, - @RequestParam(defaultValue = "0")Integer page, - @RequestParam(defaultValue = "10")Integer size){ - int[] startEnd = PageUtil.transToStartEnd(page, size); + public ResponseEntity queryTables(@RequestParam(defaultValue = "") String name, Pageable pageable) { + int[] startEnd = PageUtil.transToStartEnd(pageable.getPageNumber() + 1, pageable.getPageSize()); return new ResponseEntity<>(generatorService.getTables(name,startEnd), HttpStatus.OK); } diff --git a/eladmin-generator/src/main/java/me/zhengjie/service/impl/GeneratorServiceImpl.java b/eladmin-generator/src/main/java/me/zhengjie/service/impl/GeneratorServiceImpl.java index 1b1803b2..f103e0b3 100644 --- a/eladmin-generator/src/main/java/me/zhengjie/service/impl/GeneratorServiceImpl.java +++ b/eladmin-generator/src/main/java/me/zhengjie/service/impl/GeneratorServiceImpl.java @@ -86,8 +86,9 @@ public class GeneratorServiceImpl implements GeneratorService { Object[] arr = (Object[]) obj; tableInfos.add(new TableInfo(arr[0], arr[1], arr[2], arr[3], ObjectUtil.isNotEmpty(arr[4]) ? arr[4] : "-")); } - Query query1 = em.createNativeQuery("SELECT COUNT(*) from information_schema.tables where table_schema = (select database())"); - Object totalElements = query1.getSingleResult(); + Query totalQuery = em.createNativeQuery("SELECT COUNT(*) from information_schema.tables where table_schema = (select database()) and table_name like ? "); + totalQuery.setParameter(1, StringUtils.isNotBlank(name) ? ("%" + name + "%") : "%%"); + Object totalElements = totalQuery.getSingleResult(); return PageUtil.toPage(tableInfos, totalElements); }