一.pom.xml 中版本
<dependency>
<groupId>com.baomidou</groupId>
<artifactId>mybatis-plus-boot-starter</artifactId>
</dependency>
<dependency>
<groupId>com.baomidou</groupId>
<artifactId>mybatis-plus-generator</artifactId>
</dependency>
<dependency>
<groupId>com.github.pagehelper</groupId>
<artifactId>pagehelper-spring-boot-starter</artifactId>
</dependency>
二.application.yml
mybatis-plus:
configuration:
# 开启驼峰到下划线的映射
map-underscore-to-camel-case: true
global-config:
db-config:
# 关闭数据库表的下划线映射
table-underline: false
logic-delete-field: deleted # 全局逻辑删除的实体字段名
logic-delete-value: 1 # 逻辑已删除值(默认为 1)
logic-not-delete-value: 0 # 逻辑H未删除值(默认为 0)
代码
LambdaQueryWrapper<BgPatientInfos> wrapper = new LambdaQueryWrapper();
wrapper.eq(BgPatientInfos :: getHospitalId,reqBean.getHospitalId());
wrapper.eq(Objects.nonNull(reqBean.getBillDoctorId()),BgPatientInfos :: getBillDoctorId,reqBean.getBillDoctorId());
wrapper.eq(Objects.nonNull(reqBean.getInDeptId()),BgPatientInfos::getInDeptId,reqBean.getInDeptId());
wrapper.eq(Objects.nonNull(reqBean.getIsHomePatient()),BgPatientInfos::getIsHomePatient,reqBean.getIsHomePatient());
wrapper.ge(Objects.nonNull(reqBean.getStartDate()),BgPatientInfos::getPatienArchiveTime,reqBean.getStartDate());
wrapper.le(Objects.nonNull(reqBean.getEndDate()),BgPatientInfos::getPatienArchiveTime,reqBean.getEndDate());
wrapper.like(Objects.nonNull(reqBean.getPatientName()),BgPatientInfos::getPatientName,reqBean.getPatientName());
Page<BgPatientInfos> page = PageHelper.startPage(reqBean.getPageNum(),reqBean.getPageSize())
.doSelectPage(() -> bgPatientInfosMapper.selectList(wrapper));
List<BgPatientInfos> patientInfos = page.getResult();
Long total = NumConstants.LONG_0;
if (Objects.nonNull(page.getTotal()) && CollectionUtil.isNotEmpty(patientInfos)){
total = page.getTotal();
List<BgPatientInfosBean> patientInfosBeans = patientInfos.stream().map(this :: buildBgPatientInfos).collect(Collectors.toList());
resBean.setBeanList(patientInfosBeans);
}
PageUtils.renderPageRespFromTotal(reqBean.getPageNum(),reqBean.getPageSize(),total.intValue(),resBean);
return Result.wrapSuccess(resBean);
public static void renderPageRespFromTotal(Integer pageNum, Integer pageSize, Integer total, PageResponseBean pageResp) {
pageResp.setPageNum(pageNum);
pageResp.setPageSize(pageSize);
Integer pages = NumConstants.INT_0;
if (null != pageSize && pageSize > NumConstants.INT_0 && null != total && total > NumConstants.INT_0) {
pages = total / pageSize + total % pageSize == NumConstants.INT_0 ? NumConstants.INT_0 : NumConstants.INT_1;
pageResp.setPageCount(pages);
pageResp.setTotal((long)total);
}
}
private BgPatientInfosBean buildBgPatientInfos(BgPatientInfos bgPatientInfos){
BgPatientInfosBean infosBean = new BgPatientInfosBean();
infosBean.setX(bgPatientInfos.getX);
.......
return infosBean;
}