若依分页失败,由于对数据二次处理导致total只有十条

在使用若依框架的过程中,如果是查询结果数据直接返回,那么其自带的分页插件可以正常返回数据以及总条数,但若是对数据进行了其他二次处理,再返回就会出现异常,即无论查询了多少条, total都只会显示10导致列表分页失效,页面只能显示十条数据

原因:

分页工具只能在数据查询出来不做任何处理的情况下使用,因为这个时候列表的总数是固定的,分页的参数可控。若依生成的代码就是遵循这个规范没有问题,而在开发时涉及到业务处理后还想要分页展示就出问题了

这里总结了一个最简单的办法,直接在controller改一下即可:

将业务代码前面的startPage(); 和返回的return getDataTable(list);分别改动成下面的代码即可

代码:

java 复制代码
 @Anonymous
    @GetMapping("/allCollect")
    public TableDataInfo allCollect(@RequestParam(value = "userId",required = false)  String userId){
        PageDomain pageDomain = TableSupport.buildPageRequest();
        Integer pageNum = pageDomain.getPageNum();
        Integer pageSize = pageDomain.getPageSize();

        //业务查询所有符合条件的实体类
        List<EnterpriseMsgs> list = tEnterpriseMsgsService.allCollect(userId);

        //处理上面查询的list集合
        int num = list.size();
        list = list.stream().skip((pageNum - 1) * pageSize).limit(pageSize).collect(Collectors.toList());
        TableDataInfo rspData = new TableDataInfo();
        rspData.setCode(HttpStatus.SUCCESS);
        rspData.setRows(list);
        rspData.setTotal(num);
        return rspData;
    }
相关推荐
小冷coding1 小时前
【MySQL】MySQL 插入一条数据的完整流程(InnoDB 引擎)
数据库·mysql
Elias不吃糖1 小时前
Java Lambda 表达式
java·开发语言·学习
guygg881 小时前
一级倒立摆MATLAB仿真程序
开发语言·matlab
情缘晓梦.1 小时前
C语言指针进阶
java·开发语言·算法
鲨莎分不晴2 小时前
Redis 基本指令与命令详解
数据库·redis·缓存
专注echarts研发20年2 小时前
工业级 Qt 业务窗体标杆实现・ResearchForm 类深度解析
数据库·qt·系统架构
世转神风-2 小时前
qt-字符串版本与数值版本互转
开发语言·qt
极客代码2 小时前
深入解析C语言中的函数指针:原理、规则与实践
c语言·开发语言·指针·状态机·函数·函数指针
w-w0w-w2 小时前
C++模板参数与特化全解析
开发语言·c++