吾爱破解 - LCG - LSG |安卓破解|病毒分析|www.52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 1196|回复: 5
收起左侧

[求助] mybatis-plus查询后筛选数据导致页数不对 问题请教

[复制链接]
积木工具箱 发表于 2021-3-11 16:38
[Java] 纯文本查看 复制代码
        int pageNum = Integer.parseInt((String) params.get("page"));
        int limit = Integer.parseInt((String) params.get("limit"));
        Page<UserBasicInfoEntity> page = new Page<>(pageNum, limit);
        //查询用户信息
        List<UserBasicInfoEntity> userBasicInfoEntityList = baseMapper.queryPage(page, params);
        userBasicInfoEntityList = convertOnlineState(userBasicInfoEntityList);
        //如果等于0就表明只需要非vip用户
        if(null != params.get("privilegeId")){
            Integer privilegeId = Integer.parseInt((String) params.get("privilegeId"));
            if(privilegeId == 0){
                for (int i = 0; i < userBasicInfoEntityList.size(); i++) {
                    UserBasicInfoEntity userBasicInfoEntity = userBasicInfoEntityList.get(i);
                    if( userBasicInfoEntity.getIsVip() == 1){
                        userBasicInfoEntityList.remove(i);
                        break;
                    }
                }
            }
        }

        page.setRecords(userBasicInfoEntityList);
//        page.getPages();
        return new PageUtils(page);


大佬们可以看到 在查询后我进行一个for循环筛选了vip用户 但是筛选完毕后 page里面的 totalCount totalPage currPage都还是未筛选之前的数据 这个问题怎么解决呢 光从数据库没办法判断是不是vip
搜狗截图20210311163530.png

发帖前要善用论坛搜索功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。

Vvvvvoid 发表于 2021-3-11 16:44
你从数据库查的时候就把 vip 的条件带上啊 ,

或者 你把数据都查出来, 手动做分页
 楼主| 积木工具箱 发表于 2021-3-11 16:45
Vvvvvoid 发表于 2021-3-11 16:44
你从数据库查的时候就把 vip 的条件带上啊 ,

或者 你把数据都查出来, 手动做分页

他这个比较奇葩 数据库没办法查..
好好学习多挣钱 发表于 2021-3-11 16:50
凉风天末 发表于 2021-3-11 16:57
大佬,求分发404的那个github 之前分享的404了
吾爱破解丶小明 发表于 2021-3-11 17:23
本帖最后由 吾爱破解丶小明 于 2021-3-11 17:26 编辑


    list = list.stream().skip((pn - 1) * num).limit(num).collect(Collectors.toList()); 即可

[Java] 纯文本查看 复制代码
    void testDeletList(){        Integer pn = 1;
        Integer num = 10;
        List<Integer> list = new ArrayList<>();
        if(null != ""){
            Integer privilegeID = 0;
            if(privilegeID == 0){
                list.removeIf(item -> {
                    if (item == 1) {
                        return true;
                    }else {
                        return false;
                    }
                });
            }

        }
        list = list.stream().skip((pn - 1) * num).limit(num).collect(Collectors.toList());


    }

免费评分

参与人数 1吾爱币 +1 热心值 +1 收起 理由
积木工具箱 + 1 + 1 谢谢@Thanks!

查看全部评分

您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则 警告:本版块禁止回复与主题无关非技术内容,违者重罚!

快速回复 收藏帖子 返回列表 搜索

RSS订阅|小黑屋|处罚记录|联系我们|吾爱破解 - LCG - LSG ( 京ICP备16042023号 | 京公网安备 11010502030087号 )

GMT+8, 2024-6-17 20:45

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表