1. Solicitud de front-end, cargue la página actual, el tamaño de cada página y el objeto de condición dinámica;
userSelect() {
this.postRequest("/admin/doctorcondition?currentPage="+ this.currentPage + "&pagesize=" + this.pagesize, this.doctor).then(res => {
this.doctorlist = []
if (res.errorCode == -1) {
var data = res.body.result.records
for (let i = 0; i < data.length; i++) {
this.doctorlist.push(data[i])
}
this.total = res.body.result.total;
}
console.log(res.body.result)
});
},
Solicitar URL
Request URL: http://localhost:8080/admin/doctorcondition?currentPage=1&pagesize=10
Datos solicitados
2. La interfaz construye QuerWrapper basándose en condiciones dinámicas y usa selectPage para la consulta de paginación;
Page<Doctor> objectpage=new Page<>(currentPage,pagesize);
QueryWrapper<Doctor> qw=new QueryWrapper<>();
if(!"".equals(doctor.getRole())&&doctor.getRole()!=null){
qw.eq("role",doctor.getRole());
}
if(!"".equals(doctor.getTrueName())&&doctor.getTrueName()!=null){
qw.like("true_name",doctor.getTrueName());
}
if(!"".equals(doctor.getHospital())&&doctor.getHospital()!=null){
qw.like("hospital",doctor.getHospital());
}
if(!"".equals(doctor.getCellphone())&&doctor.getCellphone()!=null){
qw.like("cellphone",doctor.getCellphone());
}
if(!"".equals(doctor.getEmail())&&doctor.getEmail()!=null){
qw.like("email",doctor.getEmail());
}
Page<Doctor> doctors = doctorMapper.selectPage(objectpage, qw);
De acuerdo con las condiciones, se consulta el número total de páginas (1) y se suman el número de página y el tamaño de cada página. La consulta devuelve el objeto.