林夕司雨 2021-10-25 23:26 采纳率: 33.3%
浏览 62
已结题

求,实现后端分页条件查询时遇到问题

今天跟着视频做项目遇到一个问题,实在解决不了了,求,使用post传入数据,但通过传入JSON数据在swagger中测试时出现一些问题,为什么进行模糊查询时(响应状态都是success),但有情况会显示出模糊查询的数据,而有的情况不能。

//这是主体业务方法
//4 条件查询带分页的方法
    @ApiOperation(value = "实现条件的分页查询")
    @PostMapping("pageTeacherCondition/{current}/{limit}")
    public R pageTeacherCondition(
            @ApiParam(name = "current",value = "当前页码",required = true)
            @PathVariable long current,
            @ApiParam(name = "limit",value = "每页显示记录数",required = true)
            @PathVariable long limit,
            @ApiParam(name = "teacherQuery",value = "条件(模糊)查询实例",required = false)
            @RequestBody(required = false) TeacherQuery teacherQuery){
        //创建page对象
        Page<EduTeacher> pageTeacher=new Page<>(current,limit);
        //构建条件
        QueryWrapper<EduTeacher> wrapper = new QueryWrapper<>();
        //多条件组合查询
        String name = teacherQuery.getName();
        Integer level = teacherQuery.getLevel();
        String begin = teacherQuery.getBegin();
        String end = teacherQuery.getEnd();
        //判断条件值是否为空,如果不为空拼接条件
        if (StringUtils.hasText(name)){
            //构建条件
            wrapper.like("name", name);
        }
        if (StringUtils.hasText(String.valueOf(level))){
            wrapper.eq("level", level);
        }
        if (StringUtils.hasText(begin)){
            wrapper.ge("gmt_create", begin);
        }
        if (StringUtils.hasText(end)){
            wrapper.le("gmt_modified", end);
        }
        //调用方法实现条件查询分页
        teacherService.page(pageTeacher, wrapper);
        long total = pageTeacher.getTotal();
        List<EduTeacher> records = pageTeacher.getRecords();
        return R.ok().data("total",total).data("rows", records);
    }

//这是主要的实体类
@Data
@NoArgsConstructor
@AllArgsConstructor
@EqualsAndHashCode(callSuper = false)
@Accessors(chain = true)
@ApiModel(value="EduTeacher对象", description="讲师")
public class EduTeacher implements Serializable {

    private static final long serialVersionUID = 1L;

    @ApiModelProperty(value = "讲师ID")
    @TableId(value = "id", type = IdType.ID_WORKER_STR)
    private String id;

    @ApiModelProperty(value = "讲师姓名")
    private String name;

    @ApiModelProperty(value = "讲师简介")
    private String intro;

    @ApiModelProperty(value = "讲师资历,一句话说明讲师")
    private String career;

    @ApiModelProperty(value = "头衔 1高级讲师 2首席讲师")
    private Integer level;

    @ApiModelProperty(value = "讲师头像")
    private String avatar;

    @ApiModelProperty(value = "排序")
    private Integer sort;

    @ApiModelProperty(value = "逻辑删除 1(true)已删除, 0(false)未删除")
    @TableLogic //
    private Boolean isDeleted;

    @ApiModelProperty(value = "创建时间")
    @TableField(fill = FieldFill.INSERT)
    private Date gmtCreate;

    @ApiModelProperty(value = "更新时间")
    @TableField(fill = FieldFill.INSERT_UPDATE)
    private Date gmtModified;


}
//vo实体类,也就是要输入的模糊查询内容
@Data
@NoArgsConstructor
@AllArgsConstructor
public class TeacherQuery {
    @ApiModelProperty(value ="教师名称,模糊查询")
    private  String name;
    @ApiModelProperty(value = "头衔1 高级讲师 2 首席讲师")
    private Integer level;
    @ApiModelProperty(value = "查询开始时间",example = "2019-01-01 10:10:10")
    private String begin; //string类型,前端传过来的数据无需进行类型转换
    @ApiModelProperty(value = "查询结束时间",example = "2019-12-01 10:10:10")
    private String end;
}

先看一下成功的情况,数据库内容先不展示了,也就是只模糊查询level 或者level和name进行组合模糊查询

img

img

img

img

看一下获取不到数据的情况,就是只进行分页查询,或者只进行name的分页查询

img

img


控制台都是成功的就是没有数据,咋回事啊

img

img

  • 写回答

3条回答 默认 最新

  • zcl_1991 2021-10-26 11:15
    关注

    img

    这样一搞条件就变成 level = “null” 这肯定查不到

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(2条)

报告相同问题?

问题事件

  • 系统已结题 11月3日
  • 已采纳回答 10月26日
  • 修改了问题 10月26日
  • 创建了问题 10月25日

悬赏问题

  • ¥15 不小心不正规的开发公司导致不给我们y码,
  • ¥15 我的代码无法在vc++中运行呀,错误很多
  • ¥50 求一个win系统下运行的可自动抓取arm64架构deb安装包和其依赖包的软件。
  • ¥60 fail to initialize keyboard hotkeys through kernel.0000000000
  • ¥30 ppOCRLabel导出识别结果失败
  • ¥15 Centos7 / PETGEM
  • ¥15 csmar数据进行spss描述性统计分析
  • ¥15 各位请问平行检验趋势图这样要怎么调整?说标准差差异太大了
  • ¥15 delphi webbrowser组件网页下拉菜单自动选择问题
  • ¥15 wpf界面一直接收PLC给过来的信号,导致UI界面操作起来会卡顿