zoukankan      html  css  js  c++  java
  • springJPA 之 QueryDSL(二)

    具体实现如下:

    @Override
    public Paging<EmployeeSearchDto> listEmpsCorpId(EmpPageListRequest empPageListRequest) {

    BooleanBuilder builder = new BooleanBuilder();
    if(!StringUtils.isEmpty(empPageListRequest.getSearchTxt())){
    builder.andAnyOf(
    builder.or(EMPLOYEE.name.like('%'+empPageListRequest.getSearchTxt()+'%')),
    builder.or(EMPLOYEE.jobNumber.like('%'+empPageListRequest.getSearchTxt()+'%')),
    builder.or(USER.phone.like('%'+empPageListRequest.getSearchTxt()+'%'))
    )
    .and(EMPLOYEE.corpId.eq(empPageListRequest.getCorpId())
    .and(EMPLOYEE.state.eq(EmployeeState.ENABLED)));
    }
    QueryResults<EmployeeSearchDto> employeeDtoQueryResults = jpqlQueryFactory.select(
    Projections.bean(
    EmployeeSearchDto.class,
    EMPLOYEE.id,
    EMPLOYEE.corpId,
    EMPLOYEE.name,
    USER.phone,
    EMPLOYEE.jobNumber,
    EMPLOYEE.position)).from(EMPLOYEE)
    .leftJoin(USER).on(EMPLOYEE.userId.eq(USER.id))
    .where(builder).offset((employeePageRequest.getPageNumber()-1)*employeePageRequest.getPageSize()
    .limit(empPageListRequest.getPageSize()).fetchResults();
    return Paging.convert(employeeDtoQueryResults,empPageListRequest.pageRequest(),empPageListRequest.getDtoClass());
  • 相关阅读:
    build.gradle文件详解<转> 推荐
    openGL 环境配置
    手写 大整数
    FOJ有奖月赛-2016年8月(daxia专场之过四题方有奖)
    2.1 基本计数方法
    第7章 代码
    第7章 高级数据结构的编程实验
    3.3 字符串(1)
    2016_NENU_CS_3
    3.2 区间信息的维护与查询
  • 原文地址:https://www.cnblogs.com/zxy-come-on/p/14104836.html
Copyright © 2011-2022 走看看