首页 > 其他分享 >套餐信息分页查询

套餐信息分页查询

时间:2023-03-12 22:13:52浏览次数:35  
标签:category name pageSize 查询 records 套餐 page 分页

需求分析:

  系统中的套餐数据很多的时候,如果在一个页面中全部展示出来会显得比较乱,不便于查看,所以一般的系统中都会以分页的方式来展示数据

梳理交互过程:

  1、页面发送ajax请求,将分页查询参数(page, pageSize,name)提交到服务端,获取分页数据

  2、页面发送请求,请求服务端进行图片下载,用于页面图片展示

    /**
     * 套餐分页查询
     * @param page
     * @param pageSize
     * @param name
     * @return
     */
    @GetMapping("/page")
    public R<Page> page(int page, int pageSize, String name){
        //创建分页构造器
        Page<Setmeal> pageInfo = new Page<>(page, pageSize);

        //创建条件构造器
        LambdaQueryWrapper<Setmeal> queryWrapper = new LambdaQueryWrapper<>();
        //添加查询条件,根据name进行like模糊查询
        queryWrapper.like(name!=null, Setmeal::getName, name);
        //添加排序条件,根据更新时间降序排列
        queryWrapper.orderByDesc(Setmeal::getUpdateTime);

        setmealService.page(pageInfo, queryWrapper);

        Page<SetmealDto> dtoPage = new Page(page, pageSize);
        //对象拷贝,因为pageInfo中的records是Setmeal类型,而dtoPage中的records是SetmealDto类型
        BeanUtils.copyProperties(pageInfo, dtoPage, "records");
        List<Setmeal> records = pageInfo.getRecords();
        //通过category_id查询categoryName
        List<SetmealDto> list = records.stream().map((item) -> {
            SetmealDto setmealDto = new SetmealDto();
            //对象拷贝
            BeanUtils.copyProperties(item, setmealDto);
            //根据categoryId查询分类对象category
            Category category = categoryService.getById(item.getCategoryId());
            if(category!=null){
                setmealDto.setCategoryName(category.getName());
            }
            return setmealDto;
        }).collect(Collectors.toList());

        dtoPage.setRecords(list);
        return R.success(dtoPage);

    }

 

标签:category,name,pageSize,查询,records,套餐,page,分页
From: https://www.cnblogs.com/fxzm/p/17209320.html

相关文章

  • Mybatis-lesson09-多对一查询 (查询所有的学生及对应的老师信息)-03-12
    在StudentMapper.xml需要使用复杂查询的方法,1、先单独查学生和单独查老师2、在中间使用结果映射 学生中reultMap="StudentTeacher"3、中间增加结果映射resultMap......
  • 新增套餐
    需求分析:套餐就是菜品的集合,后台系统中可以管理套餐信息,通过新增套餐功能来添加一个新的套餐,在添加套餐时需要选择当前套餐所属的套餐分类和包含的菜品,并且需要上传套......
  • 使用idea进行账户的更新,金额的存款取款,以及查询的三种方法
    publicclassAccount{privateintjinE;//金额要隐私起来//本题目用三个方法;一个变量构成;而变量是要用隐私的方法来进行;//private--隐私的只可以在同一个......
  • python爬虫案列02,百度翻译,KFC城市查询
    百度翻译(有点潦草,懒得优化)看运行结果:过程:F12,输入一个单词,找到带有翻译结果的数据包,查看请求方式,请求的url,payload代码:#导入模块importrequestsimportjsonwor......
  • [20230308]12c以上版本模糊查询问题.txt
    [20230308]12c以上版本模糊查询问题.txt--//前几天看了链接http://www.itpub.net/thread-2148700-1-1.html,对方提到模糊查询慢的问题,实际上这个问题使用常规模式基本--//无......
  • 1_使用Mapper代理方式实现查询
    ​ 项目结构:注意文件路径和文件位置!!! 准备接口和mapper映射文件EmpMapper接口packagecom.msb.mapper;importcom.msb.pojo.Emp;importjava.util.List;/**......
  • 1_使用Mapper代理方式实现查询
    ​ 项目结构:注意文件路径和文件位置!!! 准备接口和mapper映射文件EmpMapper接口packagecom.msb.mapper;importcom.msb.pojo.Emp;importjava.util.List;/**......
  • 1_使用Mapper代理方式实现查询
     项目结构:注意文件路径和文件位置!!! 准备接口和mapper映射文件EmpMapper接口 packagecom.msb.mapper;importcom.msb.pojo.Emp;importjava.util.List;/***@Author:......
  • 1_使用Mapper代理方式实现查询
     项目结构:注意文件路径和文件位置!!! 准备接口和mapper映射文件EmpMapper接口 packagecom.msb.mapper;importcom.msb.pojo.Emp;importjava.util.List;/***@Author:......
  • 1_使用Mapper代理方式实现查询
    ​ 项目结构:注意文件路径和文件位置!!! 准备接口和mapper映射文件EmpMapper接口 packagecom.msb.mapper;importcom.msb.pojo.Emp;importjava.util.List;......