一 查询条件VO
| |
| |
| |
| |
| |
| |
| @ApiModel("Teacher查询对象") |
| @Data |
| public class TeacherQueryVo implements Serializable { |
| private static final long serialVersionUID = 1L; |
| |
| @ApiModelProperty(value = "讲师姓名") |
| private String name; |
| |
| @ApiModelProperty(value = "讲师级别") |
| private Integer level; |
| |
| @ApiModelProperty(value = "开始时间") |
| private String joinDateBegin; |
| |
| @ApiModelProperty(value = "结束时间") |
| private String joinDateEnd; |
| } |
二 讲师控制器中的分页和条件查询
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| @ApiOperation("讲师分页列表") |
| @GetMapping("list/{page}/{limit}") |
| public R listPage(@ApiParam(value = "当前页码", required = true) @PathVariable Long page, |
| @ApiParam(value = "每页记录数", required = true) @PathVariable Long limit, |
| @ApiParam("讲师列表查询对象") TeacherQueryVo teacherQueryVo) { |
| |
| Page<Teacher> pageParam = new Page<>(page, limit); |
| IPage<Teacher> pageModel = teacherService.selectPage(pageParam, teacherQueryVo); |
| List<Teacher> records = pageModel.getRecords(); |
| long total = pageModel.getTotal(); |
| return R.ok().data("total", total).data("rows", records); |
| } |
三 讲师服务层实现
| |
| |
| |
| |
| |
| |
| @Service |
| public class TeacherServiceImpl extends ServiceImpl<TeacherMapper, Teacher> implements TeacherService { |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| @Override |
| public IPage<Teacher> selectPage(Page<Teacher> pageParam, TeacherQueryVo teacherQueryVo) { |
| |
| QueryWrapper<Teacher> queryWrapper = new QueryWrapper<>(); |
| queryWrapper.orderByAsc("sort"); |
| |
| if (teacherQueryVo == null) { |
| return baseMapper.selectPage(pageParam, queryWrapper); |
| } |
| |
| String name = teacherQueryVo.getName(); |
| Integer level = teacherQueryVo.getLevel(); |
| String joinDateBegin = teacherQueryVo.getJoinDateBegin(); |
| String joinDateEnd = teacherQueryVo.getJoinDateEnd(); |
| if (!StringUtils.isEmpty(name)) { |
| queryWrapper.likeRight("name", name); |
| } |
| if (level != null) { |
| queryWrapper.eq("level", level); |
| } |
| if (!StringUtils.isEmpty(joinDateBegin)) { |
| queryWrapper.ge("join_date", joinDateBegin); |
| } |
| if (!StringUtils.isEmpty(joinDateEnd)) { |
| queryWrapper.le("join_date", joinDateEnd); |
| } |
| |
| return baseMapper.selectPage(pageParam, queryWrapper); |
| } |
转载:https://blog.csdn.net/chengqiuming/article/details/109786365
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】博客园社区专享云产品让利特惠,阿里云新客6.5折上折
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· DeepSeek “源神”启动!「GitHub 热点速览」
· 微软正式发布.NET 10 Preview 1:开启下一代开发框架新篇章
· 我与微信审核的“相爱相杀”看个人小程序副业
· C# 集成 DeepSeek 模型实现 AI 私有化(本地部署与 API 调用教程)
· spring官宣接入deepseek,真的太香了~