当前位置: 首页 > news >正文

苍穹外卖--菜品分页查询

设计DTO类

@Data
public class DishPageQueryDTO implements Serializable {private int page;private int pageSize;private String name;private Integer categoryId; //分类idprivate Integer status; //状态 0表示禁用 1表示启用}

设计VO类

@Data
@Builder
@NoArgsConstructor
@AllArgsConstructor
public class DishVO implements Serializable {private Long id;//菜品名称private String name;//菜品分类idprivate Long categoryId;//菜品价格private BigDecimal price;//图片private String image;//描述信息private String description;//0 停售 1 起售private Integer status;//更新时间private LocalDateTime updateTime;//分类名称private String categoryName;//菜品关联的口味private List<DishFlavor> flavors = new ArrayList<>();
}

Controller层

@GetMapping("/page")@ApiOperation("菜品分页查询")public Result<PageResult> page(DishPageQueryDTO dishPageQueryDTO) {log.info("菜品分页查询:{}", dishPageQueryDTO);PageResult pageResult = dishService.pageQuery(dishPageQueryDTO);//后绪步骤定义return Result.success(pageResult);}

Service层

 public PageResult pageQuery(DishPageQueryDTO dishPageQueryDTO) {PageHelper.startPage(dishPageQueryDTO.getPage(), dishPageQueryDTO.getPageSize());Page<DishVO> page = dishMapper.pageQuery(dishPageQueryDTO);//后绪步骤实现return new PageResult(page.getTotal(), page.getResult());}

Mapper层

Page<DishVO> pageQuery(DishPageQueryDTO dishPageQueryDTO);

在 DishMapper.xml 中编写SQL:

<select id="pageQuery" resultType="com.sky.vo.DishVO">select d.* , c.name as categoryName from dish d left outer join category c on d.category_id = c.id<where><if test="name != null">and d.name like concat('%',#{name},'%')</if><if test="categoryId != null">and d.category_id = #{categoryId}</if><if test="status != null">and d.status = #{status}</if></where>order by d.create_time desc
</select>
http://www.lryc.cn/news/236210.html

相关文章:

  • JS原生-弹框+阿里巴巴矢量图
  • vscode c++ 报错identifier “string“ is undefined
  • CocoaPods podfile 文件配置
  • Python大数据之linux学习总结——day10_hive调优
  • 原理Redis-动态字符串SDS
  • axios的封装之axios是基于什么封装的?
  • 应用软件安全编程-20生成强随机数
  • 【C语言.oj刷题】有序#整型矩阵元素查找##{思路+C源码}
  • rabbitmq默认交换机锁绑定的routingkey-待研究
  • 【计算思维】蓝桥杯STEMA 科技素养考试真题及解析 4
  • 基于STM32CubeMX和keil采用RTC时钟周期唤醒和闹钟实现LED与BEEP周期开关
  • Virtual安装centos后,xshell连接centos
  • Taro.navigateTo 使用URL传参数和目标页面参数获取
  • Unity Meta Quest 一体机开发(七):配置玩家 Hand Grab 功能
  • 我又开始贩卖焦虑了,机器视觉兄弟们,打工这生意盘不活了?让人逃离北上广深,是毒鸡汤吗?
  • hyperledger fabric2.4测试网络添加组织数量
  • 分库分表
  • uniapp自定义组件
  • linux gdb调试
  • java17 linux 环境配置
  • Flutter最新稳定版3.16 新特性介绍
  • nodejs+vue慢性胃炎健康管理系统的设计与实现-微信小程序-安卓-python-PHP-计算机毕业设计
  • 【C++】传递‘类非静态成员函数’用作回调函数
  • vscode 创建 运行c++ 项目
  • Spring Cloud学习(十)【Elasticsearch搜索功能 分布式搜索引擎02】
  • 大数据HCIE成神之路之数学(3)——概率论
  • 【论文解读】FFHQ-UV:用于3D面部重建的归一化面部UV纹理数据集
  • simple foc 移植odriver foc的 anti-cogging(抗齿槽算法)
  • 基于深度学习的恶意软件检测
  • 环境配置|GitHub——解决Github无法显示图片以及README无法显示图片